tree 961442e5e209f0d156eb251660da1bd0e93e61ab
parent 102d813b5553c8f0b1d0653bb9f9b7a3ac9a56c8
author Ned Deily <nad@python.org> 1456322198 +1100
committer Ned Deily <nad@python.org> 1456322198 +1100

Issue #25136: Support Apple Xcode 7's new textual SDK stub libraries.

As of Xcode 7, SDKs for Apple platforms now include textual-format stub
libraries whose file names have a .tbd extension rather than the
standard OS X .dylib extension.  The Apple compiler tool chain handles
these stub libraries transparently and the installed system shared libraries
are still .dylibs.  However, the new stub libraries cause problems for
third-party programs that support building with Apple SDKs and make
build-time decisions based on the presence or paths of system-supplied
shared libraries in the SDK.  In particular, building Python itself with
an SDK fails to find system-supplied libraries during setup.py's build of
standard library extension modules.  The solution is to have
find_library_file() in Distutils search for .tbd files, along with
the existing types (.a, .so, and .dylib).  Patch by Tim Smith.
