aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/c.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2019-01-06 22:47:25 +0200
committerGitHub <noreply@github.com>2019-01-06 22:47:25 +0200
commita34ac74cf918a7251d44c2f646972106da1a7f25 (patch)
tree479a07f584c119a5931b197546b10ffce88f329d /mesonbuild/compilers/c.py
parent735e138382c2876c181edd09e6bf9bb76225be6d (diff)
parent52071c6d4ee15c750f8a8620e038b78627db890e (diff)
downloadmeson-a34ac74cf918a7251d44c2f646972106da1a7f25.zip
meson-a34ac74cf918a7251d44c2f646972106da1a7f25.tar.gz
meson-a34ac74cf918a7251d44c2f646972106da1a7f25.tar.bz2
Merge pull request #4547 from mensinda/introIncDirs
mintro: Save introspection to disk and --targets modifications
Diffstat (limited to 'mesonbuild/compilers/c.py')
-rw-r--r--mesonbuild/compilers/c.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py
index 92a9fa6..6350eee 100644
--- a/mesonbuild/compilers/c.py
+++ b/mesonbuild/compilers/c.py
@@ -1475,6 +1475,15 @@ class VisualStudioCCompiler(CCompiler):
# msvc does not have a concept of system header dirs.
return ['-I' + path]
+ def compute_parameters_with_absolute_paths(self, parameter_list, build_dir):
+ for idx, i in enumerate(parameter_list):
+ if i[:2] == '-I' or i[:2] == '/I':
+ parameter_list[idx] = i[:2] + os.path.normpath(os.path.join(build_dir, i[2:]))
+ elif i[:9] == '/LIBPATH:':
+ parameter_list[idx] = i[:9] + os.path.normpath(os.path.join(build_dir, i[9:]))
+
+ return parameter_list
+
# Visual Studio is special. It ignores some arguments it does not
# understand and you can't tell it to error out on those.
# http://stackoverflow.com/questions/15259720/how-can-i-make-the-microsoft-c-compiler-treat-unknown-flags-as-errors-rather-t