author | Mike Hommey <mh+mozilla@glandium.org> |
Fri, 25 Mar 2011 19:50:29 +0100 | |
changeset 63920 | 4599ba769a4894e246a92f60ca6ace80b93415ed |
parent 63919 | 208e88837e650ef6ca535f9eae60474488a80b2d |
child 63921 | 845c60229f3ebbc42041d6fbe2542b498b8a7129 |
push id | unknown |
push user | unknown |
push date | unknown |
reviewers | ted |
bugs | 643704 |
milestone | 2.2a1pre |
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
|
--- a/client.mk +++ b/client.mk @@ -166,19 +166,21 @@ endif # MOZ_BUILD_PROJECTS CONFIGURES := $(TOPSRCDIR)/configure CONFIGURES += $(TOPSRCDIR)/js/src/configure ####################################################################### # Rules # The default rule is build build:: + $(MAKE) -f $(TOPSRCDIR)/client.mk $(if $(MOZ_PGO),profiledbuild,realbuild) + # Print out any options loaded from mozconfig. -all build clean depend distclean export libs install realclean:: +all realbuild clean depend distclean export libs install realclean:: @if test -f .mozconfig.out; then \ cat .mozconfig.out; \ rm -f .mozconfig.out; \ else true; \ fi # Windows equivalents build_all: build @@ -202,38 +204,38 @@ everything: clean build # application until all the build passes and postflight scripts have run. ifdef MOZ_OBJDIR PGO_OBJDIR = $(MOZ_OBJDIR) else PGO_OBJDIR := $(TOPSRCDIR) endif profiledbuild:: - $(MAKE) -f $(TOPSRCDIR)/client.mk build MOZ_PROFILE_GENERATE=1 + $(MAKE) -f $(TOPSRCDIR)/client.mk realbuild MOZ_PROFILE_GENERATE=1 $(MAKE) -C $(PGO_OBJDIR) package OBJDIR=${PGO_OBJDIR} $(PROFILE_GEN_SCRIPT) $(MAKE) -f $(TOPSRCDIR)/client.mk maybe_clobber_profiledbuild - $(MAKE) -f $(TOPSRCDIR)/client.mk build MOZ_PROFILE_USE=1 + $(MAKE) -f $(TOPSRCDIR)/client.mk realbuild MOZ_PROFILE_USE=1 ##################################################### # Build date unification ifdef MOZ_UNIFY_BDATE ifndef MOZ_BUILD_DATE ifdef MOZ_BUILD_PROJECTS MOZ_BUILD_DATE = $(shell $(PYTHON) $(TOPSRCDIR)/toolkit/xre/make-platformini.py --print-buildid) export MOZ_BUILD_DATE endif endif endif ##################################################### # Preflight, before building any project -build alldep preflight_all:: +realbuild alldep preflight_all:: ifeq (,$(MOZ_CURRENT_PROJECT)$(if $(MOZ_PREFLIGHT_ALL),,1)) # Don't run preflight_all for individual projects in multi-project builds # (when MOZ_CURRENT_PROJECT is set.) ifndef MOZ_BUILD_PROJECTS # Building a single project, OBJDIR is usable. set -e; \ for mkfile in $(MOZ_PREFLIGHT_ALL); do \ $(MAKE) -f $(TOPSRCDIR)/$$mkfile preflight_all TOPSRCDIR=$(TOPSRCDIR) OBJDIR=$(OBJDIR) MOZ_OBJDIR=$(MOZ_OBJDIR); \ @@ -247,17 +249,17 @@ else done endif endif # If we're building multiple projects, but haven't specified which project, # loop through them. ifeq (,$(MOZ_CURRENT_PROJECT)$(if $(MOZ_BUILD_PROJECTS),,1)) -configure depend build install export libs clean realclean distclean alldep preflight postflight maybe_clobber_profiledbuild upload sdk:: +configure depend realbuild install export libs clean realclean distclean alldep preflight postflight maybe_clobber_profiledbuild upload sdk:: set -e; \ for app in $(MOZ_BUILD_PROJECTS); do \ $(MAKE) -f $(TOPSRCDIR)/client.mk $@ MOZ_CURRENT_PROJECT=$$app; \ done else # MOZ_CURRENT_PROJECT: either doing a single-project build, or building an @@ -327,54 +329,54 @@ endif # Depend depend:: $(OBJDIR)/Makefile $(OBJDIR)/config.status $(MOZ_MAKE) export && $(MOZ_MAKE) depend #################################### # Preflight -build alldep preflight:: +realbuild alldep preflight:: ifdef MOZ_PREFLIGHT set -e; \ for mkfile in $(MOZ_PREFLIGHT); do \ $(MAKE) -f $(TOPSRCDIR)/$$mkfile preflight TOPSRCDIR=$(TOPSRCDIR) OBJDIR=$(OBJDIR) MOZ_OBJDIR=$(MOZ_OBJDIR); \ done endif #################################### # Build it -build:: $(OBJDIR)/Makefile $(OBJDIR)/config.status +realbuild:: $(OBJDIR)/Makefile $(OBJDIR)/config.status $(MOZ_MAKE) #################################### # Other targets # Pass these target onto the real build system install export libs clean realclean distclean alldep maybe_clobber_profiledbuild upload sdk:: $(OBJDIR)/Makefile $(OBJDIR)/config.status $(MOZ_MAKE) $@ #################################### # Postflight -build alldep postflight:: +realbuild alldep postflight:: ifdef MOZ_POSTFLIGHT set -e; \ for mkfile in $(MOZ_POSTFLIGHT); do \ $(MAKE) -f $(TOPSRCDIR)/$$mkfile postflight TOPSRCDIR=$(TOPSRCDIR) OBJDIR=$(OBJDIR) MOZ_OBJDIR=$(MOZ_OBJDIR); \ done endif endif # MOZ_CURRENT_PROJECT #################################### # Postflight, after building all projects -build alldep postflight_all:: +realbuild alldep postflight_all:: ifeq (,$(MOZ_CURRENT_PROJECT)$(if $(MOZ_POSTFLIGHT_ALL),,1)) # Don't run postflight_all for individual projects in multi-project builds # (when MOZ_CURRENT_PROJECT is set.) ifndef MOZ_BUILD_PROJECTS # Building a single project, OBJDIR is usable. set -e; \ for mkfile in $(MOZ_POSTFLIGHT_ALL); do \ $(MAKE) -f $(TOPSRCDIR)/$$mkfile postflight_all TOPSRCDIR=$(TOPSRCDIR) OBJDIR=$(OBJDIR) MOZ_OBJDIR=$(MOZ_OBJDIR); \ @@ -404,9 +406,9 @@ cleansrcdir: echo-variable-%: @echo $($*) # This makefile doesn't support parallel execution. It does pass # MOZ_MAKE_FLAGS to sub-make processes, so they will correctly execute # in parallel. .NOTPARALLEL: -.PHONY: checkout real_checkout depend build profiledbuild maybe_clobber_profiledbuild export libs alldep install clean realclean distclean cleansrcdir pull_all build_all clobber clobber_all pull_and_build_all everything configure preflight_all preflight postflight postflight_all upload sdk +.PHONY: checkout real_checkout depend realbuild build profiledbuild maybe_clobber_profiledbuild export libs alldep install clean realclean distclean cleansrcdir pull_all build_all clobber clobber_all pull_and_build_all everything configure preflight_all preflight postflight postflight_all upload sdk