Bug 462381 - sprinkle magic PARALLEL_DIRS fairy dust about the build system; Build more stuff in parallel (v3)
r=(benjamin, cbiesinger, smontagu, ted.mielczarek)
--- a/browser/Makefile.in
+++ b/browser/Makefile.in
@@ -30,24 +30,32 @@
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
-DEPTH = ..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
+DEPTH = ..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
include $(topsrcdir)/config/config.mk
-DIRS = base components locales themes fuel app
+PARALLEL_DIRS = \
+ base \
+ components \
+ fuel \
+ locales \
+ themes \
+ $(NULL)
+
+DIRS = app
ifeq ($(OS_ARCH),WINNT)
ifdef MOZ_INSTALLER
DIRS += installer/windows
endif
endif
include $(topsrcdir)/config/rules.mk
--- a/db/Makefile.in
+++ b/db/Makefile.in
@@ -39,18 +39,17 @@ DEPTH = ..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
ifndef NSS_DISABLE_DBM
ifdef MOZ_MORK
-DIRS = mdb mork
+PARALLEL_DIRS = mdb mork
endif
endif
ifdef MOZ_MORKREADER
-DIRS += morkreader
+PARALLEL_DIRS += morkreader
endif
include $(topsrcdir)/config/rules.mk
-
--- a/extensions/Makefile.in
+++ b/extensions/Makefile.in
@@ -37,11 +37,11 @@
DEPTH = ..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
-DIRS = $(MOZ_EXTENSIONS)
+PARALLEL_DIRS = $(MOZ_EXTENSIONS)
include $(topsrcdir)/config/rules.mk
--- a/intl/Makefile.in
+++ b/intl/Makefile.in
@@ -37,12 +37,19 @@
DEPTH = ..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
-DIRS = unicharutil uconv locale strres lwbrk build
+PARALLEL_DIRS = \
+ locale \
+ lwbrk \
+ strres \
+ uconv \
+ unicharutil \
+ $(NULL)
+
+DIRS = build
include $(topsrcdir)/config/rules.mk
-
--- a/netwerk/Makefile.in
+++ b/netwerk/Makefile.in
@@ -30,47 +30,47 @@
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
-DEPTH = ..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
+DEPTH = ..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
-MODULE = necko
+MODULE = necko
-DIRS = \
- base \
- cookie \
- dns \
- socket \
- mime \
- streamconv \
- cache \
- protocol \
- system \
- $(NULL)
+DIRS = \
+ base \
+ cookie \
+ dns \
+ socket \
+ mime \
+ streamconv \
+ cache \
+ protocol \
+ system \
+ $(NULL)
ifdef NECKO_WIFI
-DIRS += wifi
+DIRS += wifi
endif
-DIRS += \
- build \
- locales \
- $(NULL)
+DIRS += \
+ build \
+ locales \
+ $(NULL)
ifdef ENABLE_TESTS
-TOOL_DIRS += test
+TOOL_DIRS += test
endif
-EXPORTS = necko-config.h
+EXPORTS = necko-config.h
include $(topsrcdir)/config/rules.mk
DEFINES += -DIMPL_NS_NET
--- a/netwerk/protocol/Makefile.in
+++ b/netwerk/protocol/Makefile.in
@@ -30,28 +30,29 @@
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
-DEPTH = ../..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
+DEPTH = ../..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
-DIRS = about \
- data \
- res \
- file \
- http \
- viewsource \
- ftp \
- gopher \
- $(NULL)
+PARALLEL_DIRS = \
+ about \
+ data \
+ file \
+ ftp \
+ gopher \
+ http \
+ res \
+ viewsource \
+ $(NULL)
include $(topsrcdir)/config/rules.mk
DEFINES += -DIMPL_NS_NET
--- a/toolkit/Makefile.in
+++ b/toolkit/Makefile.in
@@ -38,46 +38,42 @@
DEPTH = ..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
-DIRS = \
- content \
- locales \
- obsolete \
- profile \
- themes \
- spatial-navigation \
- $(NULL)
+PARALLEL_DIRS = \
+ content \
+ locales \
+ mozapps \
+ obsolete \
+ profile \
+ spatial-navigation \
+ themes \
+ $(NULL)
-ifneq (,$(filter gtk2,$(MOZ_WIDGET_TOOLKIT)))
-DIRS += system/unixproxy
+ifneq (,$(filter gtk2 qt,$(MOZ_WIDGET_TOOLKIT)))
+PARALLEL_DIRS += system/unixproxy
endif
ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOLKIT)))
-DIRS += system/osxproxy
-endif
-
-ifneq (,$(filter qt,$(MOZ_WIDGET_TOOLKIT)))
-DIRS += system/unixproxy
+PARALLEL_DIRS += system/osxproxy
endif
ifneq (,$(filter windows,$(MOZ_WIDGET_TOOLKIT)))
-DIRS += system/windowsproxy
+PARALLEL_DIRS += system/windowsproxy
endif
ifdef MOZ_CRASHREPORTER
-DIRS += crashreporter
+PARALLEL_DIRS += crashreporter
endif
DIRS += \
- xre \
- mozapps \
- $(NULL)
+ xre
+ $(NULL)
include $(topsrcdir)/config/rules.mk
export::
@$(MAKE) -C xre export
--- a/toolkit/components/Makefile.in
+++ b/toolkit/components/Makefile.in
@@ -31,99 +31,100 @@
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
-DEPTH = ../..
+DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
-VPATH = @srcdir@
+VPATH = @srcdir@
include $(topsrcdir)/config/config.mk
# These component dirs are built for all apps (including suite)
ifdef MOZ_ENABLE_XREMOTE
-DIRS += remote
+PARALLEL_DIRS += remote
endif
-DIRS += \
- urlformatter \
- contentprefs \
- microformats \
- places \
- apppicker \
- filepicker \
- console \
- cookie \
- exthelper \
- viewconfig \
- typeaheadfind \
- parentalcontrols \
- passwordmgr \
- aboutmemory \
- $(NULL)
+
+PARALLEL_DIRS += \
+ aboutmemory \
+ apppicker \
+ commandlines \
+ console \
+ contentprefs \
+ cookie \
+ exthelper \
+ filepicker \
+ microformats \
+ parentalcontrols \
+ passwordmgr \
+ places \
+ startup \
+ typeaheadfind \
+ urlformatter \
+ viewconfig \
+ $(NULL)
ifneq (,$(filter cocoa, $(MOZ_WIDGET_TOOLKIT)))
TOOL_DIRS += alerts
else
-DIRS += alerts
+PARALLEL_DIRS += alerts
endif
ifdef MOZ_FEEDS
-DIRS += feeds
+PARALLEL_DIRS += feeds
endif
ifdef MOZ_HELP_VIEWER
-DIRS += help
+PARALLEL_DIRS += help
endif
ifdef NS_PRINTING
-DIRS += printing
+PARALLEL_DIRS += printing
endif
ifdef MOZ_VIEW_SOURCE
-DIRS += viewsource
+PARALLEL_DIRS += viewsource
endif
ifdef MOZ_XUL
-DIRS += \
+PARALLEL_DIRS += \
autocomplete \
satchel \
$(NULL)
endif
ifndef MOZ_THUNDERBIRD
ifndef MOZ_SUITE
-DIRS += search
+PARALLEL_DIRS += search
endif
endif # MOZ_THUNDERBIRD
ifdef MOZ_RDF
-DIRS += downloads
+PARALLEL_DIRS += downloads
endif
ifdef MOZ_URL_CLASSIFIER
-DIRS += url-classifier
+PARALLEL_DIRS += url-classifier
endif
ifdef MOZ_FASTSTART
-DIRS += faststart
+PARALLEL_DIRS += faststart
endif
DIRS += \
- commandlines \
- startup \
- build \
- $(NULL)
+ build \
+ $(NULL)
EXTRA_PP_COMPONENTS = nsDefaultCLH.js
ifeq ($(MOZ_BUILD_APP),camino)
DIRS += autocomplete/public
DIRS += downloads/public
endif
--- a/toolkit/mozapps/Makefile.in
+++ b/toolkit/mozapps/Makefile.in
@@ -31,18 +31,25 @@
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
-DEPTH = ../..
+DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
-VPATH = @srcdir@
+VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
-DIRS = downloads extensions update xpinstall plugins handling
+PARALLEL_DIRS = \
+ downloads \
+ extensions \
+ handling \
+ plugins \
+ update \
+ xpinstall \
+ $(NULL)
include $(topsrcdir)/config/rules.mk
--- a/uriloader/Makefile.in
+++ b/uriloader/Makefile.in
@@ -36,23 +36,22 @@
# ***** END LICENSE BLOCK *****
#
# uriloader is linked into the docshell module.
#
# Build in docshell/build to relink.
#
-DEPTH = ..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
+DEPTH = ..
+topsrcdir = @top_srcdir@
+srcdir = @srcdir@
+VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
-DIRS = \
- base \
- exthandler \
- prefetch \
- $(NULL)
+PARALLEL_DIRS = \
+ base \
+ exthandler \
+ prefetch \
+ $(NULL)
include $(topsrcdir)/config/rules.mk
-