diff options
Diffstat (limited to 'meta/recipes-devtools/python')
| -rw-r--r-- | meta/recipes-devtools/python/python3/crosspythonpath.patch | 33 | ||||
| -rw-r--r-- | meta/recipes-devtools/python/python3/fix-armv5.patch | 65 | ||||
| -rw-r--r-- | meta/recipes-devtools/python/python3_3.13.1.bb (renamed from meta/recipes-devtools/python/python3_3.13.0.bb) | 58 |
3 files changed, 45 insertions, 111 deletions
diff --git a/meta/recipes-devtools/python/python3/crosspythonpath.patch b/meta/recipes-devtools/python/python3/crosspythonpath.patch deleted file mode 100644 index f18898e4c4..0000000000 --- a/meta/recipes-devtools/python/python3/crosspythonpath.patch +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | From 8840438e73e43b99bc9c83896a5f950e4259738f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ricardo Ribalda <ricardo@ribalda.com> | ||
| 3 | Date: Tue, 18 Nov 2014 03:35:33 -0500 | ||
| 4 | Subject: [PATCH] configure.ac: add CROSSPYTHONPATH into PYTHONPATH for | ||
| 5 | PYTHON_FOR_BUILD | ||
| 6 | |||
| 7 | When building x86->x86 the system will try to execute .so and related items | ||
| 8 | from the default PYTHONPATH. This will fail if the target CPU contains | ||
| 9 | instructions that the host CPU does not have, add CROSSPYTHONPATH | ||
| 10 | into PYTHONPATH so we can prepend the list to find correct libs. | ||
| 11 | |||
| 12 | Upstream-Status: Inappropriate [OE-Core integration specific] | ||
| 13 | |||
| 14 | Credits-to: Mark Hatle <mark.hatle@windriver.com> | ||
| 15 | Credits-to: Jackie Huang <jackie.huang@windriver.com> | ||
| 16 | Signed-off-by: Ricardo Ribalda <ricardo@ribalda.com> | ||
| 17 | --- | ||
| 18 | configure.ac | 2 +- | ||
| 19 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 20 | |||
| 21 | diff --git a/configure.ac b/configure.ac | ||
| 22 | index 58f5407..5101806 100644 | ||
| 23 | --- a/configure.ac | ||
| 24 | +++ b/configure.ac | ||
| 25 | @@ -164,7 +164,7 @@ AC_ARG_WITH([build-python], | ||
| 26 | dnl Build Python interpreter is used for regeneration and freezing. | ||
| 27 | ac_cv_prog_PYTHON_FOR_REGEN=$with_build_python | ||
| 28 | PYTHON_FOR_FREEZE="$with_build_python" | ||
| 29 | - PYTHON_FOR_BUILD='_PYTHON_PROJECT_BASE=$(abs_builddir) _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(shell test -f pybuilddir.txt && echo $(abs_builddir)/`cat pybuilddir.txt`:)$(srcdir)/Lib _PYTHON_SYSCONFIGDATA_NAME=_sysconfigdata_$(ABIFLAGS)_$(MACHDEP)_$(MULTIARCH) '$with_build_python | ||
| 30 | + PYTHON_FOR_BUILD='_PYTHON_PROJECT_BASE=$(abs_builddir) _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(CROSSPYTHONPATH):$(shell test -f pybuilddir.txt && echo $(abs_builddir)/`cat pybuilddir.txt`:)$(srcdir)/Lib _PYTHON_SYSCONFIGDATA_NAME=_sysconfigdata_$(ABIFLAGS)_$(MACHDEP)_$(MULTIARCH) '$with_build_python | ||
| 31 | AC_MSG_RESULT([$with_build_python]) | ||
| 32 | ], [ | ||
| 33 | AS_VAR_IF([cross_compiling], [yes], | ||
diff --git a/meta/recipes-devtools/python/python3/fix-armv5.patch b/meta/recipes-devtools/python/python3/fix-armv5.patch deleted file mode 100644 index 961404b24f..0000000000 --- a/meta/recipes-devtools/python/python3/fix-armv5.patch +++ /dev/null | |||
| @@ -1,65 +0,0 @@ | |||
| 1 | From 18b9079ddbc149d6b99c922630c246812e4d8ae7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: "Miss Islington (bot)" | ||
| 3 | <31488909+miss-islington@users.noreply.github.com> | ||
| 4 | Date: Wed, 16 Oct 2024 16:48:40 +0200 | ||
| 5 | Subject: [PATCH] [3.13] gh-125444: Fix illegal instruction for older Arm | ||
| 6 | architectures (GH-125574) (GH-125595) | ||
| 7 | MIME-Version: 1.0 | ||
| 8 | Content-Type: text/plain; charset=UTF-8 | ||
| 9 | Content-Transfer-Encoding: 8bit | ||
| 10 | |||
| 11 | On Arm v5 it is not possible to get the thread ID via c13 register | ||
| 12 | hence the illegal instruction. The c13 register started to provide | ||
| 13 | thread ID since Arm v6K architecture variant. Other variants of | ||
| 14 | Arm v6 (T2, Z and base) don’t provide the thread ID via c13. | ||
| 15 | For the sake of simplicity we group v5 and v6 together and | ||
| 16 | consider that instructions for Arm v7 only. | ||
| 17 | (cherry picked from commit feda9aa73ab95d17a291db22c416146f8e70edeb) | ||
| 18 | |||
| 19 | Co-authored-by: Diego Russo <diego.russo@arm.com> | ||
| 20 | |||
| 21 | Upstream-Status: Backport [https://github.com/python/cpython/commit/18b9079ddbc149d6b99c922630c246812e4d8ae7] | ||
| 22 | Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
| 23 | --- | ||
| 24 | Include/internal/mimalloc/mimalloc/prim.h | 4 ++-- | ||
| 25 | Include/object.h | 2 +- | ||
| 26 | .../2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | 1 + | ||
| 27 | 3 files changed, 4 insertions(+), 3 deletions(-) | ||
| 28 | create mode 100644 Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | ||
| 29 | |||
| 30 | diff --git a/Include/internal/mimalloc/mimalloc/prim.h b/Include/internal/mimalloc/mimalloc/prim.h | ||
| 31 | index 8a60d528458e6c..322ab29e6b41c2 100644 | ||
| 32 | --- a/Include/internal/mimalloc/mimalloc/prim.h | ||
| 33 | +++ b/Include/internal/mimalloc/mimalloc/prim.h | ||
| 34 | @@ -151,9 +151,9 @@ static inline mi_threadid_t _mi_prim_thread_id(void) mi_attr_noexcept { | ||
| 35 | // If you test on another platform and it works please send a PR :-) | ||
| 36 | // see also https://akkadia.org/drepper/tls.pdf for more info on the TLS register. | ||
| 37 | #elif defined(__GNUC__) && ( \ | ||
| 38 | - (defined(__GLIBC__) && (defined(__x86_64__) || defined(__i386__) || defined(__arm__) || defined(__aarch64__))) \ | ||
| 39 | + (defined(__GLIBC__) && (defined(__x86_64__) || defined(__i386__) || (defined(__arm__) && __ARM_ARCH >= 7) || defined(__aarch64__))) \ | ||
| 40 | || (defined(__APPLE__) && (defined(__x86_64__) || defined(__aarch64__))) \ | ||
| 41 | - || (defined(__BIONIC__) && (defined(__x86_64__) || defined(__i386__) || defined(__arm__) || defined(__aarch64__))) \ | ||
| 42 | + || (defined(__BIONIC__) && (defined(__x86_64__) || defined(__i386__) || (defined(__arm__) && __ARM_ARCH >= 7) || defined(__aarch64__))) \ | ||
| 43 | || (defined(__FreeBSD__) && (defined(__x86_64__) || defined(__i386__) || defined(__aarch64__))) \ | ||
| 44 | || (defined(__OpenBSD__) && (defined(__x86_64__) || defined(__i386__) || defined(__aarch64__))) \ | ||
| 45 | ) | ||
| 46 | diff --git a/Include/object.h b/Include/object.h | ||
| 47 | index 78aa7ad0f459ff..b53f9acfebdb0c 100644 | ||
| 48 | --- a/Include/object.h | ||
| 49 | +++ b/Include/object.h | ||
| 50 | @@ -259,7 +259,7 @@ _Py_ThreadId(void) | ||
| 51 | __asm__("movq %%gs:0, %0" : "=r" (tid)); // x86_64 macOSX uses GS | ||
| 52 | #elif defined(__x86_64__) | ||
| 53 | __asm__("movq %%fs:0, %0" : "=r" (tid)); // x86_64 Linux, BSD uses FS | ||
| 54 | -#elif defined(__arm__) | ||
| 55 | +#elif defined(__arm__) && __ARM_ARCH >= 7 | ||
| 56 | __asm__ ("mrc p15, 0, %0, c13, c0, 3\nbic %0, %0, #3" : "=r" (tid)); | ||
| 57 | #elif defined(__aarch64__) && defined(__APPLE__) | ||
| 58 | __asm__ ("mrs %0, tpidrro_el0" : "=r" (tid)); | ||
| 59 | diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst b/Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | ||
| 60 | new file mode 100644 | ||
| 61 | index 00000000000000..13c1e745edf8d5 | ||
| 62 | --- /dev/null | ||
| 63 | +++ b/Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | ||
| 64 | @@ -0,0 +1 @@ | ||
| 65 | +Fix illegal instruction for older Arm architectures. Patch by Diego Russo, testing by Ross Burton. | ||
diff --git a/meta/recipes-devtools/python/python3_3.13.0.bb b/meta/recipes-devtools/python/python3_3.13.1.bb index b3170879b9..b2eaf9f439 100644 --- a/meta/recipes-devtools/python/python3_3.13.0.bb +++ b/meta/recipes-devtools/python/python3_3.13.1.bb | |||
| @@ -14,7 +14,6 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \ | |||
| 14 | file://check_build_completeness.py \ | 14 | file://check_build_completeness.py \ |
| 15 | file://reformat_sysconfig.py \ | 15 | file://reformat_sysconfig.py \ |
| 16 | file://0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch \ | 16 | file://0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch \ |
| 17 | file://crosspythonpath.patch \ | ||
| 18 | file://0001-test_locale.py-correct-the-test-output-format.patch \ | 17 | file://0001-test_locale.py-correct-the-test-output-format.patch \ |
| 19 | file://0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch \ | 18 | file://0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch \ |
| 20 | file://0001-test_ctypes.test_find-skip-without-tools-sdk.patch \ | 19 | file://0001-test_ctypes.test_find-skip-without-tools-sdk.patch \ |
| @@ -30,7 +29,6 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \ | |||
| 30 | file://0001-test_deadlock-skip-problematic-test.patch \ | 29 | file://0001-test_deadlock-skip-problematic-test.patch \ |
| 31 | file://0001-test_active_children-skip-problematic-test.patch \ | 30 | file://0001-test_active_children-skip-problematic-test.patch \ |
| 32 | file://0001-test_readline-skip-limited-history-test.patch \ | 31 | file://0001-test_readline-skip-limited-history-test.patch \ |
| 33 | file://fix-armv5.patch \ | ||
| 34 | file://0001-Generate-data-for-OpenSSL-3.4-and-add-it-to-multissl.patch \ | 32 | file://0001-Generate-data-for-OpenSSL-3.4-and-add-it-to-multissl.patch \ |
| 35 | file://0001-ssl-Raise-OSError-for-ERR_LIB_SYS.patch \ | 33 | file://0001-ssl-Raise-OSError-for-ERR_LIB_SYS.patch \ |
| 36 | " | 34 | " |
| @@ -39,7 +37,7 @@ SRC_URI:append:class-native = " \ | |||
| 39 | file://0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch \ | 37 | file://0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch \ |
| 40 | " | 38 | " |
| 41 | 39 | ||
| 42 | SRC_URI[sha256sum] = "086de5882e3cb310d4dca48457522e2e48018ecd43da9cdf827f6a0759efb07d" | 40 | SRC_URI[sha256sum] = "9cf9427bee9e2242e3877dd0f6b641c1853ca461f39d6503ce260a59c80bf0d9" |
| 43 | 41 | ||
| 44 | # exclude pre-releases for both python 2.x and 3.x | 42 | # exclude pre-releases for both python 2.x and 3.x |
| 45 | UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar" | 43 | UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar" |
| @@ -69,7 +67,24 @@ ALTERNATIVE_LINK_NAME[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config | |||
| 69 | ALTERNATIVE_TARGET[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config-${MULTILIB_SUFFIX}" | 67 | ALTERNATIVE_TARGET[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config-${MULTILIB_SUFFIX}" |
| 70 | 68 | ||
| 71 | 69 | ||
| 72 | DEPENDS = "bzip2-replacement-native expat libffi bzip2 openssl sqlite3 zlib virtual/libintl xz virtual/crypt util-linux-libuuid libtirpc libnsl2 autoconf-archive-native ncurses" | 70 | DEPENDS = "\ |
| 71 | autoconf-archive-native \ | ||
| 72 | bzip2 \ | ||
| 73 | bzip2-replacement-native \ | ||
| 74 | expat \ | ||
| 75 | libffi \ | ||
| 76 | libnsl2 \ | ||
| 77 | libtirpc \ | ||
| 78 | ncurses \ | ||
| 79 | openssl \ | ||
| 80 | sqlite3 \ | ||
| 81 | util-linux-libuuid \ | ||
| 82 | virtual/crypt \ | ||
| 83 | virtual/libintl \ | ||
| 84 | xz \ | ||
| 85 | zlib \ | ||
| 86 | " | ||
| 87 | |||
| 73 | DEPENDS:append:class-target = " python3-native" | 88 | DEPENDS:append:class-target = " python3-native" |
| 74 | DEPENDS:append:class-nativesdk = " python3-native" | 89 | DEPENDS:append:class-nativesdk = " python3-native" |
| 75 | 90 | ||
| @@ -444,13 +459,13 @@ INSANE_SKIP:${PN}-ptest = "dev-deps" | |||
| 444 | # catch all the rest (unsorted) | 459 | # catch all the rest (unsorted) |
| 445 | PACKAGES += "${PN}-misc" | 460 | PACKAGES += "${PN}-misc" |
| 446 | RDEPENDS:${PN}-misc += "\ | 461 | RDEPENDS:${PN}-misc += "\ |
| 447 | ${PN}-audio \ | 462 | ${PN}-audio \ |
| 448 | ${PN}-codecs \ | 463 | ${PN}-codecs \ |
| 449 | ${PN}-core \ | 464 | ${PN}-core \ |
| 450 | ${PN}-email \ | 465 | ${PN}-email \ |
| 451 | ${PN}-numbers \ | 466 | ${PN}-numbers \ |
| 452 | ${PN}-pickle \ | 467 | ${PN}-pickle \ |
| 453 | ${PN}-pydoc \ | 468 | ${PN}-pydoc \ |
| 454 | " | 469 | " |
| 455 | RDEPENDS:${PN}-modules:append:class-target = " ${MLPREFIX}python3-misc" | 470 | RDEPENDS:${PN}-modules:append:class-target = " ${MLPREFIX}python3-misc" |
| 456 | RDEPENDS:${PN}-modules:append:class-nativesdk = " ${MLPREFIX}python3-misc" | 471 | RDEPENDS:${PN}-modules:append:class-nativesdk = " ${MLPREFIX}python3-misc" |
| @@ -466,8 +481,25 @@ RDEPENDS:libpython3:append:libc-glibc = " libgcc" | |||
| 466 | RDEPENDS:${PN}-ctypes:append:libc-glibc = "\ | 481 | RDEPENDS:${PN}-ctypes:append:libc-glibc = "\ |
| 467 | ${@bb.utils.contains('DISTRO_FEATURES', 'ldconfig', '${MLPREFIX}ldconfig', '', d)} \ | 482 | ${@bb.utils.contains('DISTRO_FEATURES', 'ldconfig', '${MLPREFIX}ldconfig', '', d)} \ |
| 468 | " | 483 | " |
| 469 | RDEPENDS:${PN}-ptest = "${PN}-modules ${PN}-tests ${PN}-dev ${PN}-zipapp unzip bzip2 libgcc tzdata coreutils sed gcc g++ binutils \ | 484 | RDEPENDS:${PN}-ptest = "\ |
| 470 | locale-base-fr-fr locale-base-en-us locale-base-de-de" | 485 | ${PN}-dev \ |
| 486 | ${PN}-modules \ | ||
| 487 | ${PN}-tests \ | ||
| 488 | ${PN}-zipapp \ | ||
| 489 | binutils \ | ||
| 490 | bzip2 \ | ||
| 491 | coreutils \ | ||
| 492 | gcc \ | ||
| 493 | gcc-symlinks \ | ||
| 494 | g++ \ | ||
| 495 | libgcc \ | ||
| 496 | locale-base-fr-fr \ | ||
| 497 | locale-base-en-us \ | ||
| 498 | locale-base-de-de \ | ||
| 499 | sed \ | ||
| 500 | tzdata \ | ||
| 501 | unzip \ | ||
| 502 | " | ||
| 471 | RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-tr-tr" | 503 | RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-tr-tr" |
| 472 | RDEPENDS:${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${MLPREFIX}tk ${MLPREFIX}tk-lib', '', d)}" | 504 | RDEPENDS:${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${MLPREFIX}tk ${MLPREFIX}tk-lib', '', d)}" |
| 473 | RDEPENDS:${PN}-idle += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${PN}-tkinter ${MLPREFIX}tcl', '', d)}" | 505 | RDEPENDS:${PN}-idle += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${PN}-tkinter ${MLPREFIX}tcl', '', d)}" |
