diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2021-04-15 17:51:34 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2021-04-15 17:51:34 +0300 |
commit | b3b14defc7ebd680ff21b1cfc17e35fe6fd18878 (patch) | |
tree | 4a30fd2ea65d2f14898237ee0ff75e3bb16d995a | |
parent | 39f963988b15312db1270f692646a636cac9211c (diff) | |
download | meson-b3b14defc7ebd680ff21b1cfc17e35fe6fd18878.zip meson-b3b14defc7ebd680ff21b1cfc17e35fe6fd18878.tar.gz meson-b3b14defc7ebd680ff21b1cfc17e35fe6fd18878.tar.bz2 |
Xcode: handle capturing generators.
-rw-r--r-- | mesonbuild/backend/xcodebackend.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/mesonbuild/backend/xcodebackend.py b/mesonbuild/backend/xcodebackend.py index 4271748..e7f6846 100644 --- a/mesonbuild/backend/xcodebackend.py +++ b/mesonbuild/backend/xcodebackend.py @@ -981,7 +981,13 @@ class XCodeBackend(backends.Backend): o = os.path.join(self.get_target_private_dir(t), o_base) args = [x.replace("@INPUT@", infilename).replace('@OUTPUT@', o).replace('@BUILD_DIR@', self.get_target_private_dir(t)) for x in base_args] args = self.replace_outputs(args, self.get_target_private_dir(t), outfilelist) - commands.append(exe_arr + args) + args = self.replace_extra_args(args, genlist) + if generator.capture: + # When capturing, stdout is the output. Forward it with the shell. + full_command = ['('] + exe_arr + args + ['>', o, ')'] + else: + full_command = exe_arr + args + commands.append(full_command) gen_dict.add_item('runOnlyForDeploymentPostprocessing', 0) gen_dict.add_item('shellPath', '/bin/sh') quoted_cmds = [] |