summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kanavin <alex@linutronix.de>2024-10-23 16:24:20 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2024-10-25 15:04:30 +0100
commit085afc322b15bf0bdc1818d80227dc802e3f6bff (patch)
tree33c33ecfd4af1712a09591ebaa63e62e5d40944c
parent8d909f94a630ba582a81068dc1ea52ce3470c6fb (diff)
downloadpoky-085afc322b15bf0bdc1818d80227dc802e3f6bff.tar.gz
python3: update 3.12.6 -> 3.13.0
License-update: copyright years Update 0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch to only include tests that do not fail under qemu (following upstream change that also no longer obscures failures). Drop 0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch (backport) 0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch (fixed upstream) 0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch (code completely rewritten upstream) cgi_py.patch (cgi and cgitb modules removed upstream) Add fix-armv5.patch (address armv5 crashes) Modules removed in 3.13 (look for 'important removals'): https://docs.python.org/3/whatsnew/3.13.html Manifest updated accordingly. Add an explicit dependency on libatomic (needed on mips and ppc), as upstream has explicitly switched it off in cross builds. It's a no-op on other targets. Fcntl relocated to python3-core by the manifest script. (From OE-Core rev: 0b49c9aa31279ecda565cc66b63d1d61723b37b8) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes-recipe/python3-dir.bbclass2
-rw-r--r--meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch6
-rw-r--r--meta/recipes-devtools/python/python3/0001-Lib-pty.py-handle-stdin-I-O-errors-same-way-as-maste.patch3
-rw-r--r--meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch15
-rw-r--r--meta/recipes-devtools/python/python3/0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch10
-rw-r--r--meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch16
-rw-r--r--meta/recipes-devtools/python/python3/0001-Update-test_sysconfig-for-posix_user-purelib.patch9
-rw-r--r--meta/recipes-devtools/python/python3/0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch40
-rw-r--r--meta/recipes-devtools/python/python3/0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch120
-rw-r--r--meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch10
-rw-r--r--meta/recipes-devtools/python/python3/0001-sysconfig.py-use-platlibdir-also-for-purelib.patch27
-rw-r--r--meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch9
-rw-r--r--meta/recipes-devtools/python/python3/0001-test_ctypes.test_find-skip-without-tools-sdk.patch7
-rw-r--r--meta/recipes-devtools/python/python3/0001-test_deadlock-skip-problematic-test.patch9
-rw-r--r--meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch7
-rw-r--r--meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch14
-rw-r--r--meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch11
-rw-r--r--meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch7
-rw-r--r--meta/recipes-devtools/python/python3/0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch33
-rw-r--r--meta/recipes-devtools/python/python3/cgi_py.patch32
-rw-r--r--meta/recipes-devtools/python/python3/crosspythonpath.patch7
-rw-r--r--meta/recipes-devtools/python/python3/deterministic_imports.patch7
-rw-r--r--meta/recipes-devtools/python/python3/fix-armv5.patch65
-rw-r--r--meta/recipes-devtools/python/python3/makerace.patch6
-rw-r--r--meta/recipes-devtools/python/python3/python3-manifest.json131
-rw-r--r--meta/recipes-devtools/python/python3_3.13.0.bb (renamed from meta/recipes-devtools/python/python3_3.12.6.bb)24
26 files changed, 191 insertions, 436 deletions
diff --git a/meta/classes-recipe/python3-dir.bbclass b/meta/classes-recipe/python3-dir.bbclass
index 3d07de99b8..0f4e7e7773 100644
--- a/meta/classes-recipe/python3-dir.bbclass
+++ b/meta/classes-recipe/python3-dir.bbclass
@@ -4,7 +4,7 @@
4# SPDX-License-Identifier: MIT 4# SPDX-License-Identifier: MIT
5# 5#
6 6
7PYTHON_BASEVERSION = "3.12" 7PYTHON_BASEVERSION = "3.13"
8PYTHON_ABI = "" 8PYTHON_ABI = ""
9PYTHON_DIR = "python${PYTHON_BASEVERSION}" 9PYTHON_DIR = "python${PYTHON_BASEVERSION}"
10PYTHON_PN = "python3" 10PYTHON_PN = "python3"
diff --git a/meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch b/meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch
index 0d807db39f..d2246327f2 100644
--- a/meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch
+++ b/meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch
@@ -1,4 +1,4 @@
1From 365399f17d35719d828ddd49182dcb401fb7791c Mon Sep 17 00:00:00 2001 1From 6b111a328c1c57b1580d63894b2b5d337316f6d4 Mon Sep 17 00:00:00 2001
2From: Paulo Neves <ptsneves@gmail.com> 2From: Paulo Neves <ptsneves@gmail.com>
3Date: Tue, 7 Jun 2022 16:16:41 +0200 3Date: Tue, 7 Jun 2022 16:16:41 +0200
4Subject: [PATCH] Avoid shebang overflow on python-config.py 4Subject: [PATCH] Avoid shebang overflow on python-config.py
@@ -16,10 +16,10 @@ Upstream-Status: Denied [distribution]
16 1 file changed, 2 insertions(+) 16 1 file changed, 2 insertions(+)
17 17
18diff --git a/Makefile.pre.in b/Makefile.pre.in 18diff --git a/Makefile.pre.in b/Makefile.pre.in
19index 77bf09a..6353c57 100644 19index 9ec3a71..f7d5382 100644
20--- a/Makefile.pre.in 20--- a/Makefile.pre.in
21+++ b/Makefile.pre.in 21+++ b/Makefile.pre.in
22@@ -2339,6 +2339,8 @@ python-config: $(srcdir)/Misc/python-config.in Misc/python-config.sh 22@@ -2606,6 +2606,8 @@ python-config: $(srcdir)/Misc/python-config.in Misc/python-config.sh
23 @ # Substitution happens here, as the completely-expanded BINDIR 23 @ # Substitution happens here, as the completely-expanded BINDIR
24 @ # is not available in configure 24 @ # is not available in configure
25 sed -e "s,@EXENAME@,$(EXENAME)," < $(srcdir)/Misc/python-config.in >python-config.py 25 sed -e "s,@EXENAME@,$(EXENAME)," < $(srcdir)/Misc/python-config.in >python-config.py
diff --git a/meta/recipes-devtools/python/python3/0001-Lib-pty.py-handle-stdin-I-O-errors-same-way-as-maste.patch b/meta/recipes-devtools/python/python3/0001-Lib-pty.py-handle-stdin-I-O-errors-same-way-as-maste.patch
index 026150f0e2..84ad2abb0b 100644
--- a/meta/recipes-devtools/python/python3/0001-Lib-pty.py-handle-stdin-I-O-errors-same-way-as-maste.patch
+++ b/meta/recipes-devtools/python/python3/0001-Lib-pty.py-handle-stdin-I-O-errors-same-way-as-maste.patch
@@ -1,4 +1,4 @@
1From f8a664cf1fc73e381d57d6927207286059744837 Mon Sep 17 00:00:00 2001 1From 129ee75863081d9e3418acca3df1e47667f671ad Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de> 2From: Alexander Kanavin <alex@linutronix.de>
3Date: Thu, 16 Sep 2021 16:35:37 +0200 3Date: Thu, 16 Sep 2021 16:35:37 +0200
4Subject: [PATCH] Lib/pty.py: handle stdin I/O errors same way as master I/O 4Subject: [PATCH] Lib/pty.py: handle stdin I/O errors same way as master I/O
@@ -24,7 +24,6 @@ So let's treat both channels the same.
24 24
25Upstream-Status: Submitted [https://github.com/python/cpython/pull/28388] 25Upstream-Status: Submitted [https://github.com/python/cpython/pull/28388]
26Signed-off-by: Alexander Kanavin <alex@linutronix.de> 26Signed-off-by: Alexander Kanavin <alex@linutronix.de>
27
28--- 27---
29 Lib/pty.py | 5 ++++- 28 Lib/pty.py | 5 ++++-
30 1 file changed, 4 insertions(+), 1 deletion(-) 29 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
index 680254fab9..45094481a8 100644
--- a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
+++ b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch
@@ -1,4 +1,4 @@
1From 71c194077bb907bfe423d3f3275f33a6c8ca0e74 Mon Sep 17 00:00:00 2001 1From 3f4f3e917950e286d5729ea949ca342995eb3c3e Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de> 2From: Alexander Kanavin <alex@linutronix.de>
3Date: Fri, 17 Nov 2023 14:26:32 +0100 3Date: Fri, 17 Nov 2023 14:26:32 +0100
4Subject: [PATCH] Lib/sysconfig.py: use prefix value from build configuration 4Subject: [PATCH] Lib/sysconfig.py: use prefix value from build configuration
@@ -9,16 +9,15 @@ native python.
9 9
10Upstream-Status: Inappropriate [oe-core cross builds] 10Upstream-Status: Inappropriate [oe-core cross builds]
11Signed-off-by: Alexander Kanavin <alex@linutronix.de> 11Signed-off-by: Alexander Kanavin <alex@linutronix.de>
12
13--- 12---
14 Lib/sysconfig.py | 5 +++++ 13 Lib/sysconfig/__init__.py | 5 +++++
15 1 file changed, 5 insertions(+) 14 1 file changed, 5 insertions(+)
16 15
17diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py 16diff --git a/Lib/sysconfig/__init__.py b/Lib/sysconfig/__init__.py
18index 79c0510..91ebcb6 100644 17index f8e1c7d..0882526 100644
19--- a/Lib/sysconfig.py 18--- a/Lib/sysconfig/__init__.py
20+++ b/Lib/sysconfig.py 19+++ b/Lib/sysconfig/__init__.py
21@@ -668,6 +668,11 @@ def _init_config_vars(): 20@@ -481,6 +481,11 @@ def _init_config_vars():
22 _CONFIG_VARS['VPATH'] = sys._vpath 21 _CONFIG_VARS['VPATH'] = sys._vpath
23 if os.name == 'posix': 22 if os.name == 'posix':
24 _init_posix(_CONFIG_VARS) 23 _init_posix(_CONFIG_VARS)
diff --git a/meta/recipes-devtools/python/python3/0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch b/meta/recipes-devtools/python/python3/0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch
index ee33128fa1..508754286f 100644
--- a/meta/recipes-devtools/python/python3/0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch
+++ b/meta/recipes-devtools/python/python3/0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch
@@ -1,4 +1,4 @@
1From 38278339832a57dbf5fa3ef21accaa03e2c814d7 Mon Sep 17 00:00:00 2001 1From 701720a5bab5b42fd7520fd9dd95fd2c7e42c186 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 30 Jan 2019 12:41:04 +0100 3Date: Wed, 30 Jan 2019 12:41:04 +0100
4Subject: [PATCH] Makefile.pre: use qemu wrapper when gathering profile data 4Subject: [PATCH] Makefile.pre: use qemu wrapper when gathering profile data
@@ -10,16 +10,16 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
10 1 file changed, 1 insertion(+), 2 deletions(-) 10 1 file changed, 1 insertion(+), 2 deletions(-)
11 11
12diff --git a/Makefile.pre.in b/Makefile.pre.in 12diff --git a/Makefile.pre.in b/Makefile.pre.in
13index dd5e69f..381feb0 100644 13index f9932dd..be1b9ea 100644
14--- a/Makefile.pre.in 14--- a/Makefile.pre.in
15+++ b/Makefile.pre.in 15+++ b/Makefile.pre.in
16@@ -658,8 +658,7 @@ profile-run-stamp: 16@@ -751,8 +751,7 @@ profile-run-stamp:
17 # enabled. 17 # enabled.
18 $(MAKE) profile-gen-stamp 18 $(MAKE) profile-gen-stamp
19 # Next, run the profile task to generate the profile information. 19 # Next, run the profile task to generate the profile information.
20- @ # FIXME: can't run for a cross build 20- @ # FIXME: can't run for a cross build
21- $(LLVM_PROF_FILE) $(RUNSHARED) ./$(BUILDPYTHON) $(PROFILE_TASK) || true 21- $(LLVM_PROF_FILE) $(RUNSHARED) ./$(BUILDPYTHON) $(PROFILE_TASK)
22+ ./pgo-wrapper ./python -m test.regrtest --pgo test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_support || true 22+ ./pgo-wrapper ./python -m test.regrtest --pgo test_grammar test_opcodes test_dict test_types
23 $(LLVM_PROF_MERGER) 23 $(LLVM_PROF_MERGER)
24 # Remove profile generation binary since we are done with it. 24 # Remove profile generation binary since we are done with it.
25 $(MAKE) clean-retain-profile 25 $(MAKE) clean-retain-profile
diff --git a/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch b/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch
index 197daa71a5..230e847d2b 100644
--- a/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch
+++ b/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch
@@ -1,4 +1,4 @@
1From 3471e3478e0760c42e04f8046cee2367ab5706d2 Mon Sep 17 00:00:00 2001 1From 8828a52ebace98199569404f01174398bcc64a00 Mon Sep 17 00:00:00 2001
2From: Yi Fan Yu <yifan.yu@windriver.com> 2From: Yi Fan Yu <yifan.yu@windriver.com>
3Date: Thu, 1 Apr 2021 13:08:37 -0700 3Date: Thu, 1 Apr 2021 13:08:37 -0700
4Subject: [PATCH] Skip failing tests due to load variability on YP AB 4Subject: [PATCH] Skip failing tests due to load variability on YP AB
@@ -23,7 +23,7 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
23 2 files changed, 5 insertions(+) 23 2 files changed, 5 insertions(+)
24 24
25diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py 25diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py
26index e42c7ab..dff5227 100644 26index 5dae370..23eb971 100644
27--- a/Lib/test/_test_multiprocessing.py 27--- a/Lib/test/_test_multiprocessing.py
28+++ b/Lib/test/_test_multiprocessing.py 28+++ b/Lib/test/_test_multiprocessing.py
29@@ -682,6 +682,7 @@ class _TestProcess(BaseTestCase): 29@@ -682,6 +682,7 @@ class _TestProcess(BaseTestCase):
@@ -34,7 +34,7 @@ index e42c7ab..dff5227 100644
34 def test_many_processes(self): 34 def test_many_processes(self):
35 if self.TYPE == 'threads': 35 if self.TYPE == 'threads':
36 self.skipTest('test not appropriate for {}'.format(self.TYPE)) 36 self.skipTest('test not appropriate for {}'.format(self.TYPE))
37@@ -2066,6 +2067,7 @@ class _TestBarrier(BaseTestCase): 37@@ -2083,6 +2084,7 @@ class _TestBarrier(BaseTestCase):
38 except threading.BrokenBarrierError: 38 except threading.BrokenBarrierError:
39 results.append(True) 39 results.append(True)
40 40
@@ -42,7 +42,7 @@ index e42c7ab..dff5227 100644
42 def test_timeout(self): 42 def test_timeout(self):
43 """ 43 """
44 Test wait(timeout) 44 Test wait(timeout)
45@@ -5024,6 +5026,7 @@ class TestWait(unittest.TestCase): 45@@ -5171,6 +5173,7 @@ class TestWait(unittest.TestCase):
46 time.sleep(period) 46 time.sleep(period)
47 47
48 @support.requires_resource('walltime') 48 @support.requires_resource('walltime')
@@ -51,10 +51,10 @@ index e42c7ab..dff5227 100644
51 from multiprocessing.connection import wait 51 from multiprocessing.connection import wait
52 52
53diff --git a/Lib/test/test_time.py b/Lib/test/test_time.py 53diff --git a/Lib/test/test_time.py b/Lib/test/test_time.py
54index 02cc3f4..51a4548 100644 54index 293799f..1dbb623 100644
55--- a/Lib/test/test_time.py 55--- a/Lib/test/test_time.py
56+++ b/Lib/test/test_time.py 56+++ b/Lib/test/test_time.py
57@@ -492,6 +492,7 @@ class TimeTestCase(unittest.TestCase): 57@@ -504,6 +504,7 @@ class TimeTestCase(unittest.TestCase):
58 @unittest.skipIf( 58 @unittest.skipIf(
59 support.is_wasi, "process_time not available on WASI" 59 support.is_wasi, "process_time not available on WASI"
60 ) 60 )
@@ -62,11 +62,11 @@ index 02cc3f4..51a4548 100644
62 def test_process_time(self): 62 def test_process_time(self):
63 # process_time() should not include time spend during a sleep 63 # process_time() should not include time spend during a sleep
64 start = time.process_time() 64 start = time.process_time()
65@@ -505,6 +506,7 @@ class TimeTestCase(unittest.TestCase): 65@@ -517,6 +518,7 @@ class TimeTestCase(unittest.TestCase):
66 self.assertTrue(info.monotonic) 66 self.assertTrue(info.monotonic)
67 self.assertFalse(info.adjustable) 67 self.assertFalse(info.adjustable)
68 68
69+ @unittest.skip('timing related test, dependent on load') 69+ @unittest.skip('timing related test, dependent on load')
70 def test_thread_time(self): 70 def test_thread_time(self):
71 if not hasattr(time, 'thread_time'): 71 if not hasattr(time, 'thread_time'):
72 if sys.platform.startswith(('linux', 'win')): 72 if sys.platform.startswith(('linux', 'android', 'win')):
diff --git a/meta/recipes-devtools/python/python3/0001-Update-test_sysconfig-for-posix_user-purelib.patch b/meta/recipes-devtools/python/python3/0001-Update-test_sysconfig-for-posix_user-purelib.patch
index b6c6ac5a28..b967a36e49 100644
--- a/meta/recipes-devtools/python/python3/0001-Update-test_sysconfig-for-posix_user-purelib.patch
+++ b/meta/recipes-devtools/python/python3/0001-Update-test_sysconfig-for-posix_user-purelib.patch
@@ -1,4 +1,4 @@
1From 37d058e841ba3bd89b5746cc5381afb014b11581 Mon Sep 17 00:00:00 2001 1From 5bf5aa6eae1fa3eed66893e51a1858ab481426b4 Mon Sep 17 00:00:00 2001
2From: Wentao Zhang <wentao.zhang@windriver.com> 2From: Wentao Zhang <wentao.zhang@windriver.com>
3Date: Mon, 20 Mar 2023 13:39:52 +0800 3Date: Mon, 20 Mar 2023 13:39:52 +0800
4Subject: [PATCH] Update test_sysconfig for posix_user purelib 4Subject: [PATCH] Update test_sysconfig for posix_user purelib
@@ -17,16 +17,15 @@ Update test_sysconfig.test_user_similar() for the posix_user scheme:
17 17
18Upstream-Status: Inappropriate [oe-core specific] 18Upstream-Status: Inappropriate [oe-core specific]
19Signed-off-by: Wentao Zhang <wentao.zhang@windriver.com> 19Signed-off-by: Wentao Zhang <wentao.zhang@windriver.com>
20
21--- 20---
22 Lib/test/test_sysconfig.py | 2 +- 21 Lib/test/test_sysconfig.py | 2 +-
23 1 file changed, 1 insertion(+), 1 deletion(-) 22 1 file changed, 1 insertion(+), 1 deletion(-)
24 23
25diff --git a/Lib/test/test_sysconfig.py b/Lib/test/test_sysconfig.py 24diff --git a/Lib/test/test_sysconfig.py b/Lib/test/test_sysconfig.py
26index b6dbf3d..5672590 100644 25index 1ade492..4e94889 100644
27--- a/Lib/test/test_sysconfig.py 26--- a/Lib/test/test_sysconfig.py
28+++ b/Lib/test/test_sysconfig.py 27+++ b/Lib/test/test_sysconfig.py
29@@ -372,7 +372,7 @@ class TestSysConfig(unittest.TestCase): 28@@ -414,7 +414,7 @@ class TestSysConfig(unittest.TestCase):
30 expected = os.path.normpath(global_path.replace(base, user, 1)) 29 expected = os.path.normpath(global_path.replace(base, user, 1))
31 # bpo-44860: platlib of posix_user doesn't use sys.platlibdir, 30 # bpo-44860: platlib of posix_user doesn't use sys.platlibdir,
32 # whereas posix_prefix does. 31 # whereas posix_prefix does.
@@ -34,4 +33,4 @@ index b6dbf3d..5672590 100644
34+ if name == 'platlib' or name == 'purelib': 33+ if name == 'platlib' or name == 'purelib':
35 # Replace "/lib64/python3.11/site-packages" suffix 34 # Replace "/lib64/python3.11/site-packages" suffix
36 # with "/lib/python3.11/site-packages". 35 # with "/lib/python3.11/site-packages".
37 py_version_short = sysconfig.get_python_version() 36 py_version_abi = sysconfig._get_python_version_abi()
diff --git a/meta/recipes-devtools/python/python3/0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch b/meta/recipes-devtools/python/python3/0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch
deleted file mode 100644
index 88b84c6024..0000000000
--- a/meta/recipes-devtools/python/python3/0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch
+++ /dev/null
@@ -1,40 +0,0 @@
1From 999d4e74d34afa233ad8ad0c70b989d77a21957f Mon Sep 17 00:00:00 2001
2From: Petr Viktorin <encukou@gmail.com>
3Date: Wed, 23 Aug 2023 20:00:07 +0200
4Subject: [PATCH] gh-107811: tarfile: treat overflow in UID/GID as failure to
5 set it (#108369)
6
7Upstream-Status: Backport [https://github.com/python/cpython/pull/108369]
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10 Lib/tarfile.py | 3 ++-
11 .../Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst | 3 +++
12 2 files changed, 5 insertions(+), 1 deletion(-)
13 create mode 100644 Misc/NEWS.d/next/Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst
14
15diff --git a/Lib/tarfile.py b/Lib/tarfile.py
16index 3bbbcaa..473167d 100755
17--- a/Lib/tarfile.py
18+++ b/Lib/tarfile.py
19@@ -2557,7 +2557,8 @@ class TarFile(object):
20 os.lchown(targetpath, u, g)
21 else:
22 os.chown(targetpath, u, g)
23- except OSError as e:
24+ except (OSError, OverflowError) as e:
25+ # OverflowError can be raised if an ID doesn't fit in `id_t`
26 raise ExtractError("could not change owner") from e
27
28 def chmod(self, tarinfo, targetpath):
29diff --git a/Misc/NEWS.d/next/Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst b/Misc/NEWS.d/next/Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst
30new file mode 100644
31index 0000000..ffca413
32--- /dev/null
33+++ b/Misc/NEWS.d/next/Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst
34@@ -0,0 +1,3 @@
35+:mod:`tarfile`: extraction of members with overly large UID or GID (e.g. on
36+an OS with 32-bit :c:type:`!id_t`) now fails in the same way as failing to
37+set the ID.
38--
392.45.0
40
diff --git a/meta/recipes-devtools/python/python3/0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch b/meta/recipes-devtools/python/python3/0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch
deleted file mode 100644
index bbeabe4389..0000000000
--- a/meta/recipes-devtools/python/python3/0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch
+++ /dev/null
@@ -1,120 +0,0 @@
1From ababc7b1db8c406910766e11cdd04cbef7a706c9 Mon Sep 17 00:00:00 2001
2From: Changqing Li <changqing.li@windriver.com>
3Date: Mon, 22 Oct 2018 15:19:51 +0800
4Subject: [PATCH] python3: use cc_basename to replace CC for checking compiler
5
6When working path contains "clang"/"gcc"/"icc", it might be part of $CC
7because of the "--sysroot" parameter. That could cause judgement error
8about clang/gcc/icc compilers. e.g.
9When "icc" is containded in working path, below errors are reported when
10compiling python3:
11x86_64-wrs-linux-gcc: error: strict: No such file or directory
12x86_64-wrs-linux-gcc: error: unrecognized command line option '-fp-model'
13
14Here use cc_basename to replace CC for checking compiler to avoid such
15kind of issue.
16
17Upstream-Status: Submitted [https://github.com/python/cpython/pull/96399]
18
19Signed-off-by: Li Zhou <li.zhou@windriver.com>
20
21patch originally from Li Zhou, I just rework it to new version
22
23Signed-off-by: Changqing Li <changqing.li@windriver.com>
24---
25 configure.ac | 19 ++++++++++---------
26 1 file changed, 10 insertions(+), 9 deletions(-)
27
28diff --git a/configure.ac b/configure.ac
29index 384718d..5a1d58b 100644
30--- a/configure.ac
31+++ b/configure.ac
32@@ -137,6 +137,7 @@ AC_CONFIG_HEADERS([pyconfig.h])
33 AC_CANONICAL_HOST
34 AC_SUBST([build])
35 AC_SUBST([host])
36+LT_INIT
37
38 AS_VAR_IF([cross_compiling], [maybe],
39 [AC_MSG_ERROR([Cross compiling required --host=HOST-TUPLE and --build=ARCH])]
40@@ -896,7 +897,7 @@ AC_SUBST([CXX])
41 preset_cxx="$CXX"
42 if test -z "$CXX"
43 then
44- case "$CC" in
45+ case "$cc_basename" in
46 gcc) AC_PATH_TOOL([CXX], [g++], [g++], [notfound]) ;;
47 cc) AC_PATH_TOOL([CXX], [c++], [c++], [notfound]) ;;
48 clang|*/clang) AC_PATH_TOOL([CXX], [clang++], [clang++], [notfound]) ;;
49@@ -1328,7 +1329,7 @@ rmdir CaseSensitiveTestDir
50
51 case $ac_sys_system in
52 hp*|HP*)
53- case $CC in
54+ case $cc_basename in
55 cc|*/cc) CC="$CC -Ae";;
56 esac;;
57 esac
58@@ -1854,7 +1855,7 @@ esac
59 ],
60 [AC_MSG_RESULT([no])])
61 if test "$Py_LTO" = 'true' ; then
62- case $CC in
63+ case $cc_basename in
64 *clang*)
65 LDFLAGS_NOLTO="-fno-lto"
66 dnl Clang linker requires -flto in order to link objects with LTO information.
67@@ -1983,7 +1984,7 @@ then
68 fi
69 fi
70 LLVM_PROF_ERR=no
71-case $CC in
72+case $cc_basename in
73 *clang*)
74 # Any changes made here should be reflected in the GCC+Darwin case below
75 PGO_PROF_GEN_FLAG="-fprofile-instr-generate"
76@@ -2147,7 +2148,7 @@ AC_MSG_RESULT([$BOLT_APPLY_FLAGS])
77 # compiler and platform. BASECFLAGS tweaks need to be made even if the
78 # user set OPT.
79
80-case $CC in
81+case $cc_basename in
82 *clang*)
83 cc_is_clang=1
84 ;;
85@@ -2419,7 +2420,7 @@ yes)
86
87 # ICC doesn't recognize the option, but only emits a warning
88 ## XXX does it emit an unused result warning and can it be disabled?
89- AS_CASE([$CC],
90+ AS_CASE([$cc_basename],
91 [*icc*], [ac_cv_disable_unused_result_warning=no]
92 [PY_CHECK_CC_WARNING([disable], [unused-result])])
93 AS_VAR_IF([ac_cv_disable_unused_result_warning], [yes],
94@@ -2665,7 +2666,7 @@ yes)
95 ;;
96 esac
97
98-case "$CC" in
99+case "$cc_basename" in
100 *mpicc*)
101 CFLAGS_NODIST="$CFLAGS_NODIST"
102 ;;
103@@ -3482,7 +3483,7 @@ then
104 then
105 LINKFORSHARED="-Wl,--export-dynamic"
106 fi;;
107- SunOS/5*) case $CC in
108+ SunOS/5*) case $cc_basename in
109 *gcc*)
110 if $CC -Xlinker --help 2>&1 | grep export-dynamic >/dev/null
111 then
112@@ -6803,7 +6804,7 @@ if test "$ac_cv_gcc_asm_for_x87" = yes; then
113 # Some versions of gcc miscompile inline asm:
114 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46491
115 # http://gcc.gnu.org/ml/gcc/2010-11/msg00366.html
116- case $CC in
117+ case $cc_basename in
118 *gcc*)
119 AC_MSG_CHECKING([for gcc ipa-pure-const bug])
120 saved_cflags="$CFLAGS"
diff --git a/meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch b/meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch
index 2d7bca6a77..ea103bc834 100644
--- a/meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch
+++ b/meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch
@@ -1,4 +1,4 @@
1From 217cea231462e7703e8c9ea39c0a6833f799a420 Mon Sep 17 00:00:00 2001 1From c5bdd39f8ebc4e6c58a47d7e424eac028eddb4ff Mon Sep 17 00:00:00 2001
2From: Trevor Gamblin <tgamblin@baylibre.com> 2From: Trevor Gamblin <tgamblin@baylibre.com>
3Date: Fri, 15 Sep 2023 08:48:33 -0400 3Date: Fri, 15 Sep 2023 08:48:33 -0400
4Subject: [PATCH] skip no_stdout_fileno test due to load variability 4Subject: [PATCH] skip no_stdout_fileno test due to load variability
@@ -16,12 +16,12 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
16 1 file changed, 1 insertion(+) 16 1 file changed, 1 insertion(+)
17 17
18diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py 18diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py
19index 4d03c46..b329b7a 100644 19index c5394de..ed17fb6 100644
20--- a/Lib/test/test_builtin.py 20--- a/Lib/test/test_builtin.py
21+++ b/Lib/test/test_builtin.py 21+++ b/Lib/test/test_builtin.py
22@@ -2326,6 +2326,7 @@ class PtyTests(unittest.TestCase): 22@@ -2435,6 +2435,7 @@ class PtyTests(unittest.TestCase):
23 # Check stdin/stdout error handler is used when invoking PyOS_Readline() 23 "byte 0xe9 in position 4: ordinal not in "
24 self.check_input_tty("prompté", b"quux\xe9", "ascii") 24 "range(128)")
25 25
26+ @unittest.skip("Test may fail under heavy load") 26+ @unittest.skip("Test may fail under heavy load")
27 def test_input_no_stdout_fileno(self): 27 def test_input_no_stdout_fileno(self):
diff --git a/meta/recipes-devtools/python/python3/0001-sysconfig.py-use-platlibdir-also-for-purelib.patch b/meta/recipes-devtools/python/python3/0001-sysconfig.py-use-platlibdir-also-for-purelib.patch
index fc52fdac26..b9c68a98d7 100644
--- a/meta/recipes-devtools/python/python3/0001-sysconfig.py-use-platlibdir-also-for-purelib.patch
+++ b/meta/recipes-devtools/python/python3/0001-sysconfig.py-use-platlibdir-also-for-purelib.patch
@@ -1,4 +1,4 @@
1From a5d429a0e1a4809c1ded7be7e45dcabeb82c53d8 Mon Sep 17 00:00:00 2001 1From bbcb17dc1ed283f41c8cd94d39f70898f0c45583 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de> 2From: Alexander Kanavin <alex@linutronix.de>
3Date: Sun, 12 Sep 2021 21:44:36 +0200 3Date: Sun, 12 Sep 2021 21:44:36 +0200
4Subject: [PATCH] sysconfig.py: use platlibdir also for purelib 4Subject: [PATCH] sysconfig.py: use platlibdir also for purelib
@@ -8,21 +8,20 @@ is not correct.
8 8
9Upstream-Status: Inappropriate [oe-core specific] 9Upstream-Status: Inappropriate [oe-core specific]
10Signed-off-by: Alexander Kanavin <alex@linutronix.de> 10Signed-off-by: Alexander Kanavin <alex@linutronix.de>
11
12--- 11---
13 Lib/sysconfig.py | 2 +- 12 Lib/sysconfig/__init__.py | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-) 13 1 file changed, 1 insertion(+), 1 deletion(-)
15 14
16diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py 15diff --git a/Lib/sysconfig/__init__.py b/Lib/sysconfig/__init__.py
17index 122d441..79c0510 100644 16index 80aef34..f8e1c7d 100644
18--- a/Lib/sysconfig.py 17--- a/Lib/sysconfig/__init__.py
19+++ b/Lib/sysconfig.py 18+++ b/Lib/sysconfig/__init__.py
20@@ -28,7 +28,7 @@ _INSTALL_SCHEMES = { 19@@ -29,7 +29,7 @@ _INSTALL_SCHEMES = {
21 'posix_prefix': { 20 'posix_prefix': {
22 'stdlib': '{installed_base}/{platlibdir}/python{py_version_short}', 21 'stdlib': '{installed_base}/{platlibdir}/{implementation_lower}{py_version_short}{abi_thread}',
23 'platstdlib': '{platbase}/{platlibdir}/python{py_version_short}', 22 'platstdlib': '{platbase}/{platlibdir}/{implementation_lower}{py_version_short}{abi_thread}',
24- 'purelib': '{base}/lib/python{py_version_short}/site-packages', 23- 'purelib': '{base}/lib/{implementation_lower}{py_version_short}{abi_thread}/site-packages',
25+ 'purelib': '{base}/{platlibdir}/python{py_version_short}/site-packages', 24+ 'purelib': '{base}/{platlibdir}/{implementation_lower}{py_version_short}{abi_thread}/site-packages',
26 'platlib': '{platbase}/{platlibdir}/python{py_version_short}/site-packages', 25 'platlib': '{platbase}/{platlibdir}/{implementation_lower}{py_version_short}{abi_thread}/site-packages',
27 'include': 26 'include':
28 '{installed_base}/include/python{py_version_short}{abiflags}', 27 '{installed_base}/include/{implementation_lower}{py_version_short}{abiflags}',
diff --git a/meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch b/meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch
index 6ebbaf10e0..7749fcbe7d 100644
--- a/meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch
+++ b/meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch
@@ -1,4 +1,4 @@
1From bf3eb28bba24509a3e1cd40f1f0e26db833779a2 Mon Sep 17 00:00:00 2001 1From 540765b148d942a2339affa6c0d11445e9d0f26c Mon Sep 17 00:00:00 2001
2From: Trevor Gamblin <tgamblin@baylibre.com> 2From: Trevor Gamblin <tgamblin@baylibre.com>
3Date: Thu, 13 Jun 2024 10:54:31 -0400 3Date: Thu, 13 Jun 2024 10:54:31 -0400
4Subject: [PATCH] test_active_children: skip problematic test 4Subject: [PATCH] test_active_children: skip problematic test
@@ -14,10 +14,10 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
14 1 file changed, 1 insertion(+) 14 1 file changed, 1 insertion(+)
15 15
16diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py 16diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py
17index 3955123455..a1861fa3a0 100644 17index 23eb971..b1295b2 100644
18--- a/Lib/test/_test_multiprocessing.py 18--- a/Lib/test/_test_multiprocessing.py
19+++ b/Lib/test/_test_multiprocessing.py 19+++ b/Lib/test/_test_multiprocessing.py
20@@ -579,6 +579,7 @@ def test_cpu_count(self): 20@@ -579,6 +579,7 @@ class _TestProcess(BaseTestCase):
21 self.assertTrue(type(cpus) is int) 21 self.assertTrue(type(cpus) is int)
22 self.assertTrue(cpus >= 1) 22 self.assertTrue(cpus >= 1)
23 23
@@ -25,6 +25,3 @@ index 3955123455..a1861fa3a0 100644
25 def test_active_children(self): 25 def test_active_children(self):
26 self.assertEqual(type(self.active_children()), list) 26 self.assertEqual(type(self.active_children()), list)
27 27
28--
292.45.2
30
diff --git a/meta/recipes-devtools/python/python3/0001-test_ctypes.test_find-skip-without-tools-sdk.patch b/meta/recipes-devtools/python/python3/0001-test_ctypes.test_find-skip-without-tools-sdk.patch
index b4fe946cba..68e277d662 100644
--- a/meta/recipes-devtools/python/python3/0001-test_ctypes.test_find-skip-without-tools-sdk.patch
+++ b/meta/recipes-devtools/python/python3/0001-test_ctypes.test_find-skip-without-tools-sdk.patch
@@ -1,4 +1,4 @@
1From b64c131a576a4b4f821514e711ab91b1394fb4ff Mon Sep 17 00:00:00 2001 1From 0e9d0c58e77ef540d9601ce84a1aa79d9ce6ee9b Mon Sep 17 00:00:00 2001
2From: Tim Orling <timothy.t.orling@intel.com> 2From: Tim Orling <timothy.t.orling@intel.com>
3Date: Fri, 18 Jun 2021 11:56:50 -0700 3Date: Fri, 18 Jun 2021 11:56:50 -0700
4Subject: [PATCH] test_ctypes.test_find: skip without tools-sdk 4Subject: [PATCH] test_ctypes.test_find: skip without tools-sdk
@@ -10,16 +10,15 @@ easiest way to dynamically check for that is looking for
10Upstream-Status: Inappropriate [oe-specific] 10Upstream-Status: Inappropriate [oe-specific]
11 11
12Signed-off-by: Tim Orling <timothy.t.orling@intel.com> 12Signed-off-by: Tim Orling <timothy.t.orling@intel.com>
13
14--- 13---
15 Lib/test/test_ctypes/test_find.py | 2 ++ 14 Lib/test/test_ctypes/test_find.py | 2 ++
16 1 file changed, 2 insertions(+) 15 1 file changed, 2 insertions(+)
17 16
18diff --git a/Lib/test/test_ctypes/test_find.py b/Lib/test/test_ctypes/test_find.py 17diff --git a/Lib/test/test_ctypes/test_find.py b/Lib/test/test_ctypes/test_find.py
19index 1ff9d01..59def26 100644 18index 85b2861..b033203 100644
20--- a/Lib/test/test_ctypes/test_find.py 19--- a/Lib/test/test_ctypes/test_find.py
21+++ b/Lib/test/test_ctypes/test_find.py 20+++ b/Lib/test/test_ctypes/test_find.py
22@@ -113,10 +113,12 @@ class FindLibraryLinux(unittest.TestCase): 21@@ -116,10 +116,12 @@ class FindLibraryLinux(unittest.TestCase):
23 # LD_LIBRARY_PATH) 22 # LD_LIBRARY_PATH)
24 self.assertEqual(find_library(libname), 'lib%s.so' % libname) 23 self.assertEqual(find_library(libname), 'lib%s.so' % libname)
25 24
diff --git a/meta/recipes-devtools/python/python3/0001-test_deadlock-skip-problematic-test.patch b/meta/recipes-devtools/python/python3/0001-test_deadlock-skip-problematic-test.patch
index f0a7cfd39b..3336e2913a 100644
--- a/meta/recipes-devtools/python/python3/0001-test_deadlock-skip-problematic-test.patch
+++ b/meta/recipes-devtools/python/python3/0001-test_deadlock-skip-problematic-test.patch
@@ -1,4 +1,4 @@
1From d7e3f26e7094fbe20e2271d75f18ac3b23a67f58 Mon Sep 17 00:00:00 2001 1From 5a44f74549b32395109342e9299510c32db71068 Mon Sep 17 00:00:00 2001
2From: Trevor Gamblin <tgamblin@baylibre.com> 2From: Trevor Gamblin <tgamblin@baylibre.com>
3Date: Wed, 12 Jun 2024 10:29:03 -0400 3Date: Wed, 12 Jun 2024 10:29:03 -0400
4Subject: [PATCH] test_deadlock: skip problematic test 4Subject: [PATCH] test_deadlock: skip problematic test
@@ -14,10 +14,10 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
14 1 file changed, 1 insertion(+) 14 1 file changed, 1 insertion(+)
15 15
16diff --git a/Lib/test/test_concurrent_futures/test_deadlock.py b/Lib/test/test_concurrent_futures/test_deadlock.py 16diff --git a/Lib/test/test_concurrent_futures/test_deadlock.py b/Lib/test/test_concurrent_futures/test_deadlock.py
17index 1db4cd0099..fd07895a17 100644 17index 3c30c45..008d6c0 100644
18--- a/Lib/test/test_concurrent_futures/test_deadlock.py 18--- a/Lib/test/test_concurrent_futures/test_deadlock.py
19+++ b/Lib/test/test_concurrent_futures/test_deadlock.py 19+++ b/Lib/test/test_concurrent_futures/test_deadlock.py
20@@ -90,6 +90,7 @@ def __reduce__(self): 20@@ -90,6 +90,7 @@ class ErrorAtUnpickle(object):
21 return _raise_error_ignore_stderr, (UnpicklingError, ) 21 return _raise_error_ignore_stderr, (UnpicklingError, )
22 22
23 23
@@ -25,6 +25,3 @@ index 1db4cd0099..fd07895a17 100644
25 class ExecutorDeadlockTest: 25 class ExecutorDeadlockTest:
26 TIMEOUT = support.LONG_TIMEOUT 26 TIMEOUT = support.LONG_TIMEOUT
27 27
28--
292.45.2
30
diff --git a/meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch b/meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch
index 410a9fc7f1..7f03cf105f 100644
--- a/meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch
+++ b/meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch
@@ -1,4 +1,4 @@
1From ef5728f0af14da5c9f80b0f038fe5bf6d44cb0e9 Mon Sep 17 00:00:00 2001 1From c1f3cf625c0f011060ddaa2a4096f6aa13dd1ee6 Mon Sep 17 00:00:00 2001
2From: Mingli Yu <mingli.yu@windriver.com> 2From: Mingli Yu <mingli.yu@windriver.com>
3Date: Mon, 5 Aug 2019 15:57:39 +0800 3Date: Mon, 5 Aug 2019 15:57:39 +0800
4Subject: [PATCH] test_locale.py: correct the test output format 4Subject: [PATCH] test_locale.py: correct the test output format
@@ -26,16 +26,15 @@ Upstream-Status: Submitted [https://github.com/python/cpython/pull/15132]
26Rebased for 3.9.4, still not accepted upstream Signed-off-by: Alejandro Hernandez <alejandro@enedino.org> 26Rebased for 3.9.4, still not accepted upstream Signed-off-by: Alejandro Hernandez <alejandro@enedino.org>
27 27
28Signed-off-by: Mingli Yu <mingli.yu@windriver.com> 28Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
29
30--- 29---
31 Lib/test/test_locale.py | 2 +- 30 Lib/test/test_locale.py | 2 +-
32 1 file changed, 1 insertion(+), 1 deletion(-) 31 1 file changed, 1 insertion(+), 1 deletion(-)
33 32
34diff --git a/Lib/test/test_locale.py b/Lib/test/test_locale.py 33diff --git a/Lib/test/test_locale.py b/Lib/test/test_locale.py
35index b0d7998..cb12153 100644 34index da4bd79..fd9e67d 100644
36--- a/Lib/test/test_locale.py 35--- a/Lib/test/test_locale.py
37+++ b/Lib/test/test_locale.py 36+++ b/Lib/test/test_locale.py
38@@ -557,7 +557,7 @@ class TestMiscellaneous(unittest.TestCase): 37@@ -568,7 +568,7 @@ class TestMiscellaneous(unittest.TestCase):
39 self.skipTest('test needs Turkish locale') 38 self.skipTest('test needs Turkish locale')
40 loc = locale.getlocale(locale.LC_CTYPE) 39 loc = locale.getlocale(locale.LC_CTYPE)
41 if verbose: 40 if verbose:
diff --git a/meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch b/meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch
index e8d297c721..d63c73e334 100644
--- a/meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch
+++ b/meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch
@@ -1,4 +1,4 @@
1From d9d916d5ea946c945323679d1709de1b87029b96 Mon Sep 17 00:00:00 2001 1From 1a0a145261ba4f97aaff3c0c656ac2e0ad9695a8 Mon Sep 17 00:00:00 2001
2From: Trevor Gamblin <tgamblin@baylibre.com> 2From: Trevor Gamblin <tgamblin@baylibre.com>
3Date: Tue, 13 Aug 2024 11:07:05 -0400 3Date: Tue, 13 Aug 2024 11:07:05 -0400
4Subject: [PATCH] test_readline: skip limited history test 4Subject: [PATCH] test_readline: skip limited history test
@@ -16,11 +16,11 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
16 Lib/test/test_readline.py | 2 ++ 16 Lib/test/test_readline.py | 2 ++
17 1 file changed, 2 insertions(+) 17 1 file changed, 2 insertions(+)
18 18
19Index: Python-3.12.6/Lib/test/test_readline.py 19diff --git a/Lib/test/test_readline.py b/Lib/test/test_readline.py
20=================================================================== 20index 50e77cb..09b644a 100644
21--- Python-3.12.6.orig/Lib/test/test_readline.py 21--- a/Lib/test/test_readline.py
22+++ Python-3.12.6/Lib/test/test_readline.py 22+++ b/Lib/test/test_readline.py
23@@ -133,6 +133,7 @@ class TestHistoryManipulation (unittest. 23@@ -133,6 +133,7 @@ class TestHistoryManipulation (unittest.TestCase):
24 self.assertEqual(readline.get_history_item(1), "entrée 1") 24 self.assertEqual(readline.get_history_item(1), "entrée 1")
25 self.assertEqual(readline.get_history_item(2), "entrée 22") 25 self.assertEqual(readline.get_history_item(2), "entrée 22")
26 26
@@ -28,7 +28,7 @@ Index: Python-3.12.6/Lib/test/test_readline.py
28 def test_write_read_limited_history(self): 28 def test_write_read_limited_history(self):
29 previous_length = readline.get_history_length() 29 previous_length = readline.get_history_length()
30 self.addCleanup(readline.set_history_length, previous_length) 30 self.addCleanup(readline.set_history_length, previous_length)
31@@ -371,6 +372,7 @@ readline.write_history_file(history_file 31@@ -374,6 +375,7 @@ readline.write_history_file(history_file)
32 self.assertIn(b"done", output) 32 self.assertIn(b"done", output)
33 33
34 34
diff --git a/meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch b/meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch
index 1d4cda18b1..4e284de613 100644
--- a/meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch
+++ b/meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch
@@ -1,4 +1,4 @@
1From 9d4cdbde100798ba9fa1cf3f82dbaf18fd10a543 Mon Sep 17 00:00:00 2001 1From b678363156b5d40e09c1d138840180e3ddc7d20b Mon Sep 17 00:00:00 2001
2From: Trevor Gamblin <tgamblin@baylibre.com> 2From: Trevor Gamblin <tgamblin@baylibre.com>
3Date: Wed, 8 May 2024 11:58:09 -0400 3Date: Wed, 8 May 2024 11:58:09 -0400
4Subject: [PATCH] test_shutdown: skip problematic test 4Subject: [PATCH] test_shutdown: skip problematic test
@@ -14,7 +14,7 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
14 1 file changed, 3 insertions(+) 14 1 file changed, 3 insertions(+)
15 15
16diff --git a/Lib/test/test_concurrent_futures/test_shutdown.py b/Lib/test/test_concurrent_futures/test_shutdown.py 16diff --git a/Lib/test/test_concurrent_futures/test_shutdown.py b/Lib/test/test_concurrent_futures/test_shutdown.py
17index 7a4065afd4..6b878a48bf 100644 17index 7a4065a..6b878a4 100644
18--- a/Lib/test/test_concurrent_futures/test_shutdown.py 18--- a/Lib/test/test_concurrent_futures/test_shutdown.py
19+++ b/Lib/test/test_concurrent_futures/test_shutdown.py 19+++ b/Lib/test/test_concurrent_futures/test_shutdown.py
20@@ -20,6 +20,7 @@ def sleep_and_print(t, msg): 20@@ -20,6 +20,7 @@ def sleep_and_print(t, msg):
@@ -25,7 +25,7 @@ index 7a4065afd4..6b878a48bf 100644
25 class ExecutorShutdownTest: 25 class ExecutorShutdownTest:
26 def test_run_after_shutdown(self): 26 def test_run_after_shutdown(self):
27 self.executor.shutdown() 27 self.executor.shutdown()
28@@ -156,6 +157,7 @@ def timeout(_signum, _frame): 28@@ -156,6 +157,7 @@ class ExecutorShutdownTest:
29 signal.signal(signal.SIGALRM, old_handler) 29 signal.signal(signal.SIGALRM, old_handler)
30 30
31 31
@@ -33,7 +33,7 @@ index 7a4065afd4..6b878a48bf 100644
33 class ThreadPoolShutdownTest(ThreadPoolMixin, ExecutorShutdownTest, BaseTestCase): 33 class ThreadPoolShutdownTest(ThreadPoolMixin, ExecutorShutdownTest, BaseTestCase):
34 def test_threads_terminate(self): 34 def test_threads_terminate(self):
35 def acquire_lock(lock): 35 def acquire_lock(lock):
36@@ -252,6 +254,7 @@ def test_cancel_futures_wait_false(self): 36@@ -252,6 +254,7 @@ class ThreadPoolShutdownTest(ThreadPoolMixin, ExecutorShutdownTest, BaseTestCase
37 self.assertIn(out.strip(), [b"apple", b""]) 37 self.assertIn(out.strip(), [b"apple", b""])
38 38
39 39
@@ -41,6 +41,3 @@ index 7a4065afd4..6b878a48bf 100644
41 class ProcessPoolShutdownTest(ExecutorShutdownTest): 41 class ProcessPoolShutdownTest(ExecutorShutdownTest):
42 def test_processes_terminate(self): 42 def test_processes_terminate(self):
43 def acquire_lock(lock): 43 def acquire_lock(lock):
44--
452.45.0
46
diff --git a/meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch b/meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch
index 0d0eb08459..b4f873fd72 100644
--- a/meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch
+++ b/meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch
@@ -1,4 +1,4 @@
1From dc69a1afdb3ba619705ff71e14f19ed3142e422f Mon Sep 17 00:00:00 2001 1From 9f252a691cd335341938489da32d6e2d4620d8ca Mon Sep 17 00:00:00 2001
2From: Trevor Gamblin <tgamblin@baylibre.com> 2From: Trevor Gamblin <tgamblin@baylibre.com>
3Date: Fri, 6 Oct 2023 10:59:44 -0400 3Date: Fri, 6 Oct 2023 10:59:44 -0400
4Subject: [PATCH] test_storlines: skip due to load variability 4Subject: [PATCH] test_storlines: skip due to load variability
@@ -11,16 +11,15 @@ Upstream-Status: Inappropriate [OE-Specific]
11[YOCTO #14933] 11[YOCTO #14933]
12 12
13Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> 13Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
14
15--- 14---
16 Lib/test/test_ftplib.py | 1 + 15 Lib/test/test_ftplib.py | 1 +
17 1 file changed, 1 insertion(+) 16 1 file changed, 1 insertion(+)
18 17
19diff --git a/Lib/test/test_ftplib.py b/Lib/test/test_ftplib.py 18diff --git a/Lib/test/test_ftplib.py b/Lib/test/test_ftplib.py
20index 2f191ea..dc29346 100644 19index bed0e6d..36602be 100644
21--- a/Lib/test/test_ftplib.py 20--- a/Lib/test/test_ftplib.py
22+++ b/Lib/test/test_ftplib.py 21+++ b/Lib/test/test_ftplib.py
23@@ -626,6 +626,7 @@ class TestFTPClass(TestCase): 22@@ -627,6 +627,7 @@ class TestFTPClass(TestCase):
24 self.client.storbinary('stor', f, rest=r) 23 self.client.storbinary('stor', f, rest=r)
25 self.assertEqual(self.server.handler_instance.rest, str(r)) 24 self.assertEqual(self.server.handler_instance.rest, str(r))
26 25
diff --git a/meta/recipes-devtools/python/python3/0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch b/meta/recipes-devtools/python/python3/0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch
deleted file mode 100644
index 0661249bfd..0000000000
--- a/meta/recipes-devtools/python/python3/0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From d0205c60d08f51d84bd8ddc07a57e8c71710fdad Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de>
3Date: Fri, 17 Nov 2023 14:16:40 +0100
4Subject: [PATCH] configure.ac: do not add a curses include path from the host
5
6This leads to host contamination, and particularly can cause
7curses modules to fail at runtime if the host curses is configured
8differently to native curses (observed on current OpenSuse Tumbleweed
9as dnf failures).
10
11Upstream-Status: Inappropriate [oe-core specific]
12Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
13---
14 configure.ac | 6 ------
15 1 file changed, 6 deletions(-)
16
17diff --git a/configure.ac b/configure.ac
18index c49cd4f..affdedf 100644
19--- a/configure.ac
20+++ b/configure.ac
21@@ -6508,12 +6508,6 @@ AS_VAR_IF([have_panel], [no], [
22 AC_MSG_RESULT([$have_panel (CFLAGS: $PANEL_CFLAGS, LIBS: $PANEL_LIBS)])
23 ])
24
25-# first curses header check
26-ac_save_cppflags="$CPPFLAGS"
27-if test "$cross_compiling" = no; then
28- CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
29-fi
30-
31 # On Solaris, term.h requires curses.h
32 AC_CHECK_HEADERS([term.h], [], [], [
33 #ifdef HAVE_CURSES_H
diff --git a/meta/recipes-devtools/python/python3/cgi_py.patch b/meta/recipes-devtools/python/python3/cgi_py.patch
deleted file mode 100644
index 8262c88e73..0000000000
--- a/meta/recipes-devtools/python/python3/cgi_py.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From a56778372fe8dc7c42f5ffd911d89498c22dd064 Mon Sep 17 00:00:00 2001
2From: Mark Hatle <mark.hatle@windriver.com>
3Date: Wed, 21 Sep 2011 20:55:33 -0500
4Subject: [PATCH] Lib/cgi.py: Update the script as mentioned in the comment
5
6Upstream-Status: Inappropriate [distribution]
7
8Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
9
10---
11 Lib/cgi.py | 11 +----------
12 1 file changed, 1 insertion(+), 10 deletions(-)
13
14diff --git a/Lib/cgi.py b/Lib/cgi.py
15index 8787567..ebe8652 100755
16--- a/Lib/cgi.py
17+++ b/Lib/cgi.py
18@@ -1,13 +1,4 @@
19-#! /usr/local/bin/python
20-
21-# NOTE: the above "/usr/local/bin/python" is NOT a mistake. It is
22-# intentionally NOT "/usr/bin/env python". On many systems
23-# (e.g. Solaris), /usr/local/bin is not in $PATH as passed to CGI
24-# scripts, and /usr/local/bin is the default directory where Python is
25-# installed, so /usr/bin/env would be unable to find python. Granted,
26-# binary installations by Linux vendors often install Python in
27-# /usr/bin. So let those vendors patch cgi.py to match their choice
28-# of installation.
29+#! /usr/bin/env python
30
31 """Support module for CGI (Common Gateway Interface) scripts.
32
diff --git a/meta/recipes-devtools/python/python3/crosspythonpath.patch b/meta/recipes-devtools/python/python3/crosspythonpath.patch
index 2c4aef0511..f18898e4c4 100644
--- a/meta/recipes-devtools/python/python3/crosspythonpath.patch
+++ b/meta/recipes-devtools/python/python3/crosspythonpath.patch
@@ -1,4 +1,4 @@
1From 5b66463c10fec1440e977d5a21a0167862d6d79c Mon Sep 17 00:00:00 2001 1From 8840438e73e43b99bc9c83896a5f950e4259738f Mon Sep 17 00:00:00 2001
2From: Ricardo Ribalda <ricardo@ribalda.com> 2From: Ricardo Ribalda <ricardo@ribalda.com>
3Date: Tue, 18 Nov 2014 03:35:33 -0500 3Date: Tue, 18 Nov 2014 03:35:33 -0500
4Subject: [PATCH] configure.ac: add CROSSPYTHONPATH into PYTHONPATH for 4Subject: [PATCH] configure.ac: add CROSSPYTHONPATH into PYTHONPATH for
@@ -14,16 +14,15 @@ Upstream-Status: Inappropriate [OE-Core integration specific]
14Credits-to: Mark Hatle <mark.hatle@windriver.com> 14Credits-to: Mark Hatle <mark.hatle@windriver.com>
15Credits-to: Jackie Huang <jackie.huang@windriver.com> 15Credits-to: Jackie Huang <jackie.huang@windriver.com>
16Signed-off-by: Ricardo Ribalda <ricardo@ribalda.com> 16Signed-off-by: Ricardo Ribalda <ricardo@ribalda.com>
17
18--- 17---
19 configure.ac | 2 +- 18 configure.ac | 2 +-
20 1 file changed, 1 insertion(+), 1 deletion(-) 19 1 file changed, 1 insertion(+), 1 deletion(-)
21 20
22diff --git a/configure.ac b/configure.ac 21diff --git a/configure.ac b/configure.ac
23index cb9e198..d81c19a 100644 22index 58f5407..5101806 100644
24--- a/configure.ac 23--- a/configure.ac
25+++ b/configure.ac 24+++ b/configure.ac
26@@ -165,7 +165,7 @@ AC_ARG_WITH([build-python], 25@@ -164,7 +164,7 @@ AC_ARG_WITH([build-python],
27 dnl Build Python interpreter is used for regeneration and freezing. 26 dnl Build Python interpreter is used for regeneration and freezing.
28 ac_cv_prog_PYTHON_FOR_REGEN=$with_build_python 27 ac_cv_prog_PYTHON_FOR_REGEN=$with_build_python
29 PYTHON_FOR_FREEZE="$with_build_python" 28 PYTHON_FOR_FREEZE="$with_build_python"
diff --git a/meta/recipes-devtools/python/python3/deterministic_imports.patch b/meta/recipes-devtools/python/python3/deterministic_imports.patch
index 2de6ae2e98..61f136ef42 100644
--- a/meta/recipes-devtools/python/python3/deterministic_imports.patch
+++ b/meta/recipes-devtools/python/python3/deterministic_imports.patch
@@ -1,4 +1,4 @@
1From 039d5e652796b55f1132afa568c7432b6ed89afd Mon Sep 17 00:00:00 2001 1From 0a02e3b85176a5ce4dd98830bb65dac8596142e9 Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard.purdie@linuxfoundation.org> 2From: Richard Purdie <richard.purdie@linuxfoundation.org>
3Date: Fri, 27 May 2022 17:05:44 +0100 3Date: Fri, 27 May 2022 17:05:44 +0100
4Subject: [PATCH] python3: Ensure stale empty python module directories don't 4Subject: [PATCH] python3: Ensure stale empty python module directories don't
@@ -13,16 +13,15 @@ As a result, patch this to a behaviour which works for us.
13 13
14Upstream-Status: Submitted [https://github.com/python/cpython/issues/120492; need to first talk to upstream to see if they'll take one or both fixes] 14Upstream-Status: Submitted [https://github.com/python/cpython/issues/120492; need to first talk to upstream to see if they'll take one or both fixes]
15Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> 15Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
16
17--- 16---
18 Lib/importlib/metadata/__init__.py | 9 ++++++++- 17 Lib/importlib/metadata/__init__.py | 9 ++++++++-
19 1 file changed, 8 insertions(+), 1 deletion(-) 18 1 file changed, 8 insertions(+), 1 deletion(-)
20 19
21diff --git a/Lib/importlib/metadata/__init__.py b/Lib/importlib/metadata/__init__.py 20diff --git a/Lib/importlib/metadata/__init__.py b/Lib/importlib/metadata/__init__.py
22index 82e0ce1..969cac4 100644 21index 8ce62dd..a6ea6e9 100644
23--- a/Lib/importlib/metadata/__init__.py 22--- a/Lib/importlib/metadata/__init__.py
24+++ b/Lib/importlib/metadata/__init__.py 23+++ b/Lib/importlib/metadata/__init__.py
25@@ -710,7 +710,14 @@ class Lookup: 24@@ -786,7 +786,14 @@ class Lookup:
26 self.infos = FreezableDefaultDict(list) 25 self.infos = FreezableDefaultDict(list)
27 self.eggs = FreezableDefaultDict(list) 26 self.eggs = FreezableDefaultDict(list)
28 27
diff --git a/meta/recipes-devtools/python/python3/fix-armv5.patch b/meta/recipes-devtools/python/python3/fix-armv5.patch
new file mode 100644
index 0000000000..961404b24f
--- /dev/null
+++ b/meta/recipes-devtools/python/python3/fix-armv5.patch
@@ -0,0 +1,65 @@
1From 18b9079ddbc149d6b99c922630c246812e4d8ae7 Mon Sep 17 00:00:00 2001
2From: "Miss Islington (bot)"
3 <31488909+miss-islington@users.noreply.github.com>
4Date: Wed, 16 Oct 2024 16:48:40 +0200
5Subject: [PATCH] [3.13] gh-125444: Fix illegal instruction for older Arm
6 architectures (GH-125574) (GH-125595)
7MIME-Version: 1.0
8Content-Type: text/plain; charset=UTF-8
9Content-Transfer-Encoding: 8bit
10
11On Arm v5 it is not possible to get the thread ID via c13 register
12hence the illegal instruction. The c13 register started to provide
13thread ID since Arm v6K architecture variant. Other variants of
14Arm v6 (T2, Z and base) don’t provide the thread ID via c13.
15For the sake of simplicity we group v5 and v6 together and
16consider that instructions for Arm v7 only.
17(cherry picked from commit feda9aa73ab95d17a291db22c416146f8e70edeb)
18
19Co-authored-by: Diego Russo <diego.russo@arm.com>
20
21Upstream-Status: Backport [https://github.com/python/cpython/commit/18b9079ddbc149d6b99c922630c246812e4d8ae7]
22Signed-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
30diff --git a/Include/internal/mimalloc/mimalloc/prim.h b/Include/internal/mimalloc/mimalloc/prim.h
31index 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 )
46diff --git a/Include/object.h b/Include/object.h
47index 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));
59diff --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
60new file mode 100644
61index 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/makerace.patch b/meta/recipes-devtools/python/python3/makerace.patch
index c1b20703e6..f63c230747 100644
--- a/meta/recipes-devtools/python/python3/makerace.patch
+++ b/meta/recipes-devtools/python/python3/makerace.patch
@@ -1,4 +1,4 @@
1From 9f827c29adbe656af3c8fc963fdd8f47aec0c442 Mon Sep 17 00:00:00 2001 1From 2b458b4e1bcd57e3f135d3f0e715f64b98b27906 Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard.purdie@linuxfoundation.org> 2From: Richard Purdie <richard.purdie@linuxfoundation.org>
3Date: Tue, 13 Jul 2021 23:19:29 +0100 3Date: Tue, 13 Jul 2021 23:19:29 +0100
4Subject: [PATCH] python3: Fix make race 4Subject: [PATCH] python3: Fix make race
@@ -17,10 +17,10 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
17 1 file changed, 1 insertion(+), 1 deletion(-) 17 1 file changed, 1 insertion(+), 1 deletion(-)
18 18
19diff --git a/Makefile.pre.in b/Makefile.pre.in 19diff --git a/Makefile.pre.in b/Makefile.pre.in
20index 381feb0..77bf09a 100644 20index be1b9ea..9ec3a71 100644
21--- a/Makefile.pre.in 21--- a/Makefile.pre.in
22+++ b/Makefile.pre.in 22+++ b/Makefile.pre.in
23@@ -2250,7 +2250,7 @@ COMPILEALL_OPTS=-j0 23@@ -2513,7 +2513,7 @@ COMPILEALL_OPTS=-j0
24 TEST_MODULES=@TEST_MODULES@ 24 TEST_MODULES=@TEST_MODULES@
25 25
26 .PHONY: libinstall 26 .PHONY: libinstall
diff --git a/meta/recipes-devtools/python/python3/python3-manifest.json b/meta/recipes-devtools/python/python3/python3-manifest.json
index 292c5bbc5d..4b7f9cc7e3 100644
--- a/meta/recipes-devtools/python/python3/python3-manifest.json
+++ b/meta/recipes-devtools/python/python3/python3-manifest.json
@@ -103,17 +103,6 @@
103 ], 103 ],
104 "cached": [] 104 "cached": []
105 }, 105 },
106 "2to3": {
107 "summary": "Python automated Python 2 to 3 code translator",
108 "rdepends": [
109 "core"
110 ],
111 "files": [
112 "${bindir}/2to3*",
113 "${libdir}/python${PYTHON_MAJMIN}/lib2to3"
114 ],
115 "cached": []
116 },
117 "asyncio": { 106 "asyncio": {
118 "summary": "Python Asynchronous I/O", 107 "summary": "Python Asynchronous I/O",
119 "rdepends": [ 108 "rdepends": [
@@ -138,49 +127,21 @@
138 "core" 127 "core"
139 ], 128 ],
140 "files": [ 129 "files": [
141 "${libdir}/python${PYTHON_MAJMIN}/chunk.py",
142 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/audioop.*.so",
143 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/ossaudiodev.*.so",
144 "${libdir}/python${PYTHON_MAJMIN}/sndhdr.py",
145 "${libdir}/python${PYTHON_MAJMIN}/sunau.py",
146 "${libdir}/python${PYTHON_MAJMIN}/wave.py" 130 "${libdir}/python${PYTHON_MAJMIN}/wave.py"
147 ], 131 ],
148 "cached": [ 132 "cached": [
149 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/chunk.*.pyc",
150 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sndhdr.*.pyc",
151 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sunau.*.pyc",
152 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/wave.*.pyc" 133 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/wave.*.pyc"
153 ] 134 ]
154 }, 135 },
155 "cgitb": {
156 "summary": "Special exception handler for Python scripts",
157 "rdepends": [
158 "core",
159 "crypt",
160 "html",
161 "io",
162 "math",
163 "pydoc"
164 ],
165 "files": [
166 "${libdir}/python${PYTHON_MAJMIN}/cgitb.py"
167 ],
168 "cached": [
169 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/cgitb.*.pyc"
170 ]
171 },
172 "codecs": { 136 "codecs": {
173 "summary": "Python codec", 137 "summary": "Python codec",
174 "rdepends": [ 138 "rdepends": [
175 "core" 139 "core"
176 ], 140 ],
177 "files": [ 141 "files": [
178 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_multibytecodec.*.so", 142 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_multibytecodec.*.so"
179 "${libdir}/python${PYTHON_MAJMIN}/xdrlib.py"
180 ], 143 ],
181 "cached": [ 144 "cached": []
182 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/xdrlib.*.pyc"
183 ]
184 }, 145 },
185 "compile": { 146 "compile": {
186 "summary": "Python bytecode compilation support", 147 "summary": "Python bytecode compilation support",
@@ -229,8 +190,12 @@
229 "${libdir}/python${PYTHON_MAJMIN}/_abcoll.py", 190 "${libdir}/python${PYTHON_MAJMIN}/_abcoll.py",
230 "${libdir}/python${PYTHON_MAJMIN}/_bootlocale.py", 191 "${libdir}/python${PYTHON_MAJMIN}/_bootlocale.py",
231 "${libdir}/python${PYTHON_MAJMIN}/_collections_abc.py", 192 "${libdir}/python${PYTHON_MAJMIN}/_collections_abc.py",
193 "${libdir}/python${PYTHON_MAJMIN}/_colorize.py",
232 "${libdir}/python${PYTHON_MAJMIN}/_compression.py", 194 "${libdir}/python${PYTHON_MAJMIN}/_compression.py",
233 "${libdir}/python${PYTHON_MAJMIN}/_markupbase.py", 195 "${libdir}/python${PYTHON_MAJMIN}/_markupbase.py",
196 "${libdir}/python${PYTHON_MAJMIN}/_opcode_metadata.py",
197 "${libdir}/python${PYTHON_MAJMIN}/_pyrepl",
198 "${libdir}/python${PYTHON_MAJMIN}/_pyrepl/pager.py",
234 "${libdir}/python${PYTHON_MAJMIN}/_sitebuiltins.py", 199 "${libdir}/python${PYTHON_MAJMIN}/_sitebuiltins.py",
235 "${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py", 200 "${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py",
236 "${libdir}/python${PYTHON_MAJMIN}/_weakrefset.py", 201 "${libdir}/python${PYTHON_MAJMIN}/_weakrefset.py",
@@ -261,6 +226,7 @@
261 "${libdir}/python${PYTHON_MAJMIN}/genericpath.py", 226 "${libdir}/python${PYTHON_MAJMIN}/genericpath.py",
262 "${libdir}/python${PYTHON_MAJMIN}/getopt.py", 227 "${libdir}/python${PYTHON_MAJMIN}/getopt.py",
263 "${libdir}/python${PYTHON_MAJMIN}/gettext.py", 228 "${libdir}/python${PYTHON_MAJMIN}/gettext.py",
229 "${libdir}/python${PYTHON_MAJMIN}/glob.py",
264 "${libdir}/python${PYTHON_MAJMIN}/heapq.py", 230 "${libdir}/python${PYTHON_MAJMIN}/heapq.py",
265 "${libdir}/python${PYTHON_MAJMIN}/imp.py", 231 "${libdir}/python${PYTHON_MAJMIN}/imp.py",
266 "${libdir}/python${PYTHON_MAJMIN}/importlib", 232 "${libdir}/python${PYTHON_MAJMIN}/importlib",
@@ -289,6 +255,7 @@
289 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_typing.*.so", 255 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_typing.*.so",
290 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/array.*.so", 256 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/array.*.so",
291 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/binascii.*.so", 257 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/binascii.*.so",
258 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/fcntl.*.so",
292 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/grp.*.so", 259 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/grp.*.so",
293 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/math.*.so", 260 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/math.*.so",
294 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/parser.*.so", 261 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/parser.*.so",
@@ -307,7 +274,10 @@
307 "${libdir}/python${PYTHON_MAJMIN}/operator.py", 274 "${libdir}/python${PYTHON_MAJMIN}/operator.py",
308 "${libdir}/python${PYTHON_MAJMIN}/optparse.py", 275 "${libdir}/python${PYTHON_MAJMIN}/optparse.py",
309 "${libdir}/python${PYTHON_MAJMIN}/os.py", 276 "${libdir}/python${PYTHON_MAJMIN}/os.py",
277 "${libdir}/python${PYTHON_MAJMIN}/pathlib",
310 "${libdir}/python${PYTHON_MAJMIN}/pathlib.py", 278 "${libdir}/python${PYTHON_MAJMIN}/pathlib.py",
279 "${libdir}/python${PYTHON_MAJMIN}/pathlib/_abc.py",
280 "${libdir}/python${PYTHON_MAJMIN}/pathlib/_local.py",
311 "${libdir}/python${PYTHON_MAJMIN}/pkgutil.py", 281 "${libdir}/python${PYTHON_MAJMIN}/pkgutil.py",
312 "${libdir}/python${PYTHON_MAJMIN}/platform.py", 282 "${libdir}/python${PYTHON_MAJMIN}/platform.py",
313 "${libdir}/python${PYTHON_MAJMIN}/posixpath.py", 283 "${libdir}/python${PYTHON_MAJMIN}/posixpath.py",
@@ -332,6 +302,7 @@
332 "${libdir}/python${PYTHON_MAJMIN}/struct.py", 302 "${libdir}/python${PYTHON_MAJMIN}/struct.py",
333 "${libdir}/python${PYTHON_MAJMIN}/subprocess.py", 303 "${libdir}/python${PYTHON_MAJMIN}/subprocess.py",
334 "${libdir}/python${PYTHON_MAJMIN}/symbol.py", 304 "${libdir}/python${PYTHON_MAJMIN}/symbol.py",
305 "${libdir}/python${PYTHON_MAJMIN}/sysconfig",
335 "${libdir}/python${PYTHON_MAJMIN}/sysconfig.py", 306 "${libdir}/python${PYTHON_MAJMIN}/sysconfig.py",
336 "${libdir}/python${PYTHON_MAJMIN}/textwrap.py", 307 "${libdir}/python${PYTHON_MAJMIN}/textwrap.py",
337 "${libdir}/python${PYTHON_MAJMIN}/threading.py", 308 "${libdir}/python${PYTHON_MAJMIN}/threading.py",
@@ -351,8 +322,10 @@
351 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/__future__.*.pyc", 322 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/__future__.*.pyc",
352 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_bootlocale.*.pyc", 323 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_bootlocale.*.pyc",
353 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_collections_abc.*.pyc", 324 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_collections_abc.*.pyc",
325 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_colorize.*.pyc",
354 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_compression.*.pyc", 326 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_compression.*.pyc",
355 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_markupbase.*.pyc", 327 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_markupbase.*.pyc",
328 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_opcode_metadata.*.pyc",
356 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sitebuiltins.*.pyc", 329 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sitebuiltins.*.pyc",
357 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sysconfigdata*.*.pyc", 330 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sysconfigdata*.*.pyc",
358 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_weakrefset.*.pyc", 331 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_weakrefset.*.pyc",
@@ -377,6 +350,7 @@
377 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/genericpath.*.pyc", 350 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/genericpath.*.pyc",
378 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/getopt.*.pyc", 351 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/getopt.*.pyc",
379 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/gettext.*.pyc", 352 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/gettext.*.pyc",
353 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/glob.*.pyc",
380 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/heapq.*.pyc", 354 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/heapq.*.pyc",
381 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/imp.*.pyc", 355 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/imp.*.pyc",
382 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/inspect.*.pyc", 356 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/inspect.*.pyc",
@@ -421,6 +395,8 @@
421 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/typing.*.pyc", 395 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/typing.*.pyc",
422 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/warnings.*.pyc", 396 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/warnings.*.pyc",
423 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/weakref.*.pyc", 397 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/weakref.*.pyc",
398 "${libdir}/python${PYTHON_MAJMIN}/_pyrepl/__pycache__",
399 "${libdir}/python${PYTHON_MAJMIN}/_pyrepl/__pycache__/pager.*.pyc",
424 "${libdir}/python${PYTHON_MAJMIN}/collections/__pycache__", 400 "${libdir}/python${PYTHON_MAJMIN}/collections/__pycache__",
425 "${libdir}/python${PYTHON_MAJMIN}/collections/__pycache__/abc.*.pyc", 401 "${libdir}/python${PYTHON_MAJMIN}/collections/__pycache__/abc.*.pyc",
426 "${libdir}/python${PYTHON_MAJMIN}/encodings/__pycache__", 402 "${libdir}/python${PYTHON_MAJMIN}/encodings/__pycache__",
@@ -432,11 +408,15 @@
432 "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/abc.*.pyc", 408 "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/abc.*.pyc",
433 "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/machinery.*.pyc", 409 "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/machinery.*.pyc",
434 "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/util.*.pyc", 410 "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/util.*.pyc",
411 "${libdir}/python${PYTHON_MAJMIN}/pathlib/__pycache__",
412 "${libdir}/python${PYTHON_MAJMIN}/pathlib/__pycache__/_abc.*.pyc",
413 "${libdir}/python${PYTHON_MAJMIN}/pathlib/__pycache__/_local.*.pyc",
435 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__", 414 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__",
436 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__/_casefix.*.pyc", 415 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__/_casefix.*.pyc",
437 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__/_compiler.*.pyc", 416 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__/_compiler.*.pyc",
438 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__/_constants.*.pyc", 417 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__/_constants.*.pyc",
439 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__/_parser.*.pyc", 418 "${libdir}/python${PYTHON_MAJMIN}/re/__pycache__/_parser.*.pyc",
419 "${libdir}/python${PYTHON_MAJMIN}/sysconfig/__pycache__",
440 "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__", 420 "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__",
441 "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__/parse.*.pyc" 421 "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__/parse.*.pyc"
442 ] 422 ]
@@ -444,15 +424,11 @@
444 "crypt": { 424 "crypt": {
445 "summary": "Python basic cryptographic and hashing support", 425 "summary": "Python basic cryptographic and hashing support",
446 "rdepends": [ 426 "rdepends": [
447 "core", 427 "core"
448 "math",
449 "stringold"
450 ], 428 ],
451 "files": [ 429 "files": [
452 "${libdir}/python${PYTHON_MAJMIN}/crypt.py",
453 "${libdir}/python${PYTHON_MAJMIN}/hashlib.py", 430 "${libdir}/python${PYTHON_MAJMIN}/hashlib.py",
454 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_blake2.*.so", 431 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_blake2.*.so",
455 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_crypt.*.so",
456 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_hashlib.*.so", 432 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_hashlib.*.so",
457 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_md5.*.so", 433 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_md5.*.so",
458 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha1.*.so", 434 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha1.*.so",
@@ -460,7 +436,6 @@
460 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha3.*.so" 436 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha3.*.so"
461 ], 437 ],
462 "cached": [ 438 "cached": [
463 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/crypt.*.pyc",
464 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/hashlib.*.pyc" 439 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/hashlib.*.pyc"
465 ] 440 ]
466 }, 441 },
@@ -468,7 +443,6 @@
468 "summary": "Python C types support", 443 "summary": "Python C types support",
469 "rdepends": [ 444 "rdepends": [
470 "core", 445 "core",
471 "crypt",
472 "io", 446 "io",
473 "math" 447 "math"
474 ], 448 ],
@@ -590,7 +564,6 @@
590 "summary": "Python email support", 564 "summary": "Python email support",
591 "rdepends": [ 565 "rdepends": [
592 "core", 566 "core",
593 "crypt",
594 "datetime", 567 "datetime",
595 "io", 568 "io",
596 "math", 569 "math",
@@ -663,36 +636,30 @@
663 "core" 636 "core"
664 ], 637 ],
665 "files": [ 638 "files": [
666 "${libdir}/python${PYTHON_MAJMIN}/colorsys.py", 639 "${libdir}/python${PYTHON_MAJMIN}/colorsys.py"
667 "${libdir}/python${PYTHON_MAJMIN}/imghdr.py"
668 ], 640 ],
669 "cached": [ 641 "cached": [
670 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/colorsys.*.pyc", 642 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/colorsys.*.pyc"
671 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/imghdr.*.pyc"
672 ] 643 ]
673 }, 644 },
674 "io": { 645 "io": {
675 "summary": "Python low-level I/O", 646 "summary": "Python low-level I/O",
676 "rdepends": [ 647 "rdepends": [
677 "core", 648 "core",
678 "crypt",
679 "math", 649 "math",
680 "netclient", 650 "netclient"
681 "shell"
682 ], 651 ],
683 "files": [ 652 "files": [
684 "${libdir}/python${PYTHON_MAJMIN}/_pyio.py", 653 "${libdir}/python${PYTHON_MAJMIN}/_pyio.py",
685 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_socket.*.so", 654 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_socket.*.so",
686 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_ssl.*.so", 655 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_ssl.*.so",
687 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/termios.*.so", 656 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/termios.*.so",
688 "${libdir}/python${PYTHON_MAJMIN}/pipes.py",
689 "${libdir}/python${PYTHON_MAJMIN}/socket.py", 657 "${libdir}/python${PYTHON_MAJMIN}/socket.py",
690 "${libdir}/python${PYTHON_MAJMIN}/ssl.py", 658 "${libdir}/python${PYTHON_MAJMIN}/ssl.py",
691 "${libdir}/python${PYTHON_MAJMIN}/tempfile.py" 659 "${libdir}/python${PYTHON_MAJMIN}/tempfile.py"
692 ], 660 ],
693 "cached": [ 661 "cached": [
694 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_pyio.*.pyc", 662 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_pyio.*.pyc",
695 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pipes.*.pyc",
696 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/socket.*.pyc", 663 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/socket.*.pyc",
697 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ssl.*.pyc", 664 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ssl.*.pyc",
698 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/tempfile.*.pyc" 665 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/tempfile.*.pyc"
@@ -728,7 +695,6 @@
728 "summary": "Python mailbox format support", 695 "summary": "Python mailbox format support",
729 "rdepends": [ 696 "rdepends": [
730 "core", 697 "core",
731 "crypt",
732 "datetime", 698 "datetime",
733 "email", 699 "email",
734 "io", 700 "io",
@@ -747,8 +713,7 @@
747 "math": { 713 "math": {
748 "summary": "Python math support", 714 "summary": "Python math support",
749 "rdepends": [ 715 "rdepends": [
750 "core", 716 "core"
751 "crypt"
752 ], 717 ],
753 "files": [ 718 "files": [
754 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_random.*.so", 719 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_random.*.so",
@@ -765,12 +730,10 @@
765 "core" 730 "core"
766 ], 731 ],
767 "files": [ 732 "files": [
768 "${libdir}/python${PYTHON_MAJMIN}/quopri.py", 733 "${libdir}/python${PYTHON_MAJMIN}/quopri.py"
769 "${libdir}/python${PYTHON_MAJMIN}/uu.py"
770 ], 734 ],
771 "cached": [ 735 "cached": [
772 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/quopri.*.pyc", 736 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/quopri.*.pyc"
773 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/uu.*.pyc"
774 ] 737 ]
775 }, 738 },
776 "mmap": { 739 "mmap": {
@@ -787,7 +750,6 @@
787 "cached": [], 750 "cached": [],
788 "files": [], 751 "files": [],
789 "rdepends": [ 752 "rdepends": [
790 "2to3",
791 "asyncio", 753 "asyncio",
792 "audio", 754 "audio",
793 "codecs", 755 "codecs",
@@ -884,11 +846,9 @@
884 "${libdir}/python${PYTHON_MAJMIN}/http/__pycache__", 846 "${libdir}/python${PYTHON_MAJMIN}/http/__pycache__",
885 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_uuid.*.so", 847 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_uuid.*.so",
886 "${libdir}/python${PYTHON_MAJMIN}/mimetypes.py", 848 "${libdir}/python${PYTHON_MAJMIN}/mimetypes.py",
887 "${libdir}/python${PYTHON_MAJMIN}/nntplib.py",
888 "${libdir}/python${PYTHON_MAJMIN}/poplib.py", 849 "${libdir}/python${PYTHON_MAJMIN}/poplib.py",
889 "${libdir}/python${PYTHON_MAJMIN}/secrets.py", 850 "${libdir}/python${PYTHON_MAJMIN}/secrets.py",
890 "${libdir}/python${PYTHON_MAJMIN}/smtplib.py", 851 "${libdir}/python${PYTHON_MAJMIN}/smtplib.py",
891 "${libdir}/python${PYTHON_MAJMIN}/telnetlib.py",
892 "${libdir}/python${PYTHON_MAJMIN}/urllib", 852 "${libdir}/python${PYTHON_MAJMIN}/urllib",
893 "${libdir}/python${PYTHON_MAJMIN}/uuid.py" 853 "${libdir}/python${PYTHON_MAJMIN}/uuid.py"
894 ], 854 ],
@@ -897,11 +857,9 @@
897 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ftplib.*.pyc", 857 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ftplib.*.pyc",
898 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/hmac.*.pyc", 858 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/hmac.*.pyc",
899 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/mimetypes.*.pyc", 859 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/mimetypes.*.pyc",
900 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/nntplib.*.pyc",
901 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/poplib.*.pyc", 860 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/poplib.*.pyc",
902 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/secrets.*.pyc", 861 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/secrets.*.pyc",
903 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/smtplib.*.pyc", 862 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/smtplib.*.pyc",
904 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/telnetlib.*.pyc",
905 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/uuid.*.pyc" 863 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/uuid.*.pyc"
906 ] 864 ]
907 }, 865 },
@@ -909,22 +867,12 @@
909 "summary": "Python Internet Protocol servers", 867 "summary": "Python Internet Protocol servers",
910 "rdepends": [ 868 "rdepends": [
911 "core", 869 "core",
912 "crypt", 870 "io"
913 "datetime",
914 "email",
915 "html",
916 "io",
917 "math",
918 "mime",
919 "netclient",
920 "stringold"
921 ], 871 ],
922 "files": [ 872 "files": [
923 "${libdir}/python${PYTHON_MAJMIN}/cgi.py",
924 "${libdir}/python${PYTHON_MAJMIN}/socketserver.py" 873 "${libdir}/python${PYTHON_MAJMIN}/socketserver.py"
925 ], 874 ],
926 "cached": [ 875 "cached": [
927 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/cgi.*.pyc",
928 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/socketserver.*.pyc" 876 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/socketserver.*.pyc"
929 ] 877 ]
930 }, 878 },
@@ -1052,12 +1000,10 @@
1052 ], 1000 ],
1053 "files": [ 1001 "files": [
1054 "${libdir}/python${PYTHON_MAJMIN}/cmd.py", 1002 "${libdir}/python${PYTHON_MAJMIN}/cmd.py",
1055 "${libdir}/python${PYTHON_MAJMIN}/glob.py",
1056 "${libdir}/python${PYTHON_MAJMIN}/shlex.py" 1003 "${libdir}/python${PYTHON_MAJMIN}/shlex.py"
1057 ], 1004 ],
1058 "cached": [ 1005 "cached": [
1059 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/cmd.*.pyc", 1006 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/cmd.*.pyc",
1060 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/glob.*.pyc",
1061 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shlex.*.pyc" 1007 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shlex.*.pyc"
1062 ] 1008 ]
1063 }, 1009 },
@@ -1077,7 +1023,6 @@
1077 "summary": "Basic statistics module", 1023 "summary": "Basic statistics module",
1078 "rdepends": [ 1024 "rdepends": [
1079 "core", 1025 "core",
1080 "crypt",
1081 "math", 1026 "math",
1082 "numbers" 1027 "numbers"
1083 ], 1028 ],
@@ -1147,7 +1092,6 @@
1147 "core" 1092 "core"
1148 ], 1093 ],
1149 "files": [ 1094 "files": [
1150 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_tkinter.*.so",
1151 "${libdir}/python${PYTHON_MAJMIN}/tkinter" 1095 "${libdir}/python${PYTHON_MAJMIN}/tkinter"
1152 ], 1096 ],
1153 "cached": [] 1097 "cached": []
@@ -1162,18 +1106,6 @@
1162 ], 1106 ],
1163 "cached": [] 1107 "cached": []
1164 }, 1108 },
1165 "turtle": {
1166 "summary": "Turtle graphics is a popular way for introducing programming to kids.",
1167 "rdepends": [
1168 "tkinter"
1169 ],
1170 "files": [
1171 "${libdir}/python${PYTHON_MAJMIN}/turtle.py"
1172 ],
1173 "cached": [
1174 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/turtle.*.pyc"
1175 ]
1176 },
1177 "unittest": { 1109 "unittest": {
1178 "summary": "Python unit testing framework", 1110 "summary": "Python unit testing framework",
1179 "rdepends": [ 1111 "rdepends": [
@@ -1201,8 +1133,7 @@
1201 "io" 1133 "io"
1202 ], 1134 ],
1203 "files": [ 1135 "files": [
1204 "${libdir}/python${PYTHON_MAJMIN}/getpass.py", 1136 "${libdir}/python${PYTHON_MAJMIN}/getpass.py"
1205 "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/nis.*.so"
1206 ], 1137 ],
1207 "cached": [ 1138 "cached": [
1208 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/getpass.*.pyc" 1139 "${libdir}/python${PYTHON_MAJMIN}/__pycache__/getpass.*.pyc"
@@ -1238,12 +1169,10 @@
1238 "rdepends": [ 1169 "rdepends": [
1239 "compression", 1170 "compression",
1240 "core", 1171 "core",
1241 "crypt",
1242 "datetime", 1172 "datetime",
1243 "email", 1173 "email",
1244 "html", 1174 "html",
1245 "io", 1175 "io",
1246 "math",
1247 "mime", 1176 "mime",
1248 "netclient", 1177 "netclient",
1249 "netserver", 1178 "netserver",
diff --git a/meta/recipes-devtools/python/python3_3.12.6.bb b/meta/recipes-devtools/python/python3_3.13.0.bb
index 858124d104..54742f5257 100644
--- a/meta/recipes-devtools/python/python3_3.12.6.bb
+++ b/meta/recipes-devtools/python/python3_3.13.0.bb
@@ -4,7 +4,7 @@ DESCRIPTION = "Python is a programming language that lets you work more quickly
4LICENSE = "PSF-2.0" 4LICENSE = "PSF-2.0"
5SECTION = "devel/python" 5SECTION = "devel/python"
6 6
7LIC_FILES_CHKSUM = "file://LICENSE;md5=fcf6b249c2641540219a727f35d8d2c2" 7LIC_FILES_CHKSUM = "file://LICENSE;md5=3f64a4ff490f884d562feb77bf2435f1"
8 8
9SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \ 9SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
10 file://run-ptest \ 10 file://run-ptest \
@@ -13,12 +13,9 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
13 file://python3-manifest.json \ 13 file://python3-manifest.json \
14 file://check_build_completeness.py \ 14 file://check_build_completeness.py \
15 file://reformat_sysconfig.py \ 15 file://reformat_sysconfig.py \
16 file://cgi_py.patch \
17 file://0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch \ 16 file://0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch \
18 file://0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch \
19 file://crosspythonpath.patch \ 17 file://crosspythonpath.patch \
20 file://0001-test_locale.py-correct-the-test-output-format.patch \ 18 file://0001-test_locale.py-correct-the-test-output-format.patch \
21 file://0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch \
22 file://0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch \ 19 file://0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch \
23 file://0001-test_ctypes.test_find-skip-without-tools-sdk.patch \ 20 file://0001-test_ctypes.test_find-skip-without-tools-sdk.patch \
24 file://makerace.patch \ 21 file://makerace.patch \
@@ -30,17 +27,17 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
30 file://0001-skip-no_stdout_fileno-test-due-to-load-variability.patch \ 27 file://0001-skip-no_stdout_fileno-test-due-to-load-variability.patch \
31 file://0001-test_storlines-skip-due-to-load-variability.patch \ 28 file://0001-test_storlines-skip-due-to-load-variability.patch \
32 file://0001-test_shutdown-skip-problematic-test.patch \ 29 file://0001-test_shutdown-skip-problematic-test.patch \
33 file://0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch \ 30 file://0001-test_deadlock-skip-problematic-test.patch \
34 file://0001-test_deadlock-skip-problematic-test.patch \ 31 file://0001-test_active_children-skip-problematic-test.patch \
35 file://0001-test_active_children-skip-problematic-test.patch \
36 file://0001-test_readline-skip-limited-history-test.patch \ 32 file://0001-test_readline-skip-limited-history-test.patch \
33 file://fix-armv5.patch \
37 " 34 "
38 35
39SRC_URI:append:class-native = " \ 36SRC_URI:append:class-native = " \
40 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 \
41 " 38 "
42 39
43SRC_URI[sha256sum] = "1999658298cf2fb837dffed8ff3c033ef0c98ef20cf73c5d5f66bed5ab89697c" 40SRC_URI[sha256sum] = "086de5882e3cb310d4dca48457522e2e48018ecd43da9cdf827f6a0759efb07d"
44 41
45# exclude pre-releases for both python 2.x and 3.x 42# exclude pre-releases for both python 2.x and 3.x
46UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar" 43UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar"
@@ -55,7 +52,7 @@ CVE_STATUS[CVE-2022-26488] = "not-applicable-platform: Issue only applies on Win
55CVE_STATUS[CVE-2015-20107] = "upstream-wontfix: The mailcap module is insecure by design, so this can't be fixed in a meaningful way" 52CVE_STATUS[CVE-2015-20107] = "upstream-wontfix: The mailcap module is insecure by design, so this can't be fixed in a meaningful way"
56CVE_STATUS[CVE-2023-36632] = "disputed: Not an issue, in fact expected behaviour" 53CVE_STATUS[CVE-2023-36632] = "disputed: Not an issue, in fact expected behaviour"
57 54
58PYTHON_MAJMIN = "3.12" 55PYTHON_MAJMIN = "3.13"
59 56
60S = "${WORKDIR}/Python-${PV}" 57S = "${WORKDIR}/Python-${PV}"
61 58
@@ -91,6 +88,10 @@ CACHED_CONFIGUREVARS = " \
91 ac_cv_file__dev_ptc=no \ 88 ac_cv_file__dev_ptc=no \
92 ac_cv_working_tzset=yes \ 89 ac_cv_working_tzset=yes \
93" 90"
91CACHED_CONFIGUREVARS:append:class-target = " \
92 ac_cv_libatomic_needed=yes \
93"
94
94# set thread stack size to 2MB on musl for interpreter and stdlib C extensions 95# set thread stack size to 2MB on musl for interpreter and stdlib C extensions
95# so it does not run into stack limits due to musl's small thread stack 96# so it does not run into stack limits due to musl's small thread stack
96# This is only needed to build interpreter and not the subsequent modules 97# This is only needed to build interpreter and not the subsequent modules
@@ -384,6 +385,7 @@ python(){
384 # Prepending so to avoid python-misc getting everything 385 # Prepending so to avoid python-misc getting everything
385 packages = newpackages + packages 386 packages = newpackages + packages
386 d.setVar('PACKAGES', ' '.join(packages)) 387 d.setVar('PACKAGES', ' '.join(packages))
388 d.setVar('ALLOW_EMPTY:${PN}-fcntl', '1')
387 d.setVar('ALLOW_EMPTY:${PN}-modules', '1') 389 d.setVar('ALLOW_EMPTY:${PN}-modules', '1')
388 d.setVar('ALLOW_EMPTY:${PN}-pkgutil', '1') 390 d.setVar('ALLOW_EMPTY:${PN}-pkgutil', '1')
389 391
@@ -403,6 +405,8 @@ do_create_manifest() {
403 # be present, we must ensure it is. 405 # be present, we must ensure it is.
404 406
405 cp ${UNPACKDIR}/create_manifest3.py ${WORKDIR} 407 cp ${UNPACKDIR}/create_manifest3.py ${WORKDIR}
408 cp ${UNPACKDIR}/python3-manifest.json ${WORKDIR}
409 cp ${UNPACKDIR}/get_module_deps3.py ${WORKDIR}
406 cd ${WORKDIR} 410 cd ${WORKDIR}
407 # This needs to be executed by python-native and NOT by HOST's python 411 # This needs to be executed by python-native and NOT by HOST's python
408 nativepython3 create_manifest3.py ${PYTHON_MAJMIN} 412 nativepython3 create_manifest3.py ${PYTHON_MAJMIN}
@@ -458,7 +462,7 @@ FILES:${PN}-man = "${datadir}/man"
458# See https://bugs.python.org/issue18748 and https://bugs.python.org/issue37395 462# See https://bugs.python.org/issue18748 and https://bugs.python.org/issue37395
459RDEPENDS:libpython3:append:libc-glibc = " libgcc" 463RDEPENDS:libpython3:append:libc-glibc = " libgcc"
460RDEPENDS:${PN}-ctypes:append:libc-glibc = " ${MLPREFIX}ldconfig" 464RDEPENDS:${PN}-ctypes:append:libc-glibc = " ${MLPREFIX}ldconfig"
461RDEPENDS:${PN}-ptest = "${PN}-modules ${PN}-tests ${PN}-dev ${PN}-cgitb ${PN}-zipapp unzip bzip2 libgcc tzdata coreutils sed gcc g++ binutils \ 465RDEPENDS:${PN}-ptest = "${PN}-modules ${PN}-tests ${PN}-dev ${PN}-zipapp unzip bzip2 libgcc tzdata coreutils sed gcc g++ binutils \
462 locale-base-fr-fr locale-base-en-us locale-base-de-de" 466 locale-base-fr-fr locale-base-en-us locale-base-de-de"
463RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-tr-tr" 467RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-tr-tr"
464RDEPENDS:${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${MLPREFIX}tk ${MLPREFIX}tk-lib', '', d)}" 468RDEPENDS:${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${MLPREFIX}tk ${MLPREFIX}tk-lib', '', d)}"