diff options
-rw-r--r-- | mesonbuild/environment.py | 12 | ||||
-rw-r--r-- | mesonbuild/interpreter.py | 5 |
2 files changed, 9 insertions, 8 deletions
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py index 86c23ae..b810e20 100644 --- a/mesonbuild/environment.py +++ b/mesonbuild/environment.py @@ -833,9 +833,9 @@ class Environment(): return self.coredata.get_builtin_option('datadir') -def get_args_from_envvars(lang, compiler_is_linker): +def get_args_from_envvars(compiler): """ - @lang: Language to fetch environment flags for + @compiler: Compiler to fetch environment flags for Returns a tuple of (compile_flags, link_flags) for the specified language from the inherited environment @@ -844,14 +844,18 @@ def get_args_from_envvars(lang, compiler_is_linker): if val: mlog.log('Appending {} from environment: {!r}'.format(var, val)) + lang = compiler.get_language() + compiler_is_linker = False + if hasattr(compiler, 'get_linker_exelist'): + compiler_is_linker = (compiler.get_exelist() == compiler.get_linker_exelist()) + if lang not in ('c', 'cpp', 'objc', 'objcpp', 'fortran', 'd'): return ([], []) # Compile flags cflags_mapping = {'c': 'CFLAGS', 'cpp': 'CXXFLAGS', 'objc': 'OBJCFLAGS', 'objcpp': 'OBJCXXFLAGS', - 'fortran': 'FFLAGS', - 'd': 'DFLAGS'} + 'fortran': 'FFLAGS', 'd': 'DFLAGS'} compile_flags = os.environ.get(cflags_mapping[lang], '') log_var(cflags_mapping[lang], compile_flags) compile_flags = compile_flags.split() diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index dd2a227..26c8aef 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -1792,11 +1792,8 @@ class Interpreter(): else: raise mlog.log('Native %s compiler: ' % lang, mlog.bold(' '.join(comp.get_exelist())), ' (%s %s)' % (comp.id, comp.version), sep='') - compiler_is_linker = False - if hasattr(comp, 'get_linker_exelist'): - compiler_is_linker = (comp.get_exelist() == comp.get_linker_exelist()) if not comp.get_language() in self.coredata.external_args: - (ext_compile_args, ext_link_args) = environment.get_args_from_envvars(comp.get_language(), compiler_is_linker) + (ext_compile_args, ext_link_args) = environment.get_args_from_envvars(comp) self.coredata.external_args[comp.get_language()] = ext_compile_args self.coredata.external_link_args[comp.get_language()] = ext_link_args self.build.add_compiler(comp) |