aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend/vs2010backend.py
diff options
context:
space:
mode:
authorNiklas Claesson <nicke.claesson@gmail.com>2017-09-20 20:28:04 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2017-09-29 23:29:44 +0300
commit68275b32e80147145cc78607f496255486fb9d92 (patch)
treeceeac94f4cc545e341f2dbdbb0699d0ba51e46ae /mesonbuild/backend/vs2010backend.py
parentc93bce78397de6cc96f0ed57ec4b01b582415db0 (diff)
downloadmeson-68275b32e80147145cc78607f496255486fb9d92.zip
meson-68275b32e80147145cc78607f496255486fb9d92.tar.gz
meson-68275b32e80147145cc78607f496255486fb9d92.tar.bz2
Implement capture for generators
Diffstat (limited to 'mesonbuild/backend/vs2010backend.py')
-rw-r--r--mesonbuild/backend/vs2010backend.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py
index cb8dad6..2d18b0e 100644
--- a/mesonbuild/backend/vs2010backend.py
+++ b/mesonbuild/backend/vs2010backend.py
@@ -128,6 +128,16 @@ class Vs2010Backend(backends.Backend):
.replace("@BUILD_ROOT@", self.environment.get_build_dir())
for x in args]
cmd = exe_arr + self.replace_extra_args(args, genlist)
+ if generator.capture:
+ exe_data = self.serialize_executable(
+ cmd[0],
+ cmd[1:],
+ self.environment.get_build_dir(),
+ capture=outfiles[0]
+ )
+ cmd = self.environment.get_build_command() + ['--internal', 'exe', exe_data]
+ abs_pdir = os.path.join(self.environment.get_build_dir(), self.get_target_dir(target))
+ os.makedirs(abs_pdir, exist_ok=True)
cbs = ET.SubElement(idgroup, 'CustomBuild', Include=infilename)
ET.SubElement(cbs, 'Command').text = ' '.join(self.quote_arguments(cmd))
ET.SubElement(cbs, 'Outputs').text = ';'.join(outfiles)