diff --git a/plugins/python-build/share/python-build/3.10.21 b/plugins/python-build/share/python-build/3.10.21 new file mode 100644 index 00000000..199e42cf --- /dev/null +++ b/plugins/python-build/share/python-build/3.10.21 @@ -0,0 +1,9 @@ +prefer_openssl3 +export PYTHON_BUILD_CONFIGURE_WITH_OPENSSL=1 +install_package "openssl-3.6.3" "https://github.com/openssl/openssl/releases/download/openssl-3.6.3/openssl-3.6.3.tar.gz#243a86649cf6f23eeb6a2ff2456e09e5d77dd9018a54d3d96b0c6bdd6ba6c7f1" mac_openssl --if has_broken_mac_openssl +install_package "readline-8.3" "https://ftpmirror.gnu.org/readline/readline-8.3.tar.gz#fe5383204467828cd495ee8d1d3c037a7eba1389c22bc6a041f627976f9061cc" mac_readline --if has_broken_mac_readline +if has_tar_xz_support; then + install_package "Python-3.10.21" "https://www.python.org/ftp/python/3.10.21/Python-3.10.21.tar.xz#a0da1e72132e950154eca0f6f47d5db828454700de20e5113667940d81e0db04" standard verify_py310 copy_python_gdb ensurepip +else + install_package "Python-3.10.21" "https://www.python.org/ftp/python/3.10.21/Python-3.10.21.tgz#f276987f06270ae6c1fb4da620bd105edf78c31368c2f7e85e6c1d51c560b04b" standard verify_py310 copy_python_gdb ensurepip +fi diff --git a/plugins/python-build/share/python-build/3.11.16 b/plugins/python-build/share/python-build/3.11.16 new file mode 100644 index 00000000..4196a7bc --- /dev/null +++ b/plugins/python-build/share/python-build/3.11.16 @@ -0,0 +1,11 @@ +prefer_openssl3 +export PYTHON_BUILD_CONFIGURE_WITH_OPENSSL=1 +export PYTHON_BUILD_CONFIGURE_WITH_OPENSSL_RPATH=1 +export PYTHON_BUILD_TCLTK_USE_PKGCONFIG=1 +install_package "openssl-3.6.3" "https://github.com/openssl/openssl/releases/download/openssl-3.6.3/openssl-3.6.3.tar.gz#243a86649cf6f23eeb6a2ff2456e09e5d77dd9018a54d3d96b0c6bdd6ba6c7f1" mac_openssl --if has_broken_mac_openssl +install_package "readline-8.3" "https://ftpmirror.gnu.org/readline/readline-8.3.tar.gz#fe5383204467828cd495ee8d1d3c037a7eba1389c22bc6a041f627976f9061cc" mac_readline --if has_broken_mac_readline +if has_tar_xz_support; then + install_package "Python-3.11.16" "https://www.python.org/ftp/python/3.11.16/Python-3.11.16.tar.xz#91bcdebfdde239a003ae93738a7fce0f9230fee5c4bc2b86f6e6e8c6f98aabe8" standard verify_py311 copy_python_gdb ensurepip +else + install_package "Python-3.11.16" "https://www.python.org/ftp/python/3.11.16/Python-3.11.16.tgz#6c0bd76ab0ec7d94ed400b1497f01ac6c7751c8822615ee0855a3eb2d893ea76" standard verify_py311 copy_python_gdb ensurepip +fi diff --git a/plugins/python-build/share/python-build/3.12.14 b/plugins/python-build/share/python-build/3.12.14 new file mode 100644 index 00000000..bbab3f3b --- /dev/null +++ b/plugins/python-build/share/python-build/3.12.14 @@ -0,0 +1,11 @@ +prefer_openssl3 +export PYTHON_BUILD_CONFIGURE_WITH_OPENSSL=1 +export PYTHON_BUILD_CONFIGURE_WITH_OPENSSL_RPATH=1 +export PYTHON_BUILD_TCLTK_USE_PKGCONFIG=1 +install_package "openssl-3.6.3" "https://github.com/openssl/openssl/releases/download/openssl-3.6.3/openssl-3.6.3.tar.gz#243a86649cf6f23eeb6a2ff2456e09e5d77dd9018a54d3d96b0c6bdd6ba6c7f1" mac_openssl --if has_broken_mac_openssl +install_package "readline-8.3" "https://ftpmirror.gnu.org/readline/readline-8.3.tar.gz#fe5383204467828cd495ee8d1d3c037a7eba1389c22bc6a041f627976f9061cc" mac_readline --if has_broken_mac_readline +if has_tar_xz_support; then + install_package "Python-3.12.14" "https://www.python.org/ftp/python/3.12.14/Python-3.12.14.tar.xz#5c8462af5790baf43a321a1559dbe0db06d1be4300fb85fb53c40060668e548a" standard verify_py312 copy_python_gdb ensurepip +else + install_package "Python-3.12.14" "https://www.python.org/ftp/python/3.12.14/Python-3.12.14.tgz#6c6df908d2c3fd24e6d76869e92542abd0f33aec9dfc18df8875f89660286d43" standard verify_py312 copy_python_gdb ensurepip +fi diff --git a/plugins/python-build/share/python-build/patches/3.10.20/Python-3.10.20/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch b/plugins/python-build/share/python-build/patches/3.10.20/Python-3.10.20/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch new file mode 100644 index 00000000..6da534e2 --- /dev/null +++ b/plugins/python-build/share/python-build/patches/3.10.20/Python-3.10.20/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch @@ -0,0 +1,27 @@ +From 3fec519d6b326918f39ceb142ef762042ce8365f Mon Sep 17 00:00:00 2001 +From: Ivan Pozdeev +Date: Fri, 26 Dec 2025 13:39:21 +0300 +Subject: [PATCH] Recognize an argument to -j in MAKEFLAGS + +--- + setup.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/setup.py b/setup.py +index ad8fb81b218..5666deaf67b 100644 +--- a/setup.py ++++ b/setup.py +@@ -307,8 +307,8 @@ def __init__(self, dist): + self.failed_on_import = [] + self.missing = [] + self.disabled_configure = [] +- if '-j' in os.environ.get('MAKEFLAGS', ''): +- self.parallel = True ++ if (m:=re.search(r'(?:^|\s)(?:-j|--jobs)(?:\s+|=)?(\d*)',os.environ.get('MAKEFLAGS', ''))) is not None: ++ self.parallel = int(m.group(1)) if m.group(1) else True + + def add(self, ext): + self.extensions.append(ext) +-- +2.36.1.windows.1 + diff --git a/plugins/python-build/share/python-build/patches/3.10.21/Python-3.10.21/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch b/plugins/python-build/share/python-build/patches/3.10.21/Python-3.10.21/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch new file mode 100644 index 00000000..6da534e2 --- /dev/null +++ b/plugins/python-build/share/python-build/patches/3.10.21/Python-3.10.21/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch @@ -0,0 +1,27 @@ +From 3fec519d6b326918f39ceb142ef762042ce8365f Mon Sep 17 00:00:00 2001 +From: Ivan Pozdeev +Date: Fri, 26 Dec 2025 13:39:21 +0300 +Subject: [PATCH] Recognize an argument to -j in MAKEFLAGS + +--- + setup.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/setup.py b/setup.py +index ad8fb81b218..5666deaf67b 100644 +--- a/setup.py ++++ b/setup.py +@@ -307,8 +307,8 @@ def __init__(self, dist): + self.failed_on_import = [] + self.missing = [] + self.disabled_configure = [] +- if '-j' in os.environ.get('MAKEFLAGS', ''): +- self.parallel = True ++ if (m:=re.search(r'(?:^|\s)(?:-j|--jobs)(?:\s+|=)?(\d*)',os.environ.get('MAKEFLAGS', ''))) is not None: ++ self.parallel = int(m.group(1)) if m.group(1) else True + + def add(self, ext): + self.extensions.append(ext) +-- +2.36.1.windows.1 + diff --git a/plugins/python-build/share/python-build/patches/3.11.16/Python-3.11.16/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch b/plugins/python-build/share/python-build/patches/3.11.16/Python-3.11.16/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch new file mode 100644 index 00000000..6da534e2 --- /dev/null +++ b/plugins/python-build/share/python-build/patches/3.11.16/Python-3.11.16/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch @@ -0,0 +1,27 @@ +From 3fec519d6b326918f39ceb142ef762042ce8365f Mon Sep 17 00:00:00 2001 +From: Ivan Pozdeev +Date: Fri, 26 Dec 2025 13:39:21 +0300 +Subject: [PATCH] Recognize an argument to -j in MAKEFLAGS + +--- + setup.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/setup.py b/setup.py +index ad8fb81b218..5666deaf67b 100644 +--- a/setup.py ++++ b/setup.py +@@ -307,8 +307,8 @@ def __init__(self, dist): + self.failed_on_import = [] + self.missing = [] + self.disabled_configure = [] +- if '-j' in os.environ.get('MAKEFLAGS', ''): +- self.parallel = True ++ if (m:=re.search(r'(?:^|\s)(?:-j|--jobs)(?:\s+|=)?(\d*)',os.environ.get('MAKEFLAGS', ''))) is not None: ++ self.parallel = int(m.group(1)) if m.group(1) else True + + def add(self, ext): + self.extensions.append(ext) +-- +2.36.1.windows.1 + diff --git a/plugins/python-build/share/python-build/patches/3.11.16/Python-3.11.16/0002-gh-110459-Make-sure-with-openssl-rpath-works-on-macO.patch b/plugins/python-build/share/python-build/patches/3.11.16/Python-3.11.16/0002-gh-110459-Make-sure-with-openssl-rpath-works-on-macO.patch new file mode 100644 index 00000000..3997f914 --- /dev/null +++ b/plugins/python-build/share/python-build/patches/3.11.16/Python-3.11.16/0002-gh-110459-Make-sure-with-openssl-rpath-works-on-macO.patch @@ -0,0 +1,64 @@ +From cc13eabc7ce08accf49656e258ba500f74a1dae8 Mon Sep 17 00:00:00 2001 +From: Ronald Oussoren +Date: Thu, 28 Dec 2023 09:42:05 +0100 +Subject: [PATCH] gh-110459: Make sure --with-openssl-rpath works on macOS + (#113441) + +* gh-110459: Make sure --with-openssl-rpath works on macOS + +On macOS the `-rpath` linker flag is spelled differently +than on on platforms. +--- + .../macOS/2023-12-23-22-41-07.gh-issue-110459.NaMBJy.rst | 2 ++ + configure | 7 ++++++- + configure.ac | 7 ++++++- + 3 files changed, 14 insertions(+), 2 deletions(-) + create mode 100644 Misc/NEWS.d/next/macOS/2023-12-23-22-41-07.gh-issue-110459.NaMBJy.rst + +diff --git a/Misc/NEWS.d/next/macOS/2023-12-23-22-41-07.gh-issue-110459.NaMBJy.rst b/Misc/NEWS.d/next/macOS/2023-12-23-22-41-07.gh-issue-110459.NaMBJy.rst +new file mode 100644 +index 00000000000..44ffd857785 +--- /dev/null ++++ b/Misc/NEWS.d/next/macOS/2023-12-23-22-41-07.gh-issue-110459.NaMBJy.rst +@@ -0,0 +1,2 @@ ++Running ``configure ... --with-openssl-rpath=X/Y/Z`` no longer fails to detect ++OpenSSL on macOS. +diff --git a/configure b/configure +index 7e50abc29d0..6d65d3abc18 100755 +--- a/configure ++++ b/configure +@@ -27478,7 +27478,12 @@ then : + + else $as_nop + +- rpath_arg="-Wl,-rpath=" ++ if test "$ac_sys_system" = "Darwin" ++ then ++ rpath_arg="-Wl,-rpath," ++ else ++ rpath_arg="-Wl,-rpath=" ++ fi + + fi + +diff --git a/configure.ac b/configure.ac +index e064848af9e..bfdabc4474e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -6808,7 +6808,12 @@ AX_CHECK_OPENSSL([have_openssl=yes],[have_openssl=no]) + AS_VAR_IF([GNULD], [yes], [ + rpath_arg="-Wl,--enable-new-dtags,-rpath=" + ], [ +- rpath_arg="-Wl,-rpath=" ++ if test "$ac_sys_system" = "Darwin" ++ then ++ rpath_arg="-Wl,-rpath," ++ else ++ rpath_arg="-Wl,-rpath=" ++ fi + ]) + + AC_MSG_CHECKING([for --with-openssl-rpath]) +-- +2.46.2.windows.1 +