This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
remove useless build product /win32/config.w32
authorDaniel Dragan <bulk88@hotmail.com>
Wed, 4 Nov 2015 22:28:06 +0000 (17:28 -0500)
committerSteve Hay <steve.m.hay@googlemail.com>
Thu, 5 Nov 2015 08:29:16 +0000 (08:29 +0000)
CFGSH_TMPL (config.gc or config.vc) is not written to by config_sh.PL, so
there is no need to make a copy of it, this reduces 1 target node out of
dmake so there are less targets to traverse for dep checking, this also
fixes an "dmake -n" schedule irregularity where
"copy $(CFGSH_TMPL) config.w32" was scheduled (for serial) as the very
first recipie to run by dmake for a "dmake -n Extensions" but a recipie
in the middle of the procs to launch for "dmake -n Extensions_nonxs". This
schedule irregularity might be causing delays in finding parallel work to
do. Also arrange ..\config.sh target's deps from "on disk" to
"build product" order, so the left side dep nodes get marked "completed"
ASAP in the graph.

  --- C:\p523\src\win32\xs.txt
  +++ C:\p523\src\win32\nonxs.txt
  @@ -1,3 +1,4 @@
  +copy config.vc config.w32
   if not exist ".\mini" mkdir ".\mini"
   if exist config.h del /f config.h
   copy config_H.vc config.h
  @@ -141,20 +142,11 @@
        @C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mk31
   if exist ..\miniperl.exe.manifest mt -nologo -manifest **CUT**
   ..\miniperl.exe -I..\lib -f ..\write_buildcustomize.pl ..
  -copy config.vc config.w32
   ..\miniperl.exe -I..\lib config_sh.PL --cfgsh-option-file \
        C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mk32 config.w32 > ..\config.sh
   ..\miniperl.exe -I..\lib ..\configpm --chdir=..
   xcopy /f /r /i /d /y config.h ..\lib\CORE\*.*
   ..\miniperl.exe -I..\lib config_h.PL "ARCHPREFIX="

[Committer indented above diff to allow "git am" to apply the patch.]

win32/makefile.mk

index a6f46a3..dece68a 100644 (file)
@@ -1093,8 +1093,6 @@ $(GLOBEXE) : perlglob.c
        $(LIBFILES) && $(EMBED_EXE_MANI)
 .ENDIF
 
-config.w32 : $(CFGSH_TMPL)
-       copy $(CFGSH_TMPL) config.w32
 
 ..\git_version.h : $(HAVEMINIPERL) ..\make_patchnum.pl
        cd .. && miniperl -Ilib make_patchnum.pl
@@ -1102,9 +1100,9 @@ config.w32 : $(CFGSH_TMPL)
 # make sure that we recompile perl.c if the git version changes
 ..\perl$(o) : ..\git_version.h
 
-..\config.sh : config.w32 $(HAVEMINIPERL) config_sh.PL FindExt.pm
+..\config.sh : $(CFGSH_TMPL) config_sh.PL FindExt.pm $(HAVEMINIPERL)
        $(MINIPERL) -I..\lib config_sh.PL --cfgsh-option-file \
-           $(mktmp $(CFG_VARS)) config.w32 > ..\config.sh
+           $(mktmp $(CFG_VARS)) $(CFGSH_TMPL) > ..\config.sh
 
 # This target is for when changes to the main config.sh happen.
 # Edit config.gc, then make perl using GCC in a minimal configuration (i.e.
@@ -1754,7 +1752,6 @@ _clean :
        -@erase perlglob$(o)
        -@erase perlmain$(o)
        -@erase perlmainst$(o)
-       -@erase config.w32
        -@erase /f config.h
        -@erase /f ..\git_version.h
        -@erase $(GLOBEXE)