diff options
author | Christoph Behle <behlec@gmail.com> | 2018-06-10 21:32:45 +0200 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek.chauhan@gmail.com> | 2018-06-12 00:14:54 +0000 |
commit | 40d121d33ee10004c0018df2f8ec2665569ff2db (patch) | |
tree | fdefbdb24a93ac457467b55746bba65fbcf6b26c /mesonbuild/interpreter.py | |
parent | bbb893f39e0bf7424a7104dcc15b449c69b9103e (diff) | |
download | meson-40d121d33ee10004c0018df2f8ec2665569ff2db.zip meson-40d121d33ee10004c0018df2f8ec2665569ff2db.tar.gz meson-40d121d33ee10004c0018df2f8ec2665569ff2db.tar.bz2 |
get_define can concatenate string literals.
Added method concatenate_string_literals to CCompiler. Will concatenate
string literals.
Added keyword argument 'concatenate_string_literals' to Compiler.get_define.
If used will apply concatenate_string_literals to its return value.
Diffstat (limited to 'mesonbuild/interpreter.py')
-rw-r--r-- | mesonbuild/interpreter.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index 421ddd9..e4ba63c 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -1174,6 +1174,7 @@ class CompilerHolder(InterpreterObject): 'include_directories', 'args', 'dependencies', + 'concatenate_string_literals', }) def get_define_method(self, args, kwargs): if len(args) != 1: @@ -1181,12 +1182,15 @@ class CompilerHolder(InterpreterObject): check_stringlist(args) element = args[0] prefix = kwargs.get('prefix', '') + concatenate = kwargs.pop('concatenate_string_literals', False) if not isinstance(prefix, str): raise InterpreterException('Prefix argument of get_define() must be a string.') extra_args = self.determine_args(kwargs) deps = self.determine_dependencies(kwargs) value = self.compiler.get_define(element, prefix, self.environment, extra_args, deps) mlog.log('Fetching value of define "%s": %s' % (element, value)) + if concatenate: + value = self.compiler.concatenate_string_literals(value) return value @permittedKwargs({ |