aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/environment.py
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2016-10-25 07:23:15 +0530
committerNirbheek Chauhan <nirbheek@centricular.com>2016-10-26 23:16:05 +0530
commit3df75d696d951dc11bae5d287e1062c5299b8367 (patch)
tree231b669b83ef271977e40e7c9e45ffd1736e30a3 /mesonbuild/environment.py
parent4be8e71fb380a0541b69992539a0695ea29b3205 (diff)
downloadmeson-3df75d696d951dc11bae5d287e1062c5299b8367.zip
meson-3df75d696d951dc11bae5d287e1062c5299b8367.tar.gz
meson-3df75d696d951dc11bae5d287e1062c5299b8367.tar.bz2
Directly pass the compiler to get_args_from_envvars
Seems better to do this since the behaviour is compiler-specific. Would be easier to extend this later too in case we want to do more compiler-specific things.
Diffstat (limited to 'mesonbuild/environment.py')
-rw-r--r--mesonbuild/environment.py12
1 files changed, 8 insertions, 4 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()