aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend/ninjabackend.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2016-12-11 21:51:38 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2016-12-13 14:19:34 +0200
commitb01d2c35b7003071fc64c6d2e7d07b7652a8b386 (patch)
tree674816b79fd79d9b57384481c98408700db38d48 /mesonbuild/backend/ninjabackend.py
parentde83e94b5a9ce0f540814cee40ef3746b6ebb824 (diff)
downloadmeson-b01d2c35b7003071fc64c6d2e7d07b7652a8b386.zip
meson-b01d2c35b7003071fc64c6d2e7d07b7652a8b386.tar.gz
meson-b01d2c35b7003071fc64c6d2e7d07b7652a8b386.tar.bz2
Only add build dir inlude directives if the corresponding dir exists. Closes #1185.
Diffstat (limited to 'mesonbuild/backend/ninjabackend.py')
-rw-r--r--mesonbuild/backend/ninjabackend.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index 3562cf8..acbf4a4 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -1778,7 +1778,16 @@ rule FORTRAN_DEP_HACK
for d in i.get_incdirs():
expdir = os.path.join(basedir, d)
srctreedir = os.path.join(self.build_to_src, expdir)
- bargs = compiler.get_include_args(expdir, i.is_system)
+ # There may be include dirs where a build directory has not been
+ # created for some source dir. For example if someone does this:
+ #
+ # inc = include_directories('foo/bar/baz')
+ #
+ # But never subdir()s into the actual dir.
+ if os.path.isdir(os.path.join(self.environment.get_build_dir(), expdir)):
+ bargs = compiler.get_include_args(expdir, i.is_system)
+ else:
+ bargs = []
sargs = compiler.get_include_args(srctreedir, i.is_system)
commands += bargs
commands += sargs