Bug 1077228 - Include the right autoconf.mk in GLOBAL_DEPS. r=mshal
authorMike Hommey <mh+mozilla@glandium.org>
Sat, 04 Oct 2014 10:34:35 +0900
changeset 232019 0ca2335fa5a1c5ae7f86e193523c64fa504b411a
parent 232018 5eead8ca23a3559fa627c61969d164b042484b6c
child 232020 ba069635e157fc9cc61c4a614eb3a225abe9e519
push id4187
push userbhearsum@mozilla.com
push dateFri, 28 Nov 2014 15:29:12 +0000
treeherdermozilla-beta@f23cc6a30c11 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmshal
bugs1077228, 969164
milestone35.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 1077228 - Include the right autoconf.mk in GLOBAL_DEPS. r=mshal Ever since bug 969164, the js build system, when building gecko (not when building standalone) uses a autoconf-js.mk file for its config. One of the suboptimal ways we have to retrigger builds when the build configuration changes (changes to e.g. configure.in can do that) is to make most things depend on autoconf.mk. Which unfortunately doesn't account for the fact the js/src subdirectory uses a different file. In practice, this means that some classes of changes to the js build system, not accompanied with toplevel build system changes may no trigger the corresponding rebuilds in the js subtree on incremental builds.
config/autoconf-js.mk.in
config/autoconf.mk.in
config/rules.mk
--- a/config/autoconf-js.mk.in
+++ b/config/autoconf-js.mk.in
@@ -1,6 +1,6 @@
 ifndef INCLUDED_AUTOCONF_MK
-INCLUDED_AUTOCONF_MK = 1
+INCLUDED_AUTOCONF_MK = autoconf-js.mk
 include $(DEPTH)/config/emptyvars-js.mk
 @ALLSUBSTS@
 include $(topsrcdir)/config/baseconfig.mk
 endif
--- a/config/autoconf.mk.in
+++ b/config/autoconf.mk.in
@@ -1,6 +1,6 @@
 ifndef INCLUDED_AUTOCONF_MK
-INCLUDED_AUTOCONF_MK = 1
+INCLUDED_AUTOCONF_MK = autoconf.mk
 include $(DEPTH)/config/emptyvars.mk
 @ALLSUBSTS@
 include $(topsrcdir)/config/baseconfig.mk
 endif
--- a/config/rules.mk
+++ b/config/rules.mk
@@ -567,17 +567,17 @@ endif
 everything::
 	$(MAKE) clean
 	$(MAKE) all
 
 STATIC_LIB_DEP = $(if $(wildcard $(1).$(LIBS_DESC_SUFFIX)),$(1).$(LIBS_DESC_SUFFIX),$(1))
 STATIC_LIBS_DEPS := $(foreach l,$(STATIC_LIBS),$(call STATIC_LIB_DEP,$(l)))
 
 # Dependencies which, if modified, should cause everything to rebuild
-GLOBAL_DEPS += Makefile $(DEPTH)/config/autoconf.mk $(topsrcdir)/config/config.mk
+GLOBAL_DEPS += Makefile $(addprefix $(DEPTH)/config/,$(INCLUDED_AUTOCONF_MK)) $(topsrcdir)/config/config.mk
 
 ##############################################
 ifdef COMPILE_ENVIRONMENT
 OBJ_TARGETS = $(OBJS) $(PROGOBJS) $(HOST_OBJS) $(HOST_PROGOBJS)
 
 compile:: host target
 
 host:: $(HOST_LIBRARY) $(HOST_PROGRAM) $(HOST_SIMPLE_PROGRAMS)