diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2021-05-03 02:58:57 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-03 02:58:57 (GMT) |
commit | d52bbde9421987d216c600557ef5bc931d03efcc (patch) | |
tree | e8cedf9aa87e3faf70792e9962d3bbc87fee4403 | |
parent | b43cc31a270d0dacbc69e35d6c6fbdb5edd7e711 (diff) | |
download | cpython-d52bbde9421987d216c600557ef5bc931d03efcc.zip cpython-d52bbde9421987d216c600557ef5bc931d03efcc.tar.gz cpython-d52bbde9421987d216c600557ef5bc931d03efcc.tar.bz2 |
bpo-41129: Fix check for macOS SDK paths when building Python (GH-25785)
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@python.org>
-rw-r--r-- | Misc/NEWS.d/next/macOS/2021-05-02-21-03-27.bpo-42119.Y7BSX_.rst | 7 | ||||
-rw-r--r-- | setup.py | 6 |
2 files changed, 10 insertions, 3 deletions
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 0000000..7dd67a5 --- /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. @@ -227,11 +227,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): |