diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2014-04-07 21:28:10 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2014-04-07 21:28:10 +0300 |
commit | f23a5a115089346f349643e86241fc08b0684f9b (patch) | |
tree | f11b69d7081e7188c4d158d07e690cea9451ec65 /backends.py | |
parent | 1d36109002cc5ce79b1627cceae7bc3a1e28e113 (diff) | |
download | meson-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 'backends.py')
-rw-r--r-- | backends.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/backends.py b/backends.py index 563557d..81062f9 100644 --- a/backends.py +++ b/backends.py @@ -220,7 +220,12 @@ class Backend(): if is_unity: unity_src.append(src) else: - obj_list.append(self.generate_single_compile(target, outfile, src, True)) + # Generated targets are ordered deps because the must exist + # before the sources compiling them are used. After the first + # compile we get precise dependency info from dep files. + # This should work in all cases. If it does not, then just + # move them from orderdeps to proper deps. + obj_list.append(self.generate_single_compile(target, outfile, src, True, [], header_deps)) for src in target.get_sources(): if not self.environment.is_header(src): src_list.append(src) @@ -229,7 +234,7 @@ class Backend(): target.get_subdir(), src) unity_src.append(abs_src) else: - obj_list.append(self.generate_single_compile(target, outfile, src, False, header_deps)) + obj_list.append(self.generate_single_compile(target, outfile, src, False, [], header_deps)) obj_list += self.flatten_object_list(target) if is_unity: for src in self.generate_unity_files(target, unity_src): |