Bug 1062668 - Only process the "include" install manifest when invoking the binaries target. r=gps

This commit is contained in:
Mike Hommey 2014-09-05 10:27:39 +09:00
parent e334302b6f
commit 54df16945d

View File

@ -92,7 +92,10 @@ include backend.RecursiveMakeBackend.pp
default:: backend.RecursiveMakeBackend
install_manifests := bin idl include public private sdk
install_manifests := \
$(addprefix dist/,bin idl include public private sdk) \
_tests \
$(NULL)
install_manifest_depends = \
CLOBBER \
$(configure_dir)/configure \
@ -110,7 +113,7 @@ endif
endif
.PHONY: install-manifests
install-manifests: $(addprefix install-dist-,$(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
@ -121,15 +124,17 @@ ifdef JS_STANDALONE
NO_REMOVE=1
endif
.PHONY: $(addprefix install-dist-,$(install_manifests))
$(addprefix install-dist-,$(install_manifests)): install-dist-%: $(install_manifest_depends)
.PHONY: $(addprefix install-,$(install_manifests))
$(addprefix install-,$(filter dist/%,$(install_manifests))): install-dist/%: $(install_manifest_depends)
$(call py_action,process_install_manifest,$(if $(NO_REMOVE),--no-remove )$(DIST)/$* _build_manifests/install/dist_$*)
.PHONY: install-tests
install-manifests: install-tests
install-tests: $(install_manifest_depends)
install-_tests: $(install_manifest_depends)
$(call py_action,process_install_manifest,$(if $(NO_REMOVE),--no-remove )_tests _build_manifests/install/tests)
# For compatibility
.PHONY: install-tests
install-tests: install-_tests
include $(topsrcdir)/build/moz-automation.mk
# _tests should be purged during cleaning. However, we don't want it purged
@ -141,18 +146,20 @@ endif
# Windows PGO builds don't perform a clean before the 2nd pass. So, we want
# to preserve content for the 2nd pass on Windows. Everywhere else, we always
# process the install manifests as part of export.
# For the binaries rule, not all the install manifests matter, so force only
# the interesting ones to be done.
ifdef MOZ_PROFILE_USE
ifndef NO_PROFILE_GUIDED_OPTIMIZE
ifneq ($(OS_ARCH)_$(GNU_CC), WINNT_)
export:: install-manifests
binaries::
@$(MAKE) install-manifests NO_REMOVE=1
@$(MAKE) install-manifests NO_REMOVE=1 install_manifests=dist/include
endif
endif
else # !MOZ_PROFILE_USE (normal build)
export:: install-manifests
binaries::
@$(MAKE) install-manifests NO_REMOVE=1
@$(MAKE) install-manifests NO_REMOVE=1 install_manifests=dist/include
endif
# For historical reasons that are unknown, $(DIST)/sdk is always blown away