aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/interpreter.py
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek.chauhan@gmail.com>2016-07-19 22:40:57 +0530
committerJussi Pakkanen <jpakkane@gmail.com>2016-07-19 20:10:57 +0300
commit88aafd363e3b63184b42d66b9307ec701670b529 (patch)
tree0ce768f1b7a5f7c7c21874edfeb4944f3bfa65e6 /mesonbuild/interpreter.py
parent69d9c2228d718a627fdb3f8504cbc4cdff0b1f4c (diff)
downloadmeson-88aafd363e3b63184b42d66b9307ec701670b529.zip
meson-88aafd363e3b63184b42d66b9307ec701670b529.tar.gz
meson-88aafd363e3b63184b42d66b9307ec701670b529.tar.bz2
Normalize the path of a configured file to avoid dupes (#640)
Diffstat (limited to 'mesonbuild/interpreter.py')
-rw-r--r--mesonbuild/interpreter.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py
index 2fd835f..51c40c9 100644
--- a/mesonbuild/interpreter.py
+++ b/mesonbuild/interpreter.py
@@ -1993,7 +1993,9 @@ class Interpreter():
raise InterpreterException('Argument "configuration" is not of type configuration_data')
ofile_abs = os.path.join(self.environment.build_dir, self.subdir, output)
if inputfile is not None:
- conffile = os.path.join(self.subdir, inputfile)
+ # Normalize the path of the conffile to avoid duplicates
+ # This is especially important to convert '/' to '\' on Windows
+ conffile = os.path.normpath(os.path.join(self.subdir, inputfile))
if conffile not in self.build_def_files:
self.build_def_files.append(conffile)
os.makedirs(os.path.join(self.environment.build_dir, self.subdir), exist_ok=True)