aboutsummaryrefslogtreecommitdiff
path: root/ninjabackend.py
diff options
context:
space:
mode:
Diffstat (limited to 'ninjabackend.py')
-rw-r--r--ninjabackend.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/ninjabackend.py b/ninjabackend.py
index 2f611a1..e011848 100644
--- a/ninjabackend.py
+++ b/ninjabackend.py
@@ -169,7 +169,10 @@ class NinjaBackend(backends.Backend):
continue
for src in gensource.get_outfilelist():
if self.environment.is_header(src):
- header_deps.append(src)
+ header_deps.append(os.path.join(self.get_target_private_dir(target), src))
+ for dep in target.link_targets:
+ if isinstance(dep, (build.StaticLibrary, build.SharedLibrary)):
+ header_deps += self.get_generated_headers(dep)
return header_deps
def generate_target(self, target, outfile):
@@ -1308,6 +1311,8 @@ rule FORTRAN_DEP_HACK
sargs = compiler.get_include_args(srctreedir)
commands += bargs
commands += sargs
+ for d in i.get_extra_build_dirs():
+ commands += compiler.get_include_args(d)
custom_target_include_dirs = []
for i in target.generated:
if isinstance(i, build.CustomTarget):