Bug 1063880 - Allow a --disable-compile-environment to go through a full mach build. r=mshal
authorMike Hommey <mh+mozilla@glandium.org>
Tue, 10 Mar 2015 15:16:51 +0900
changeset 249765 98d0c08747c1e002741b48002f11ee82aa124e55
parent 249764 84f6168fbf032e9207de3a918c1fbbe79b8ea7f6
child 249766 5bfaed9ef2d091f2261a0dc62511b625a5f3acda
push id989
push usermconley@mozilla.com
push dateWed, 11 Mar 2015 17:57:36 +0000
reviewersmshal
bugs1063880
milestone39.0a1
Bug 1063880 - Allow a --disable-compile-environment to go through a full mach build. r=mshal
Makefile.in
config/Makefile.in
config/recurse.mk
dom/plugins/test/testaddon/Makefile.in
--- a/Makefile.in
+++ b/Makefile.in
@@ -35,20 +35,22 @@ configure_dir = $(topsrcdir)
 endif
 
 ifndef MOZ_PROFILE_USE
 # We need to explicitly put backend.RecursiveMakeBackend here
 # otherwise the rule in rules.mk doesn't run early enough.
 $(TIERS) binaries:: CLOBBER $(configure_dir)/configure config.status backend.RecursiveMakeBackend
 ifndef JS_STANDALONE
 ifndef LIBXUL_SDK
+ifdef COMPILE_ENVIRONMENT
 $(TIERS) binaries:: $(topsrcdir)/js/src/configure js/src/config.status
 endif
 endif
 endif
+endif
 
 ifdef JS_STANDALONE
 .PHONY: CLOBBER
 CLOBBER:
 else
 CLOBBER: $(topsrcdir)/CLOBBER
 	@echo 'STOP!  The CLOBBER file has changed.'
 	@echo 'Please run the build through a sanctioned build wrapper, such as'
@@ -100,22 +102,24 @@ install_manifest_depends = \
   CLOBBER \
   $(configure_dir)/configure \
   config.status \
   backend.RecursiveMakeBackend \
   $(NULL)
 
 ifndef JS_STANDALONE
 ifndef LIBXUL_SDK
+ifdef COMPILE_ENVIRONMENT
 install_manifest_depends += \
   $(topsrcdir)/js/src/configure \
   js/src/config.status \
   $(NULL)
 endif
 endif
+endif
 
 .PHONY: install-manifests
 install-manifests: $(addprefix install-,$(install_manifests))
 
 # process_install_manifest needs to be invoked with --no-remove when building
 # js as standalone because automated builds are building nspr separately and
 # that would remove the resulting files.
 # Eventually, a standalone js build would just be able to build nspr itself,
--- a/config/Makefile.in
+++ b/config/Makefile.in
@@ -13,20 +13,20 @@ endif
 ifdef GNU_CC
 MODULE_OPTIMIZE_FLAGS = -O3
 endif
 
 include $(topsrcdir)/config/config.mk
 
 # L10n jobs are doing make -C config manually before anything else,
 # and need nsinstall to be built as a consequence.
+ifdef COMPILE_ENVIRONMENT
 export:: host
 
 ifneq (WINNT,$(HOST_OS_ARCH))
-ifdef COMPILE_ENVIRONMENT
 # Ensure nsinstall is atomically created
 nsinstall$(HOST_BIN_SUFFIX): $(HOST_PROGRAM)
 	cp $^ $@.tmp
 	mv $@.tmp $@
 
 NSINSTALL_EXECUTABLES := nsinstall$(HOST_BIN_SUFFIX)
 NSINSTALL_DEST := $(DIST)/bin
 NSINSTALL_TARGET := host
--- a/config/recurse.mk
+++ b/config/recurse.mk
@@ -91,20 +91,22 @@ ifeq ($(CURRENT_TIER),export)
 # else, so keep this global dependency to make config/export first for now.
 $(addsuffix /$(CURRENT_TIER),$(filter-out config,$(CURRENT_DIRS))): config/$(CURRENT_TIER)
 
 # The export tier requires nsinstall, which is built from config. So every
 # subdirectory traversal needs to happen after building nsinstall in config, which
 # is done with the config/host target. Note the config/host target only exists if
 # nsinstall is actually built, which it is not on Windows, because we use
 # nsinstall.py there.
+ifdef COMPILE_ENVIRONMENT
 ifneq (,$(filter config/host, $(compile_targets)))
 $(addsuffix /$(CURRENT_TIER),$(CURRENT_DIRS)): config/host
 endif
 endif
+endif
 
 endif # ifeq ($(CURRENT_TIER),compile)
 
 else
 
 # Don't recurse if MAKELEVEL is NO_RECURSE_MAKELEVEL as defined above
 ifeq ($(NO_RECURSE_MAKELEVEL),$(MAKELEVEL))
 
--- a/dom/plugins/test/testaddon/Makefile.in
+++ b/dom/plugins/test/testaddon/Makefile.in
@@ -11,13 +11,15 @@ else
 plugin_file_names = $(DLL_PREFIX)nptest$(DLL_SUFFIX) $(DLL_PREFIX)npsecondtest$(DLL_SUFFIX)
 addon_file_name = testaddon.xpi
 endif
 
 # This is so hacky. Waiting on bug 988938.
 testdir = $(abspath $(DEPTH)/_tests/xpcshell/dom/plugins/test/unit/)
 addonpath = $(testdir)/$(addon_file_name)
 
+ifdef COMPILE_ENVIRONMENT
 libs::
 	$(NSINSTALL) -D $(testdir)
 	rm -f $(addonpath)
 	cd $(srcdir) && zip -rD $(addonpath) install.rdf
 	cd $(DIST) && zip -rD $(addonpath) $(foreach name,$(plugin_file_names),plugins/$(name))
+endif