mirror of
https://github.com/pyenv/pyenv.git
synced 2026-10-02 23:41:06 +09:00
Backport XCode 27 support to 3.13 (#3546)
* Upstream fix (3.13.15):e86913423b* Dependency patch (3.13.14):7d265b6013
This commit is contained in:
parent
8bd6b02444
commit
6c97017989
2
plugins/python-build/share/python-build/3.13.11t
Normal file
2
plugins/python-build/share/python-build/3.13.11t
Normal file
@ -0,0 +1,2 @@
|
||||
export PYTHON_BUILD_FREE_THREADING=1
|
||||
source "${BASH_SOURCE[0]%t}"
|
||||
@ -0,0 +1,105 @@
|
||||
From 8d6715d85ad670ddfc69dbfffc8c03ac2ce166eb Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 7cdd386c387..e85f3f0ea3d 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -17953,12 +17953,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18427,12 +18421,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19048,7 +19036,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19059,6 +19053,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 24e28a1e2de..25b0587ec12 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5088,7 +5088,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5098,7 +5098,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5126,7 +5126,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 0a97b1ca8dc1e5d689edbd87591962ba93c21db6 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index e85f3f0ea3d..3b63517ddfb 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19036,13 +19036,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19053,12 +19047,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19067,6 +19055,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 25b0587ec12..d4e233e24a6 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5126,7 +5126,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.0t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.0t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.0
|
||||
@ -0,0 +1,105 @@
|
||||
From 389f221839f2b21fb8ce5faa50f97d7d6592394c Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index ae70f02f70e..4c3965e3a62 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -17956,12 +17956,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18430,12 +18424,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19051,7 +19039,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19062,6 +19056,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index a764028e49f..1035134c48e 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5091,7 +5091,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5101,7 +5101,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5129,7 +5129,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 262ca735e924a4dfc93573c72a723c221a540aba Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 4c3965e3a62..b8ba6a16c81 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19039,13 +19039,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19056,12 +19050,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19070,6 +19058,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 1035134c48e..2b6f37482d3 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5129,7 +5129,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,105 @@
|
||||
From ab182dfdeff041b61fbd36c3c11433bfdfbcaa1e Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 901a26c9602..4ade7c21754 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18191,12 +18191,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18671,12 +18665,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19292,7 +19280,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19303,6 +19297,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 597a44b331a..6ffcb8694d4 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5217,7 +5217,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5227,7 +5227,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5255,7 +5255,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 1f505104c4c968b8f4478cf97c50ea2129e12a66 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 4ade7c21754..6fd245e4c3b 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19280,13 +19280,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19297,12 +19291,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19311,6 +19299,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6ffcb8694d4..f75d0ff02ba 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5255,7 +5255,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.10t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.10t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.10
|
||||
@ -0,0 +1,105 @@
|
||||
From dafe995d585cebef41da426be559e595134c5da9 Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 901a26c9602..4ade7c21754 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18191,12 +18191,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18671,12 +18665,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19292,7 +19280,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19303,6 +19297,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 597a44b331a..6ffcb8694d4 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5217,7 +5217,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5227,7 +5227,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5255,7 +5255,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From c76e73a290159e530499f89addff8e0befc8230d Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 4ade7c21754..6fd245e4c3b 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19280,13 +19280,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19297,12 +19291,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19311,6 +19299,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6ffcb8694d4..f75d0ff02ba 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5255,7 +5255,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.11t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.11t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.11
|
||||
@ -0,0 +1,105 @@
|
||||
From 91483b88e099ef9d4c2f3e1db1a370491120c93d Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 49b6795703a..95c9f306baa 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18191,12 +18191,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18671,12 +18665,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19292,7 +19280,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19303,6 +19297,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 94776540d1b..747c630c329 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5217,7 +5217,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5227,7 +5227,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5255,7 +5255,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 53b2f0d288f7f5b91c45da11aa9246ecab6b8f95 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 95c9f306baa..317191ae0f8 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19280,13 +19280,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19297,12 +19291,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19311,6 +19299,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 747c630c329..d3173900340 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5255,7 +5255,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.12t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.12t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.12
|
||||
@ -0,0 +1,105 @@
|
||||
From 211716524135a5c5b322540ec19ca4f5ae6abdbc Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 9ddb712b534..ff4eedd4df9 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18228,12 +18228,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18708,12 +18702,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19329,7 +19317,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19340,6 +19334,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index d9acfce793e..0c20b4f2dc0 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5220,7 +5220,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5230,7 +5230,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5258,7 +5258,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 2ffa77601e05d7c515edfb16ba6c2277675cb684 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index ff4eedd4df9..099b552e763 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19317,13 +19317,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19334,12 +19328,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19348,6 +19336,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 0c20b4f2dc0..3e792193278 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5258,7 +5258,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.13t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.13t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.13
|
||||
@ -0,0 +1,103 @@
|
||||
From 690e11097e2d313513a354ffbb0517866e201831 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 0df47513085..59d67626ad6 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19368,13 +19368,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19385,12 +19379,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19399,6 +19387,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index a016a439c6c..c4d1e59a5e3 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5280,7 +5280,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.14t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.14t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.14
|
||||
1
plugins/python-build/share/python-build/patches/3.13.1t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.1t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.1
|
||||
@ -0,0 +1,105 @@
|
||||
From 72c96d07c449da15ef88369a1b4ea9ac3a76b5b5 Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 1cd1f690f7b..8c6a9648485 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -17976,12 +17976,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18450,12 +18444,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19071,7 +19059,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19082,6 +19076,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 3fcb18922c5..09223e4d2f0 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5112,7 +5112,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5122,7 +5122,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5150,7 +5150,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 42d1ab9db0112d76647402436bfc69251b844536 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 8c6a9648485..3c4c3584a4a 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19059,13 +19059,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19076,12 +19070,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19090,6 +19078,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 09223e4d2f0..c48de4ecc12 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5150,7 +5150,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.2t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.2t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.2
|
||||
@ -0,0 +1,105 @@
|
||||
From dbadbc64aefb216fb54c5a751c6870976ad473d9 Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 1cd1f690f7b..8c6a9648485 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -17976,12 +17976,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18450,12 +18444,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19071,7 +19059,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19082,6 +19076,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 3fcb18922c5..09223e4d2f0 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5112,7 +5112,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5122,7 +5122,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5150,7 +5150,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From da3966ecc33d03d3cabacaa5af11fbf933c9d135 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 8c6a9648485..3c4c3584a4a 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19059,13 +19059,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19076,12 +19070,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19090,6 +19078,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 09223e4d2f0..c48de4ecc12 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5150,7 +5150,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.3t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.3t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.3
|
||||
@ -0,0 +1,105 @@
|
||||
From 7707acff006c594de6216d9c911017e7ca44a4c1 Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 1cd1f690f7b..8c6a9648485 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -17976,12 +17976,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18450,12 +18444,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19071,7 +19059,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19082,6 +19076,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 3fcb18922c5..09223e4d2f0 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5112,7 +5112,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5122,7 +5122,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5150,7 +5150,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From eb84f748e1b9f2953d534a4eaaa562ed80968d2d Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 8c6a9648485..3c4c3584a4a 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19059,13 +19059,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19076,12 +19070,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19090,6 +19078,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 09223e4d2f0..c48de4ecc12 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5150,7 +5150,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.4t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.4t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.4
|
||||
@ -0,0 +1,105 @@
|
||||
From edfd8c357cabbb59e3d2db9ab7b6eb1f2eff80fe Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 519caa8ca74..f19e43c8573 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -17976,12 +17976,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18456,12 +18450,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19077,7 +19065,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19088,6 +19082,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 2a037569e49..ce6625a752c 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5112,7 +5112,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5122,7 +5122,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5150,7 +5150,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 972a7e832fa8941b6ed92d366175748fd2172639 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index f19e43c8573..89f394a998b 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19065,13 +19065,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19082,12 +19076,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19096,6 +19084,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index ce6625a752c..3abe99594c8 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5150,7 +5150,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.5t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.5t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.5
|
||||
@ -0,0 +1,105 @@
|
||||
From 583757a560f95d29d4a8078dd1bcbdf3c3de1678 Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 901a26c9602..4ade7c21754 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18191,12 +18191,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18671,12 +18665,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19292,7 +19280,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19303,6 +19297,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 597a44b331a..6ffcb8694d4 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5217,7 +5217,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5227,7 +5227,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5255,7 +5255,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 8d221378537d08de2a43e1cbfcfbdf7a5613292b Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 4ade7c21754..6fd245e4c3b 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19280,13 +19280,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19297,12 +19291,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19311,6 +19299,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6ffcb8694d4..f75d0ff02ba 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5255,7 +5255,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.6t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.6t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.6
|
||||
@ -0,0 +1,105 @@
|
||||
From fd99fe3b35195f34b00d0ba0ca8c26958e28fed4 Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 901a26c9602..4ade7c21754 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18191,12 +18191,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18671,12 +18665,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19292,7 +19280,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19303,6 +19297,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 597a44b331a..6ffcb8694d4 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5217,7 +5217,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5227,7 +5227,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5255,7 +5255,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From f8dd6d4a22e74635cb2e1e7e8ad47033f06a4946 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 4ade7c21754..6fd245e4c3b 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19280,13 +19280,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19297,12 +19291,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19311,6 +19299,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6ffcb8694d4..f75d0ff02ba 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5255,7 +5255,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.7t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.7t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.7
|
||||
@ -0,0 +1,105 @@
|
||||
From 8f7c908415d76ab2e71f6bc6479c912c1ba99bd2 Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 901a26c9602..4ade7c21754 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18191,12 +18191,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18671,12 +18665,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19292,7 +19280,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19303,6 +19297,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 597a44b331a..6ffcb8694d4 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5217,7 +5217,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5227,7 +5227,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5255,7 +5255,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From c706d5d58dc4f620b665258946f86d0f48ad39f8 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 4ade7c21754..6fd245e4c3b 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19280,13 +19280,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19297,12 +19291,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19311,6 +19299,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6ffcb8694d4..f75d0ff02ba 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5255,7 +5255,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.8t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.8t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.8
|
||||
@ -0,0 +1,105 @@
|
||||
From b0c32c8d11e63c3cc6f8741e3362e67965b5e446 Mon Sep 17 00:00:00 2001
|
||||
From: Russell Keith-Magee <russell@keith-magee.com>
|
||||
Date: Tue, 26 May 2026 13:07:20 +0800
|
||||
Subject: [PATCH] [3.13] gh-150443: Exclude explicit dup3 and pipe2 checks on
|
||||
iOS builds. (GH-150444) (#150448)
|
||||
|
||||
Exclude explicit dup3 and pipe2 checks on iOS builds.
|
||||
(cherry picked from commit 629da5c914b4407e01c1dc06cbcbd8dce825fef3)
|
||||
---
|
||||
configure | 26 +++++++++++++-------------
|
||||
configure.ac | 6 +++---
|
||||
2 files changed, 16 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 901a26c9602..4ade7c21754 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18191,12 +18191,6 @@ if test "x$ac_cv_func_dup" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_DUP 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "execv" "ac_cv_func_execv"
|
||||
if test "x$ac_cv_func_execv" = xyes
|
||||
@@ -18671,12 +18665,6 @@ if test "x$ac_cv_func_pipe" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_PIPE 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "plock" "ac_cv_func_plock"
|
||||
if test "x$ac_cv_func_plock" = xyes
|
||||
@@ -19292,7 +19280,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19303,6 +19297,12 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 597a44b331a..6ffcb8694d4 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5217,7 +5217,7 @@ fi
|
||||
# checks for library functions
|
||||
AC_CHECK_FUNCS([ \
|
||||
accept4 alarm bind_textdomain_codeset chmod chown clock closefrom close_range confstr \
|
||||
- copy_file_range ctermid dup dup3 execv explicit_bzero explicit_memset \
|
||||
+ copy_file_range ctermid dup execv explicit_bzero explicit_memset \
|
||||
faccessat fchmod fchmodat fchown fchownat fdopendir fdwalk fexecve \
|
||||
fork fork1 fpathconf fstatat ftime ftruncate futimens futimes futimesat \
|
||||
gai_strerror getegid geteuid getgid getgrent getgrgid getgrgid_r \
|
||||
@@ -5227,7 +5227,7 @@ AC_CHECK_FUNCS([ \
|
||||
getspnam getuid getwd grantpt if_nameindex initgroups kill killpg lchown linkat \
|
||||
lockf lstat lutimes madvise mbrtowc memrchr mkdirat mkfifo mkfifoat \
|
||||
mknod mknodat mktime mmap mremap nice openat opendir pathconf pause pipe \
|
||||
- pipe2 plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
+ plock poll posix_fadvise posix_fallocate posix_openpt posix_spawn posix_spawnp \
|
||||
posix_spawn_file_actions_addclosefrom_np \
|
||||
pread preadv preadv2 process_vm_readv pthread_cond_timedwait_relative_np pthread_condattr_setclock pthread_init \
|
||||
pthread_kill ptsname ptsname_r pwrite pwritev pwritev2 readlink readlinkat readv realpath renameat \
|
||||
@@ -5255,7 +5255,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+ AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
@ -0,0 +1,103 @@
|
||||
From 3fc7c23cce6b846952067df633f113510a83e2c3 Mon Sep 17 00:00:00 2001
|
||||
From: Ned Deily <nad@python.org>
|
||||
Date: Wed, 5 Aug 2026 00:30:17 -0700
|
||||
Subject: [PATCH] [3.13] gh-153711: Avoid use of dup3 and pipe2 calls
|
||||
introduced in macOS 27 (#155211)
|
||||
|
||||
This prevents potential segfaults when builds are used on older
|
||||
systems and avoids adding new code for supporting weaklinking.
|
||||
---
|
||||
...-08-05-02-02-33.gh-issue-153711.pO9fFb.rst | 3 ++
|
||||
configure | 32 +++++++++++--------
|
||||
configure.ac | 8 ++++-
|
||||
3 files changed, 29 insertions(+), 14 deletions(-)
|
||||
create mode 100644 Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
|
||||
diff --git a/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
new file mode 100644
|
||||
index 00000000000..90804c179a4
|
||||
--- /dev/null
|
||||
+++ b/Misc/NEWS.d/next/macOS/2026-08-05-02-02-33.gh-issue-153711.pO9fFb.rst
|
||||
@@ -0,0 +1,3 @@
|
||||
+On macOS, do not attempt to use the :manpage:`dup3(2)` and
|
||||
+:manpage:`pipe2(2)` system calls introduced in
|
||||
+macOS 27 to prevent problems when running on older systems.
|
||||
diff --git a/configure b/configure
|
||||
index 4ade7c21754..6fd245e4c3b 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -19280,13 +19280,7 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
-if test "x$ac_cv_func_dup3" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
-
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
+ ac_fn_c_check_func "$LINENO" "getentropy" "ac_cv_func_getentropy"
|
||||
if test "x$ac_cv_func_getentropy" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETENTROPY 1" >>confdefs.h
|
||||
@@ -19297,12 +19291,6 @@ if test "x$ac_cv_func_getgroups" = xyes
|
||||
then :
|
||||
printf "%s\n" "#define HAVE_GETGROUPS 1" >>confdefs.h
|
||||
|
||||
-fi
|
||||
-ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
-if test "x$ac_cv_func_pipe2" = xyes
|
||||
-then :
|
||||
- printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
-
|
||||
fi
|
||||
ac_fn_c_check_func "$LINENO" "system" "ac_cv_func_system"
|
||||
if test "x$ac_cv_func_system" = xyes
|
||||
@@ -19311,6 +19299,24 @@ then :
|
||||
|
||||
fi
|
||||
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ ac_fn_c_check_func "$LINENO" "dup3" "ac_cv_func_dup3"
|
||||
+if test "x$ac_cv_func_dup3" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_DUP3 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2"
|
||||
+if test "x$ac_cv_func_pipe2" = xyes
|
||||
+then :
|
||||
+ printf "%s\n" "#define HAVE_PIPE2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
fi
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6ffcb8694d4..f75d0ff02ba 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5255,7 +5255,13 @@ fi
|
||||
# header definition prevents usage - autoconf doesn't use the headers), or
|
||||
# raise an error if used at runtime. Force these symbols off.
|
||||
if test "$ac_sys_system" != "iOS" ; then
|
||||
- AC_CHECK_FUNCS([dup3 getentropy getgroups pipe2 system])
|
||||
+ AC_CHECK_FUNCS([getentropy getgroups system])
|
||||
+fi
|
||||
+# In addition, macOS introduced dup3 and pipe2 in macOS 27, late in the
|
||||
+# lifetime of this version of Python. Rather than adding weaklinking
|
||||
+# support for them, just continue to ignore them.
|
||||
+if test "$ac_sys_system" != "iOS" -a "$ac_sys_system" != "Darwin"; then
|
||||
+ AC_CHECK_FUNCS([dup3 pipe2])
|
||||
fi
|
||||
|
||||
AC_CHECK_DECL([dirfd],
|
||||
--
|
||||
2.55.0.windows.3
|
||||
|
||||
1
plugins/python-build/share/python-build/patches/3.13.9t
Symbolic link
1
plugins/python-build/share/python-build/patches/3.13.9t
Symbolic link
@ -0,0 +1 @@
|
||||
3.13.9
|
||||
Loading…
x
Reference in New Issue
Block a user