diff options
author | Saulius Žemaitaitis <saulius@zemaitaitis.lt> | 2018-01-03 17:51:40 +0200 |
---|---|---|
committer | Saulius Žemaitaitis <saulius@zemaitaitis.lt> | 2018-01-03 17:51:40 +0200 |
commit | 5bfc9f03ffb6458ed579f4166cc9825ed7d46315 (patch) | |
tree | 39c1674dbd7a1877f9c4f72d26b7a20ef05bc164 | |
parent | 3084d3efbc9ef709dd4ebff059df365b434dea57 (diff) | |
download | python-lxml-5bfc9f03ffb6458ed579f4166cc9825ed7d46315.tar.gz |
Include -isysroot linker arg on macos
Adds -isysroot linker flag when building extensions on darwin target.
Uses `xcrun --show-sdk-path` to determine isysroot value.
Based on suggestions found in https://forums.developer.apple.com/thread/87829
and addresses https://bugs.launchpad.net/lxml/+bug/1727864
-rw-r--r-- | setupinfo.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/setupinfo.py b/setupinfo.py index 8907f72a..c27932bc 100644 --- a/setupinfo.py +++ b/setupinfo.py @@ -124,6 +124,9 @@ def ext_modules(static_include_dirs, static_library_dirs, ]) _library_dirs = _prefer_reldirs(base_dir, library_dirs(static_library_dirs)) _cflags = cflags(static_cflags) + _ldflags = [] + if sys.platform == 'darwin': + _ldflags.extend(['-isysroot', get_xcode_isysroot()]) _define_macros = define_macros() _libraries = libraries() @@ -162,6 +165,7 @@ def ext_modules(static_include_dirs, static_library_dirs, sources = [main_module_source], depends = find_dependencies(module), extra_compile_args = _cflags, + extra_link_args = _ldflags, extra_objects = static_binaries, define_macros = _define_macros, include_dirs = _include_dirs, @@ -400,6 +404,10 @@ def flags(option): flag_list.append(flag) return flag_list + +def get_xcode_isysroot(): + return run_command('xcrun', '--show-sdk-path') + XSLT_CONFIG = None XML2_CONFIG = None |