aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/interpreter.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2021-02-07 11:46:41 +0000
committerGitHub <noreply@github.com>2021-02-07 11:46:41 +0000
commit8b82ffa9e423558d7644c7135db4114f59537829 (patch)
tree90a326f8e796d4a81e98e0639fe67b6a0459ed08 /mesonbuild/interpreter.py
parent8e73e5fe1c4fcd5a875cb4777c7938f9069e0102 (diff)
parentf63e168685c22a749502161355a7ea98a6c5344a (diff)
downloadmeson-8b82ffa9e423558d7644c7135db4114f59537829.zip
meson-8b82ffa9e423558d7644c7135db4114f59537829.tar.gz
meson-8b82ffa9e423558d7644c7135db4114f59537829.tar.bz2
Merge pull request #8305 from xclaesse/run-target-env
run_target: Add env kwarg
Diffstat (limited to 'mesonbuild/interpreter.py')
-rw-r--r--mesonbuild/interpreter.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py
index e5404c2..f3d7502 100644
--- a/mesonbuild/interpreter.py
+++ b/mesonbuild/interpreter.py
@@ -2378,7 +2378,7 @@ permitted_kwargs = {'add_global_arguments': {'language', 'native'},
'jar': build.known_jar_kwargs,
'project': {'version', 'meson_version', 'default_options', 'license', 'subproject_dir'},
'run_command': {'check', 'capture', 'env'},
- 'run_target': {'command', 'depends'},
+ 'run_target': {'command', 'depends', 'env'},
'shared_library': build.known_shlib_kwargs,
'shared_module': build.known_shmod_kwargs,
'static_library': build.known_stlib_kwargs,
@@ -4058,6 +4058,7 @@ This will become a hard error in the future.''' % kwargs['input'], location=self
self.add_target(name, tg.held_object)
return tg
+ @FeatureNewKwargs('run_target', '0.57.0', ['env'])
@permittedKwargs(permitted_kwargs['run_target'])
def func_run_target(self, node, args, kwargs):
if len(args) > 1:
@@ -4086,8 +4087,8 @@ This will become a hard error in the future.''' % kwargs['input'], location=self
if not isinstance(d, (build.BuildTarget, build.CustomTarget)):
raise InterpreterException('Depends items must be build targets.')
cleaned_deps.append(d)
- command, *cmd_args = cleaned_args
- tg = RunTargetHolder(build.RunTarget(name, command, cmd_args, cleaned_deps, self.subdir, self.subproject), self)
+ env = self.unpack_env_kwarg(kwargs)
+ tg = RunTargetHolder(build.RunTarget(name, cleaned_args, cleaned_deps, self.subdir, self.subproject, env), self)
self.add_target(name, tg.held_object)
full_name = (self.subproject, name)
assert(full_name not in self.build.run_target_names)