Backout changeset 6f52040ede0d (bug 928364) for PGO bustage
authorMike Hommey <mh+mozilla@glandium.org>
Thu, 24 Oct 2013 09:37:06 +0900
changeset 151916 9d1266f5c051ad7f05c9df990dc39dca18dfa08f
parent 151915 2dc38d7aba6f9125122c446d635747518948b320
child 151917 19fd3388c3729fbc8dd4a52376c964aa495a2a25
child 151919 3b601d64426bd495caad66a39a5bd68e7673639e
push id25512
push usercbook@mozilla.com
push dateThu, 24 Oct 2013 05:06:01 +0000
treeherderautoland@19fd3388c372 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs928364
milestone27.0a1
backs out6f52040ede0ddad2c50b70341c648988a0f51848
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backout changeset 6f52040ede0d (bug 928364) for PGO bustage
python/mozbuild/mozbuild/backend/recursivemake.py
--- a/python/mozbuild/mozbuild/backend/recursivemake.py
+++ b/python/mozbuild/mozbuild/backend/recursivemake.py
@@ -573,20 +573,21 @@ class RecursiveMakeBackend(CommonBackend
                                                       sorted(files))):
                 just_the_filenames = list(filter_out_dummy(unified_group))
                 yield '%s%d.cpp' % (unified_prefix, i), just_the_filenames
 
         all_sources = ' '.join(source for source, _ in unified_files())
         makefile.add_statement('%s := %s\n' % (unified_files_makefile_variable,
                                                all_sources))
 
+        regen_cmds = ['for f in $(filter %.cpp,$^); do echo "#include \\"$$f\\""; done > $@']
         for unified_file, source_filenames in unified_files():
-            if extra_dependencies:
-                rule = makefile.create_rule([unified_file])
-                rule.add_dependencies(extra_dependencies)
+            rule = makefile.create_rule([unified_file])
+            rule.add_dependencies(extra_dependencies + source_filenames)
+            rule.add_commands(regen_cmds)
 
             # The rule we just defined is only for cases where the cpp files get
             # blown away and we need to regenerate them.  The rule doesn't correctly
             # handle source files being added/removed/renamed.  Therefore, we
             # generate them here also to make sure everything's up-to-date.
             with FileAvoidWrite(os.path.join(output_directory, unified_file)) as f:
                 f.write('\n'.join(['#include "%s"' % s for s in source_filenames]))