In perl.git, the branch smoke-me/nicholas/build-bootstrap has been updated <http://perl5.git.perl.org/perl.git/commitdiff/599a3feff90310cf35e947c7dab081d82b9bc33c?hp=81d2d37741adf789b10635452383ba4d142ef89a>
- Log ----------------------------------------------------------------- commit 599a3feff90310cf35e947c7dab081d82b9bc33c Author: Nicholas Clark <[email protected]> Date: Sat Mar 2 11:45:41 2013 +0100 In the Win32 makefiles, depend on buildcustomize.pl instead of using $(ICWD) This ports the previous Makefile.SH change to the Win32 makefiles. However, we can't eliminate $(ICWD) completely as it's also being used for some invocations of the (real) perl binary. Only miniperl loads buildcustomize.pl to set up @INC to include paths for the initial locations of modules such as Cwd. M win32/Makefile M win32/makefile.mk commit ee854d8d9717961f5cdff4737856f78b128f3b5f Author: Nicholas Clark <[email protected]> Date: Sat Mar 2 11:22:27 2013 +0100 In the Makefile, depend on lib/buildcustomize.pl instead of using $(Icwd) The Makefile macro Icwd was used to add appropriate includes for loading the not-yet build Cwd early in the bootstrap. However, miniperl is now automatically adding the relevant paths to @INC once lib/buildcustomize.pl is available. So remove the use of $(Icwd), and instead depend on lib/buildcustomize.pl This removes duplication of the list of paths needed to add to @INC to be able to load Cwd from dist. This information is already known to write_buildcustomize.pl M Makefile.SH ----------------------------------------------------------------------- Summary of changes: Makefile.SH | 14 ++++++-------- win32/Makefile | 12 ++++++------ win32/makefile.mk | 12 ++++++------ 3 files changed, 18 insertions(+), 20 deletions(-) diff --git a/Makefile.SH b/Makefile.SH index ab4e4ca..f78ea5a 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -495,8 +495,6 @@ perltoc_pod_prereqs = extra.pods pod/perl51710delta.pod pod/perlapi.pod pod/perl generated_pods = pod/perltoc.pod $(perltoc_pod_prereqs) generated_headers = uudmap.h bitcount.h mg_data.h -Icwd = -Idist/Cwd -Idist/Cwd/lib -Idist/Carp/lib - lintflags = \ -b \ -n \ @@ -1022,8 +1020,8 @@ makeppport: \$(MINIPERL_EXE) \$(CONFIGPM) *) $spitshell >>$Makefile <<'!NO!SUBS!' .PHONY: makeppport -makeppport: $(MINIPERL_EXE) $(CONFIGPM) $(nonxs_ext) - $(MINIPERL) $(Icwd) mkppport +makeppport: $(MINIPERL_EXE) $(CONFIGPM) $(nonxs_ext) lib/buildcustomize.pl + $(MINIPERL) mkppport !NO!SUBS! ;; @@ -1047,8 +1045,8 @@ lib/buildcustomize.pl: $(MINIPERL_EXE) write_buildcustomize.pl unidatafiles $(unidatafiles) pod/perluniprops.pod: uni.data -uni.data: $(MINIPERL_EXE) $(CONFIGPM) lib/unicore/mktables $(nonxs_ext) - $(MINIPERL) $(Icwd) lib/unicore/mktables -C lib/unicore -P pod -maketest -makelist -p +uni.data: $(MINIPERL_EXE) $(CONFIGPM) lib/unicore/mktables $(nonxs_ext) lib/buildcustomize.pl + $(MINIPERL) lib/unicore/mktables -C lib/unicore -P pod -maketest -makelist -p # Commented out so always runs, mktables looks at far more files than we # can in this makefile to decide if needs to run or not # touch uni.data @@ -1064,8 +1062,8 @@ pod/perlapi.pod: pod/perlintern.pod pod/perlintern.pod: $(MINIPERL_EXE) autodoc.pl embed.fnc $(MINIPERL) autodoc.pl -pod/perlmodlib.pod: $(MINIPERL_EXE) pod/perlmodlib.PL MANIFEST - $(MINIPERL) $(Icwd) pod/perlmodlib.PL -q +pod/perlmodlib.pod: $(MINIPERL_EXE) pod/perlmodlib.PL MANIFEST lib/buildcustomize.pl + $(MINIPERL) pod/perlmodlib.PL -q pod/perl51710delta.pod: pod/perldelta.pod $(RMS) pod/perl51710delta.pod diff --git a/win32/Makefile b/win32/Makefile index 99986ca..8b0bd34 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -936,20 +936,20 @@ config.w32 : $(CFGSH_TMPL) # Edit config.vc, then make perl in a minimal configuration (i.e. with MULTI, # ITHREADS, IMP_SYS, LARGE_FILES and PERLIO off), then make this target # to regenerate config_H.vc. -regen_config_h: +regen_config_h: ..\lib\buildcustomize.pl $(MINIPERL) -I..\lib config_sh.PL $(CFG_VARS) $(CFGSH_TMPL) > ..\config.sh $(MINIPERL) -I..\lib ..\configpm --chdir=.. -del /f $(CFGH_TMPL) - -$(MINIPERL) -I..\lib $(ICWD) config_h.PL + -$(MINIPERL) -I..\lib config_h.PL rename config.h $(CFGH_TMPL) -$(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl +$(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl ..\lib\buildcustomize.pl $(MINIPERL) -I..\lib ..\configpm --chdir=.. if exist lib\* $(RCOPY) lib\*.* ..\lib\$(NULL) $(XCOPY) ..\*.h $(COREDIR)\*.* $(XCOPY) *.h $(COREDIR)\*.* $(RCOPY) include $(COREDIR)\*.* - -$(MINIPERL) -I..\lib $(ICWD) config_h.PL + -$(MINIPERL) -I..\lib config_h.PL if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM) ..\lib\buildcustomize.pl: $(MINIPERL) ..\write_buildcustomize.pl @@ -1075,8 +1075,8 @@ $(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES) $(LIBFILES) $(PERLEXEST_OBJ) $(SETARGV_OBJ) $(PERLEXE_RES) $(EMBED_EXE_MANI) -MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs - $(MINIPERL) -I..\lib $(ICWD) ..\mkppport +MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs ..\lib\buildcustomize.pl + $(MINIPERL) -I..\lib ..\mkppport #------------------------------------------------------------------------------- # There's no direct way to mark a dependency on diff --git a/win32/makefile.mk b/win32/makefile.mk index 42dd49a..5ca7ddd 100644 --- a/win32/makefile.mk +++ b/win32/makefile.mk @@ -1059,21 +1059,21 @@ config.w32 : $(CFGSH_TMPL) # Edit config.gc, then make perl using GCC in a minimal configuration (i.e. # with MULTI, ITHREADS, IMP_SYS, LARGE_FILES and PERLIO off), then make # this target to regenerate config_H.gc. -regen_config_h: +regen_config_h: ..\lib\buildcustomize.pl $(MINIPERL) -I..\lib config_sh.PL --cfgsh-option-file $(mktmp $(CFG_VARS)) \ $(CFGSH_TMPL) > ..\config.sh $(MINIPERL) -I..\lib ..\configpm --chdir=.. -del /f $(CFGH_TMPL) - -$(MINIPERL) -I..\lib $(ICWD) config_h.PL "ARCHPREFIX=$(ARCHPREFIX)" + -$(MINIPERL) -I..\lib config_h.PL "ARCHPREFIX=$(ARCHPREFIX)" rename config.h $(CFGH_TMPL) -$(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl +$(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl ..\lib\buildcustomize.pl $(MINIPERL) -I..\lib ..\configpm --chdir=.. if exist lib\* $(RCOPY) lib\*.* ..\lib\$(NULL) $(XCOPY) ..\*.h $(COREDIR)\*.* $(XCOPY) *.h $(COREDIR)\*.* $(RCOPY) include $(COREDIR)\*.* - $(MINIPERL) -I..\lib $(ICWD) config_h.PL "ARCHPREFIX=$(ARCHPREFIX)" \ + $(MINIPERL) -I..\lib config_h.PL "ARCHPREFIX=$(ARCHPREFIX)" \ || $(MAKE) $(MAKEMACROS) $(CONFIGPM) $(MAKEFILE) ..\lib\buildcustomize.pl: $(MINIPERL) ..\write_buildcustomize.pl @@ -1257,8 +1257,8 @@ $(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES) $(EMBED_EXE_MANI) .ENDIF -MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs - $(MINIPERL) -I..\lib $(ICWD) ..\mkppport +MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs ..\lib\buildcustomize.pl + $(MINIPERL) -I..\lib ..\mkppport #------------------------------------------------------------------------------- # There's no direct way to mark a dependency on -- Perl5 Master Repository
