Bug 905271 - Make ICU compile with -jN (except on Windows). r=glandium
☠☠ backed out by 1ed5a88cd4d0 ☠ ☠
authorJustin Lebar <justin.lebar@gmail.com>
Wed, 14 Aug 2013 18:11:42 -0700
changeset 142697 e8bcb131ca7c161a282945df9dc56d5ce4228325
parent 142696 0d9bf482b0d0bb2988910978a6b1712365bb789d
child 142698 d9e5d14563ccb7e3c34b9a759c0a2540d8fed54f
push id25104
push useremorley@mozilla.com
push dateThu, 15 Aug 2013 10:56:09 +0000
treeherdermozilla-central@31c08ca022b3 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersglandium
bugs905271
milestone26.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 905271 - Make ICU compile with -jN (except on Windows). r=glandium
js/src/Makefile.in
--- a/js/src/Makefile.in
+++ b/js/src/Makefile.in
@@ -233,36 +233,44 @@ endif
 LOCAL_INCLUDES += \
   -I$(topsrcdir)/../../intl/icu/source/common \
   -I$(topsrcdir)/../../intl/icu/source/i18n \
   $(NULL)
 
 ifdef ENABLE_INTL_API
 
 ifeq ($(OS_ARCH),WINNT)
-  # Parallel gmake is buggy on Windows
-  ICU_GMAKE_OPTIONS="-j1"
+  # ICU doesn't work with pymake, because pymake doesn't support order-only
+  # prerequisites.
+  ifdef .PYMAKE
+    ICU_MAKE = $(GMAKE)
+  else
+    ICU_MAKE = $(MAKE)
+  endif
+
   # Library names: On Windows, ICU uses modified library names for static
   # and debug libraries.
   ifdef MOZ_DEBUG
     ICU_LIB_SUFFIX=d
   endif
   ICU_LIB_RENAME = $(foreach libname,$(ICU_LIB_NAMES),\
                      cp -p intl/icu/lib/s$(libname)$(ICU_LIB_SUFFIX).lib intl/icu/lib/$(libname).lib;)
+else
+  ICU_MAKE = $(MAKE)
 endif
 
 # - Build ICU as part of the "export" target, so things get built
 #   in the right order.
 # - ICU requires GNU make according to its readme.html. pymake can't be used
 #   because it doesn't support order only dependencies.
 # - Force ICU to use the standard suffix for object files because expandlibs
 #   will discard all files with a non-standard suffix (bug 857450).
 # - Options for genrb: -k strict parsing; -R omit collation tailoring rules.
 export::
-	$(GMAKE) $(ICU_GMAKE_OPTIONS) -C intl/icu STATIC_O=$(OBJ_SUFFIX) GENRBOPTS='-k -R'
+	+$(ICU_MAKE) -C intl/icu STATIC_O=$(OBJ_SUFFIX) GENRBOPTS='-k -R'
 	$(ICU_LIB_RENAME)
 
 distclean clean::
 	$(call SUBMAKE,$@,intl/icu)
 
 endif
 
 #