diff options
author | Daniel Dragan <bulk88@hotmail.com> | 2015-11-04 22:34:54 -0500 |
---|---|---|
committer | Steve Hay <steve.m.hay@googlemail.com> | 2015-11-05 08:27:56 +0000 |
commit | e598d4db5a36150a31a4fd4c97f8feff6cc6bf65 (patch) | |
tree | 7a98817ef2d948c92b097d10f21b971cbd28ee13 /win32 | |
parent | a4a12576beffb0a87af8e541b0cbe0b9e1d10c9f (diff) | |
download | perl-e598d4db5a36150a31a4fd4c97f8feff6cc6bf65.tar.gz |
re-parallelize Win32 build after Unicode::Normalize got XS
commit 57dca39807 serialized the 1st and 3rd longest targets (Extensions
and UNIDATAFILES aka mktables) together after commit c6b7cc2176 which
upgraded Unicode::Normalize, and Unicode::Normalize went from PP->XS,
and the XS version requires unicore/CombiningClass.pl in
cpan/Unicode-Normalize/mkheader during U::N's building. The serialization
added about 32 second to a "dmake -P8 all" on a 8 core machine. Fix this
by spltting off U::N from Extensions and put it in its own target. Making
Extensions, the longest target slightly shorter by removing 1 module
from its workload is another plus. See perl #126564 for time savings details.
[Committer filled in RT ticket number in commit message.]
Diffstat (limited to 'win32')
-rw-r--r-- | win32/makefile.mk | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/win32/makefile.mk b/win32/makefile.mk index 5bdba0ab35..a6f46a3bf9 100644 --- a/win32/makefile.mk +++ b/win32/makefile.mk @@ -1064,7 +1064,7 @@ CFG_VARS = \ # Top targets # -all : CHECKDMAKE rebasePE $(UNIDATAFILES) Extensions_nonxs $(PERLSTATIC) +all : CHECKDMAKE rebasePE Extensions_nonxs $(PERLSTATIC) ..\regcomp$(o) : ..\regnodes.h ..\regcharclass.h @@ -1457,8 +1457,11 @@ $(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES) # DynaLoader.pm, so this will have to do #most of deps of this target are in DYNALOADER and therefore omitted here -Extensions : $(PERLDEP) $(DYNALOADER) $(GLOBEXE) $(UNIDATAFILES) - $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(PLMAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +Extensions : $(PERLDEP) $(DYNALOADER) $(GLOBEXE) + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(PLMAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic !Unicode/Normalize + +Extensions_normalize : $(PERLDEP) $(DYNALOADER) $(GLOBEXE) $(UNIDATAFILES) + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(PLMAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +Unicode/Normalize Extensions_reonly : $(PERLDEP) $(DYNALOADER) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(PLMAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +re @@ -1484,9 +1487,9 @@ Extensions_realclean : # be running in parallel like UNIDATAFILES, this target a placeholder for the # future .IF "$(BUILD_STATIC)"=="define" -rebasePE : Extensions $(PERLDLL) $(PERLEXE) $(GLOBEXE) $(PERLEXESTATIC) +rebasePE : Extensions $(PERLDLL) Extensions_normalize $(PERLEXE) $(GLOBEXE) $(PERLEXESTATIC) .ELSE -rebasePE : Extensions $(PERLDLL) $(PERLEXE) $(GLOBEXE) +rebasePE : Extensions $(PERLDLL) Extensions_normalize $(PERLEXE) $(GLOBEXE) .ENDIF $(NOOP) |