New submission from Ned Deily:
For Issue17086, 8ee6d96a1019 backported some cross-build patches to the 2.7
branch. The changes to setup.py detect_modules differ in the backport from
those in default. In particular, in default, changes to the library and include
directory lists used to build extensions modules are only made conditionally
when cross-compiling. But the 2.7 backport makes these changes unconditionally.
default:
def detect_modules(self):
# Ensure that /usr/local is always used, but the local build
# directories (i.e. '.' and 'Include') must be first. See issue
# 10520.
if not cross_compiling:
add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
# only change this for cross builds for 3.3, issues on Mageia
if cross_compiling:
self.add_gcc_paths()
self.add_multiarch_paths()
2.7:
def detect_modules(self):
# Ensure that /usr/local is always used
add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
self.add_gcc_paths()
self.add_multiarch_paths()
This breaks certain universal build combinations on OS X when using SDKs and it
is possible it could break builds on other platforms as well. Substituting the
default branch code on 2.7 appears to solve the OS X build problem. Whether it
has any negative impact on other builds, in particular cross-compilations is
untested.
----------
components: Build
messages: 189327
nosy: benjamin.peterson, doko, ned.deily
priority: release blocker
severity: normal
stage: patch review
status: open
title: 2.7 builds can fail due to unconditional inclusion of include paths
versions: Python 2.7
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue17990>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com