aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend/vs2010backend.py
diff options
context:
space:
mode:
authorNicolas Schneider <nioncode+git@gmail.com>2016-03-29 01:46:47 +0200
committerNicolas Schneider <nioncode+git@gmail.com>2016-03-29 12:08:34 +0200
commitba8b650cdaf926fc183ae6fa4d1348996b07fb6c (patch)
treec926a6d6df9822622e17ed2a404d598334edd42a /mesonbuild/backend/vs2010backend.py
parent330be891c1cbc115bef765c04730b1004d5cb20a (diff)
downloadmeson-ba8b650cdaf926fc183ae6fa4d1348996b07fb6c.zip
meson-ba8b650cdaf926fc183ae6fa4d1348996b07fb6c.tar.gz
meson-ba8b650cdaf926fc183ae6fa4d1348996b07fb6c.tar.bz2
vs2010: fix relative path to target private dir for generators
backend.get_target_private_dir() includes the target directory in the path. However, we want to treat all paths relative from the target directory, because that's where our VS project file lives in.
Diffstat (limited to 'mesonbuild/backend/vs2010backend.py')
-rw-r--r--mesonbuild/backend/vs2010backend.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py
index 3aa3ca8..eb56788 100644
--- a/mesonbuild/backend/vs2010backend.py
+++ b/mesonbuild/backend/vs2010backend.py
@@ -53,19 +53,20 @@ class Vs2010Backend(backends.Backend):
outfilelist = genlist.get_outfilelist()
exe_arr = self.exe_object_to_cmd_array(exe)
base_args = generator.get_arglist()
+ target_private_dir = self.relpath(self.get_target_private_dir(target), self.get_target_dir(target))
for i in range(len(infilelist)):
if len(infilelist) == len(outfilelist):
- sole_output = os.path.join(self.get_target_private_dir(target), outfilelist[i])
+ sole_output = os.path.join(target_private_dir, outfilelist[i])
else:
sole_output = ''
curfile = infilelist[i]
infilename = os.path.join(self.environment.get_source_dir(), curfile)
outfiles = genlist.get_outputs_for(curfile)
- outfiles = [os.path.join(self.get_target_private_dir(target), of) for of in outfiles]
+ outfiles = [os.path.join(target_private_dir, of) for of in outfiles]
all_output_files += outfiles
args = [x.replace("@INPUT@", infilename).replace('@OUTPUT@', sole_output)\
for x in base_args]
- args = [x.replace("@SOURCE_DIR@", self.environment.get_source_dir()).replace("@BUILD_DIR@", self.get_target_private_dir(target))
+ args = [x.replace("@SOURCE_DIR@", self.environment.get_source_dir()).replace("@BUILD_DIR@", target_private_dir)
for x in args]
fullcmd = exe_arr + args
commands.append(' '.join(self.special_quote(fullcmd)))