mirror of
https://git.yoctoproject.org/poky
synced 2026-04-09 20:02:21 +02:00
python3: upgrade 3.13.0 -> 3.13.1
Changelog: https://docs.python.org/3/whatsnew/changelog.html#python-3-13-1-final - Patch 'fix-armv5.patch' is in 3.13.1, so no longer needed: |tgamblin@megalith ~/workspace/git/pythonsrc/cpython ((HEAD detached from v3.13.1))$ git tag --contains 18b9079ddbc149d6b99c922630c246812e4d8ae7 |v3.13.1 - While patch 'crosspythonpath.patch' is listed as 'Inappropriate [OE-Core integration specific]' specific in the commit message, it is now breaking the build, while removing it allows python3 to build OK. It appears that there is a similar change in upstream 3.13.1: https://github.com/python/cpython/commit/909d5ac2959e - gcc-symlinks had to be added to ptest RDEPENDS so that 'gcc' could be found on the path for the test_ctypes.test_dlerror.TestNullDlsym.test_null_dlsym test. - Also reformat the DEPENDS and RDEPENDS lists to be alphabetical and one-per-line, since that's easier to read and modify. - buildall-qemu output: |BUILDALL-QEMU LOG FOR python3 |START TIME: 2024-12-18_20:38:01 |HOSTNAME: megalith |HOST OS: Debian GNU/Linux 12 (bookworm) |HOST KERNEL: 6.1.0-28-amd64 |=============== |BUILD RESULTS: |[glibc] |FAIL: qemuloongarch64 |PASS: qemuriscv32 |PASS: qemuarmv5 |PASS: qemuppc |PASS: qemumips64 |PASS: qemuriscv64 |PASS: qemuarm64 |PASS: qemuarm |PASS: qemux86-64 |PASS: qemuppc64 |PASS: qemux86 |PASS: qemumips |[musl] |FAIL: qemuloongarch64 |FAIL: qemuriscv32 |PASS: qemuarmv5 |PASS: qemuppc |PASS: qemumips64 |PASS: qemuriscv64 |PASS: qemuarm64 |PASS: qemuarm |PASS: qemux86-64 |PASS: qemuppc64 |PASS: qemux86 |PASS: qemumips |=============== |PASSED: 21 |FAILED: 3 (From OE-Core rev: 08c44d3b140b220ead6334db26097b28612d445a) Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
418235f068
commit
d832ee7963
@@ -1,33 +0,0 @@
|
||||
From 8840438e73e43b99bc9c83896a5f950e4259738f Mon Sep 17 00:00:00 2001
|
||||
From: Ricardo Ribalda <ricardo@ribalda.com>
|
||||
Date: Tue, 18 Nov 2014 03:35:33 -0500
|
||||
Subject: [PATCH] configure.ac: add CROSSPYTHONPATH into PYTHONPATH for
|
||||
PYTHON_FOR_BUILD
|
||||
|
||||
When building x86->x86 the system will try to execute .so and related items
|
||||
from the default PYTHONPATH. This will fail if the target CPU contains
|
||||
instructions that the host CPU does not have, add CROSSPYTHONPATH
|
||||
into PYTHONPATH so we can prepend the list to find correct libs.
|
||||
|
||||
Upstream-Status: Inappropriate [OE-Core integration specific]
|
||||
|
||||
Credits-to: Mark Hatle <mark.hatle@windriver.com>
|
||||
Credits-to: Jackie Huang <jackie.huang@windriver.com>
|
||||
Signed-off-by: Ricardo Ribalda <ricardo@ribalda.com>
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 58f5407..5101806 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -164,7 +164,7 @@ AC_ARG_WITH([build-python],
|
||||
dnl Build Python interpreter is used for regeneration and freezing.
|
||||
ac_cv_prog_PYTHON_FOR_REGEN=$with_build_python
|
||||
PYTHON_FOR_FREEZE="$with_build_python"
|
||||
- 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
|
||||
+ 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
|
||||
AC_MSG_RESULT([$with_build_python])
|
||||
], [
|
||||
AS_VAR_IF([cross_compiling], [yes],
|
||||
@@ -1,65 +0,0 @@
|
||||
From 18b9079ddbc149d6b99c922630c246812e4d8ae7 Mon Sep 17 00:00:00 2001
|
||||
From: "Miss Islington (bot)"
|
||||
<31488909+miss-islington@users.noreply.github.com>
|
||||
Date: Wed, 16 Oct 2024 16:48:40 +0200
|
||||
Subject: [PATCH] [3.13] gh-125444: Fix illegal instruction for older Arm
|
||||
architectures (GH-125574) (GH-125595)
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
On Arm v5 it is not possible to get the thread ID via c13 register
|
||||
hence the illegal instruction. The c13 register started to provide
|
||||
thread ID since Arm v6K architecture variant. Other variants of
|
||||
Arm v6 (T2, Z and base) don’t provide the thread ID via c13.
|
||||
For the sake of simplicity we group v5 and v6 together and
|
||||
consider that instructions for Arm v7 only.
|
||||
(cherry picked from commit feda9aa73ab95d17a291db22c416146f8e70edeb)
|
||||
|
||||
Co-authored-by: Diego Russo <diego.russo@arm.com>
|
||||
|
||||
Upstream-Status: Backport [https://github.com/python/cpython/commit/18b9079ddbc149d6b99c922630c246812e4d8ae7]
|
||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
||||
---
|
||||
Include/internal/mimalloc/mimalloc/prim.h | 4 ++--
|
||||
Include/object.h | 2 +-
|
||||
.../2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst | 1 +
|
||||
3 files changed, 4 insertions(+), 3 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst
|
||||
|
||||
diff --git a/Include/internal/mimalloc/mimalloc/prim.h b/Include/internal/mimalloc/mimalloc/prim.h
|
||||
index 8a60d528458e6c..322ab29e6b41c2 100644
|
||||
--- a/Include/internal/mimalloc/mimalloc/prim.h
|
||||
+++ b/Include/internal/mimalloc/mimalloc/prim.h
|
||||
@@ -151,9 +151,9 @@ static inline mi_threadid_t _mi_prim_thread_id(void) mi_attr_noexcept {
|
||||
// If you test on another platform and it works please send a PR :-)
|
||||
// see also https://akkadia.org/drepper/tls.pdf for more info on the TLS register.
|
||||
#elif defined(__GNUC__) && ( \
|
||||
- (defined(__GLIBC__) && (defined(__x86_64__) || defined(__i386__) || defined(__arm__) || defined(__aarch64__))) \
|
||||
+ (defined(__GLIBC__) && (defined(__x86_64__) || defined(__i386__) || (defined(__arm__) && __ARM_ARCH >= 7) || defined(__aarch64__))) \
|
||||
|| (defined(__APPLE__) && (defined(__x86_64__) || defined(__aarch64__))) \
|
||||
- || (defined(__BIONIC__) && (defined(__x86_64__) || defined(__i386__) || defined(__arm__) || defined(__aarch64__))) \
|
||||
+ || (defined(__BIONIC__) && (defined(__x86_64__) || defined(__i386__) || (defined(__arm__) && __ARM_ARCH >= 7) || defined(__aarch64__))) \
|
||||
|| (defined(__FreeBSD__) && (defined(__x86_64__) || defined(__i386__) || defined(__aarch64__))) \
|
||||
|| (defined(__OpenBSD__) && (defined(__x86_64__) || defined(__i386__) || defined(__aarch64__))) \
|
||||
)
|
||||
diff --git a/Include/object.h b/Include/object.h
|
||||
index 78aa7ad0f459ff..b53f9acfebdb0c 100644
|
||||
--- a/Include/object.h
|
||||
+++ b/Include/object.h
|
||||
@@ -259,7 +259,7 @@ _Py_ThreadId(void)
|
||||
__asm__("movq %%gs:0, %0" : "=r" (tid)); // x86_64 macOSX uses GS
|
||||
#elif defined(__x86_64__)
|
||||
__asm__("movq %%fs:0, %0" : "=r" (tid)); // x86_64 Linux, BSD uses FS
|
||||
-#elif defined(__arm__)
|
||||
+#elif defined(__arm__) && __ARM_ARCH >= 7
|
||||
__asm__ ("mrc p15, 0, %0, c13, c0, 3\nbic %0, %0, #3" : "=r" (tid));
|
||||
#elif defined(__aarch64__) && defined(__APPLE__)
|
||||
__asm__ ("mrs %0, tpidrro_el0" : "=r" (tid));
|
||||
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
|
||||
new file mode 100644
|
||||
index 00000000000000..13c1e745edf8d5
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/Core_and_Builtins/2024-10-16-12-12-39.gh-issue-125444.9tG2X6.rst
|
||||
@@ -0,0 +1 @@
|
||||
+Fix illegal instruction for older Arm architectures. Patch by Diego Russo, testing by Ross Burton.
|
||||
@@ -14,7 +14,6 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
|
||||
file://check_build_completeness.py \
|
||||
file://reformat_sysconfig.py \
|
||||
file://0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch \
|
||||
file://crosspythonpath.patch \
|
||||
file://0001-test_locale.py-correct-the-test-output-format.patch \
|
||||
file://0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch \
|
||||
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 \
|
||||
file://0001-test_deadlock-skip-problematic-test.patch \
|
||||
file://0001-test_active_children-skip-problematic-test.patch \
|
||||
file://0001-test_readline-skip-limited-history-test.patch \
|
||||
file://fix-armv5.patch \
|
||||
file://0001-Generate-data-for-OpenSSL-3.4-and-add-it-to-multissl.patch \
|
||||
file://0001-ssl-Raise-OSError-for-ERR_LIB_SYS.patch \
|
||||
"
|
||||
@@ -39,7 +37,7 @@ SRC_URI:append:class-native = " \
|
||||
file://0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "086de5882e3cb310d4dca48457522e2e48018ecd43da9cdf827f6a0759efb07d"
|
||||
SRC_URI[sha256sum] = "9cf9427bee9e2242e3877dd0f6b641c1853ca461f39d6503ce260a59c80bf0d9"
|
||||
|
||||
# exclude pre-releases for both python 2.x and 3.x
|
||||
UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar"
|
||||
@@ -69,7 +67,24 @@ ALTERNATIVE_LINK_NAME[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config
|
||||
ALTERNATIVE_TARGET[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config-${MULTILIB_SUFFIX}"
|
||||
|
||||
|
||||
DEPENDS = "bzip2-replacement-native expat libffi bzip2 openssl sqlite3 zlib virtual/libintl xz virtual/crypt util-linux-libuuid libtirpc libnsl2 autoconf-archive-native ncurses"
|
||||
DEPENDS = "\
|
||||
autoconf-archive-native \
|
||||
bzip2 \
|
||||
bzip2-replacement-native \
|
||||
expat \
|
||||
libffi \
|
||||
libnsl2 \
|
||||
libtirpc \
|
||||
ncurses \
|
||||
openssl \
|
||||
sqlite3 \
|
||||
util-linux-libuuid \
|
||||
virtual/crypt \
|
||||
virtual/libintl \
|
||||
xz \
|
||||
zlib \
|
||||
"
|
||||
|
||||
DEPENDS:append:class-target = " python3-native"
|
||||
DEPENDS:append:class-nativesdk = " python3-native"
|
||||
|
||||
@@ -444,13 +459,13 @@ INSANE_SKIP:${PN}-ptest = "dev-deps"
|
||||
# catch all the rest (unsorted)
|
||||
PACKAGES += "${PN}-misc"
|
||||
RDEPENDS:${PN}-misc += "\
|
||||
${PN}-audio \
|
||||
${PN}-codecs \
|
||||
${PN}-core \
|
||||
${PN}-email \
|
||||
${PN}-numbers \
|
||||
${PN}-pickle \
|
||||
${PN}-pydoc \
|
||||
${PN}-audio \
|
||||
${PN}-codecs \
|
||||
${PN}-core \
|
||||
${PN}-email \
|
||||
${PN}-numbers \
|
||||
${PN}-pickle \
|
||||
${PN}-pydoc \
|
||||
"
|
||||
RDEPENDS:${PN}-modules:append:class-target = " ${MLPREFIX}python3-misc"
|
||||
RDEPENDS:${PN}-modules:append:class-nativesdk = " ${MLPREFIX}python3-misc"
|
||||
@@ -466,8 +481,25 @@ RDEPENDS:libpython3:append:libc-glibc = " libgcc"
|
||||
RDEPENDS:${PN}-ctypes:append:libc-glibc = "\
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'ldconfig', '${MLPREFIX}ldconfig', '', d)} \
|
||||
"
|
||||
RDEPENDS:${PN}-ptest = "${PN}-modules ${PN}-tests ${PN}-dev ${PN}-zipapp unzip bzip2 libgcc tzdata coreutils sed gcc g++ binutils \
|
||||
locale-base-fr-fr locale-base-en-us locale-base-de-de"
|
||||
RDEPENDS:${PN}-ptest = "\
|
||||
${PN}-dev \
|
||||
${PN}-modules \
|
||||
${PN}-tests \
|
||||
${PN}-zipapp \
|
||||
binutils \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
gcc \
|
||||
gcc-symlinks \
|
||||
g++ \
|
||||
libgcc \
|
||||
locale-base-fr-fr \
|
||||
locale-base-en-us \
|
||||
locale-base-de-de \
|
||||
sed \
|
||||
tzdata \
|
||||
unzip \
|
||||
"
|
||||
RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-tr-tr"
|
||||
RDEPENDS:${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${MLPREFIX}tk ${MLPREFIX}tk-lib', '', d)}"
|
||||
RDEPENDS:${PN}-idle += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${PN}-tkinter ${MLPREFIX}tcl', '', d)}"
|
||||
Reference in New Issue
Block a user