Bug 950736 - Part 2: Make build failures of codegen.pp fatal; r=glandium
authorGregory Szorc <gps@mozilla.com>
Mon, 16 Dec 2013 13:15:37 -0800
changeset 176749 884b554dea2d231020f8775d5d9e72f0d3015fa2
parent 176748 ef0eeaec74a8a13bf6eb8f6265b3c7124e6d3577
child 176750 2212cbf3e7ca3f431af9fb73e84719829d99e5ec
push id3343
push userffxbld
push dateMon, 17 Mar 2014 21:55:32 +0000
treeherdermozilla-beta@2f7d3415f79f [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersglandium
bugs950736
milestone29.0a1
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
Bug 950736 - Part 2: Make build failures of codegen.pp fatal; r=glandium
config/baseconfig.mk
dom/bindings/Makefile.in
dom/bindings/mozwebidlcodegen/__init__.py
--- a/config/baseconfig.mk
+++ b/config/baseconfig.mk
@@ -24,12 +24,12 @@ ifneq (4.0-,$(firstword $(sort 4.0- $(MA
 endif
 endif
 ifeq (a,$(firstword a$(subst /, ,$(srcdir))))
 $(error MSYS-style srcdir are not supported for Windows builds.)
 endif
 endif # WINNT
 
 ifdef .PYMAKE
-include_deps = $(eval -includedeps $(1))
+include_deps = $(eval $(if $(2),,-)includedeps $(1))
 else
-include_deps = $(eval -include $(1))
+include_deps = $(eval $(if $(2),,-)include $(1))
 endif
--- a/dom/bindings/Makefile.in
+++ b/dom/bindings/Makefile.in
@@ -53,21 +53,20 @@ CSS2Properties.webidl: $(css2properties_
 # The generated .pp file contains all the important dependencies such as
 # changes to .webidl or .py files should result in code generation being
 # performed.
 codegen_dependencies := \
   $(nonstatic_webidl_files) \
   $(GLOBAL_DEPS) \
   $(NULL)
 
-$(call include_deps,codegen.pp)
+# The 1 is to make codegen.pp not optional.
+$(call include_deps,codegen.pp,1)
 
-codegen.pp: codegen.done
-
-codegen.done: $(codegen_dependencies)
+codegen.pp: $(codegen_dependencies)
 	$(call py_action,webidl,$(srcdir))
 	@$(TOUCH) $@
 
 .PHONY: compiletests
 compiletests:
 	$(call SUBMAKE,libs,test)
 
 GARBAGE += \
--- a/dom/bindings/mozwebidlcodegen/__init__.py
+++ b/dom/bindings/mozwebidlcodegen/__init__.py
@@ -541,17 +541,17 @@ def create_build_system_manager(topsrcdi
         os.path.join(src_dir, 'Bindings.conf'),
         inputs,
         os.path.join(dist_dir, 'include', 'mozilla', 'dom'),
         obj_dir,
         os.path.join(obj_dir, 'codegen.json'),
         cache_dir=cache_dir,
         # The make rules include a codegen.pp file containing dependencies.
         make_deps_path=os.path.join(obj_dir, 'codegen.pp'),
-        make_deps_target='codegen.done',
+        make_deps_target='codegen.pp',
     )
 
 
 class BuildSystemWebIDL(MozbuildObject):
     @property
     def manager(self):
         if not hasattr(self, '_webidl_manager'):
             self._webidl_manager = create_build_system_manager(