diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2018-07-19 13:36:12 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2018-07-19 13:36:12 +0300 |
commit | c1fc55e6f6acf8289e673301be2c474e946ce305 (patch) | |
tree | 31fbb3d72889a868f19509439d39ecea0c091aeb | |
parent | aee9f589398fa3d6c42b50dd1000598ef36ecfb3 (diff) | |
download | meson-c1fc55e6f6acf8289e673301be2c474e946ce305.zip meson-c1fc55e6f6acf8289e673301be2c474e946ce305.tar.gz meson-c1fc55e6f6acf8289e673301be2c474e946ce305.tar.bz2 |
Use global args in compiler checks.
-rw-r--r-- | mesonbuild/interpreter.py | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index 94f7bfe..1607904 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -972,6 +972,16 @@ class CompilerHolder(InterpreterObject): def cmd_array_method(self, args, kwargs): return self.compiler.exelist + def get_option_compile_args(self): + var = self.environment.coredata.compiler_options[self.compiler.language + '_args'].value + assert(isinstance(var, list)) + return var + + def get_option_linker_args(self): + var = self.environment.coredata.compiler_options[self.compiler.language + '_link_args'].value + assert(isinstance(var, list)) + return var + def determine_args(self, kwargs): nobuiltins = kwargs.get('no_builtin_args', False) if not isinstance(nobuiltins, bool): @@ -985,9 +995,11 @@ class CompilerHolder(InterpreterObject): idir = os.path.join(self.environment.get_source_dir(), i.held_object.get_curdir(), idir) args += self.compiler.get_include_args(idir, False) + args += self.get_option_compile_args() # Args that come from "the outside" + args += self.get_option_linker_args() if not nobuiltins: opts = self.environment.coredata.compiler_options - args += self.compiler.get_option_compile_args(opts) + args += self.compiler.get_option_compile_args(opts) # Args that come from togglable options args += self.compiler.get_option_link_args(opts) args += mesonlib.stringlistify(kwargs.get('args', [])) return args @@ -1021,7 +1033,7 @@ class CompilerHolder(InterpreterObject): prefix = kwargs.get('prefix', '') if not isinstance(prefix, str): raise InterpreterException('Prefix argument of sizeof must be a string.') - extra_args = mesonlib.stringlistify(kwargs.get('args', [])) + extra_args = self.determine_args(kwargs) deps = self.determine_dependencies(kwargs) result = self.compiler.alignment(typename, prefix, self.environment, extra_args, deps) mlog.log('Checking for alignment of', mlog.bold(typename, True), ':', result) |