monkeypatch_distutils.py (pymol-open-source-2.2.0) | : | monkeypatch_distutils.py (pymol-open-source-2.3.0) | ||
---|---|---|---|---|
skipping to change at line 59 | skipping to change at line 59 | |||
def wrapper(func): | def wrapper(func): | |||
orig = getattr(parent, name) | orig = getattr(parent, name) | |||
func._super = orig | func._super = orig | |||
func.__name__ = name | func.__name__ = name | |||
setattr(parent, name, func) | setattr(parent, name, func) | |||
return func | return func | |||
return wrapper | return wrapper | |||
@monkeypatch(distutils.sysconfig, 'customize_compiler') | @monkeypatch(distutils.sysconfig, 'customize_compiler') | |||
def customize_compiler(compiler): | def customize_compiler(compiler): | |||
# remove problematic flags | ||||
if sys.platform == 'linux' and ( | ||||
'clang' in os.getenv('CC', '') or | ||||
'clang' in os.getenv('LD', '')): | ||||
import re | ||||
re_flto = re.compile(r'-flto\S*') | ||||
config_vars = distutils.sysconfig.get_config_vars() | ||||
for (key, value) in config_vars.items(): | ||||
if re_flto.search(str(value)) is not None: | ||||
config_vars[key] = re_flto.sub('', value) | ||||
customize_compiler._super(compiler) | customize_compiler._super(compiler) | |||
if compiler.compiler_type != "unix": | if compiler.compiler_type != "unix": | |||
return | return | |||
(cxx, ccshared, ldcxxshared) = \ | (cxx, ccshared, ldcxxshared) = \ | |||
distutils.sysconfig.get_config_vars('CXX', 'CCSHARED', 'LDCXXSHARED' ) | distutils.sysconfig.get_config_vars('CXX', 'CCSHARED', 'LDCXXSHARED' ) | |||
cxx = os.environ.get('CXX') or cxx | cxx = os.environ.get('CXX') or cxx | |||
cxxflags = os.environ.get('CXXFLAGS', '') + ' ' + os.environ.get('CPPFLAGS', '') | cxxflags = os.environ.get('CXXFLAGS', '') + ' ' + os.environ.get('CPPFLAGS', '') | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 11 lines changed or added |