aboutsummaryrefslogtreecommitdiff
path: root/ninjabackend.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2014-04-07 21:28:10 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2014-04-07 21:28:10 +0300
commitf23a5a115089346f349643e86241fc08b0684f9b (patch)
treef11b69d7081e7188c4d158d07e690cea9451ec65 /ninjabackend.py
parent1d36109002cc5ce79b1627cceae7bc3a1e28e113 (diff)
downloadmeson-f23a5a115089346f349643e86241fc08b0684f9b.zip
meson-f23a5a115089346f349643e86241fc08b0684f9b.tar.gz
meson-f23a5a115089346f349643e86241fc08b0684f9b.tar.bz2
Write generator deps to Ninja files properly. Now can compile 1300+ files of QtCreator without dependency problems.
Diffstat (limited to 'ninjabackend.py')
-rw-r--r--ninjabackend.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/ninjabackend.py b/ninjabackend.py
index f692aba..7d7d91b 100644
--- a/ninjabackend.py
+++ b/ninjabackend.py
@@ -594,7 +594,7 @@ class NinjaBackend(backends.Backend):
elem.add_item('COMMAND', cmdlist)
elem.write(outfile)
- def generate_single_compile(self, target, outfile, src, is_generated=False, header_deps=[]):
+ def generate_single_compile(self, target, outfile, src, is_generated=False, header_deps=[], order_deps=[]):
compiler = self.get_compiler_for_source(src)
commands = self.generate_basic_compiler_flags(target, compiler)
commands.append(compiler.get_include_arg(self.get_target_private_dir(target)))
@@ -645,6 +645,10 @@ class NinjaBackend(backends.Backend):
if not '/' in d:
d = os.path.join(self.get_target_private_dir(target), d)
element.add_dep(d)
+ for d in order_deps:
+ if not '/' in d:
+ d = os.path.join(self.get_target_private_dir(target), d)
+ element.add_orderdep(d)
element.add_orderdep(pch_dep)
element.add_item('DEPFILE', dep_file)
element.add_item('FLAGS', commands)