[Python-checkins] bpo-41129: Fix check for macOS SDK paths when building Python (GH-25785) (GH-25830)

ned-deily webhook-mailer at python.org
Sun May 2 23:39:09 EDT 2021


https://github.com/python/cpython/commit/98035ec93ff0d9875f19027015689734d70c14e5
commit: 98035ec93ff0d9875f19027015689734d70c14e5
branch: 3.9
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: ned-deily <nad at python.org>
date: 2021-05-02T23:38:49-04:00
summary:

bpo-41129: Fix check for macOS SDK paths when building Python (GH-25785) (GH-25830)

Narrow search to match contents of SDKs, namely only files in ``/System/Library``,
``/System/IOSSupport``, and ``/usr`` other than ``/usr/local``. Previously,
anything under ``/System`` was assumed to be in an SDK which causes problems
with the new file system layout in 10.15+ where user file systems may appear
to be mounted under ``/System``.  Paths in ``/Library`` were also
incorrectly treated as SDK locations.

Co-authored-by: Ned Deily <nad at python.org>
(cherry picked from commit d52bbde9421987d216c600557ef5bc931d03efcc)

Co-authored-by: Ned Batchelder <ned at nedbatchelder.com>

files:
A Misc/NEWS.d/next/macOS/2021-05-02-21-03-27.bpo-42119.Y7BSX_.rst
M setup.py

diff --git a/Misc/NEWS.d/next/macOS/2021-05-02-21-03-27.bpo-42119.Y7BSX_.rst b/Misc/NEWS.d/next/macOS/2021-05-02-21-03-27.bpo-42119.Y7BSX_.rst
new file mode 100644
index 0000000000000..7dd67a527eb00
--- /dev/null
+++ b/Misc/NEWS.d/next/macOS/2021-05-02-21-03-27.bpo-42119.Y7BSX_.rst
@@ -0,0 +1,7 @@
+Fix check for macOS SDK paths when building Python. Narrow search to match
+contents of SDKs, namely only files in ``/System/Library``,
+``/System/IOSSupport``, and ``/usr`` other than ``/usr/local``. Previously,
+anything under ``/System`` was assumed to be in an SDK which causes problems
+with the new file system layout in 10.15+ where user file systems may appear
+to be mounted under ``/System``.  Paths in ``/Library`` were also
+incorrectly treated as SDK locations.
diff --git a/setup.py b/setup.py
index d8941790b35d0..04eb6b291c770 100644
--- a/setup.py
+++ b/setup.py
@@ -210,11 +210,11 @@ def macosx_sdk_specified():
 
 def is_macosx_sdk_path(path):
     """
-    Returns True if 'path' can be located in an OSX SDK
+    Returns True if 'path' can be located in a macOS SDK
     """
     return ( (path.startswith('/usr/') and not path.startswith('/usr/local'))
-                or path.startswith('/System/')
-                or path.startswith('/Library/') )
+                or path.startswith('/System/Library')
+                or path.startswith('/System/iOSSupport') )
 
 
 def grep_headers_for(function, headers):



More information about the Python-checkins mailing list