X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/298a2886e2e4369d1549a8de440169a90ca1909a..96b425ede5ee8d35bb6ccaade9e6b785575c9ffc:/win32/Makefile diff --git a/win32/Makefile b/win32/Makefile index 9553f2c..2a35c31 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -5,7 +5,7 @@ # Windows SDK 64-bit compiler and tools # # This is set up to build a perl.exe that runs off a shared library -# (perl513.dll). Also makes individual DLLs for the XS extensions. +# (perl514.dll). Also makes individual DLLs for the XS extensions. # ## @@ -37,7 +37,7 @@ INST_TOP = $(INST_DRV)\perl # versioned installation can be obtained by setting INST_TOP above to a # path that includes an arbitrary version string. # -#INST_VER = \5.13.9 +#INST_VER = \5.14.0 # # Comment this out if you DON'T want your perl installation to have @@ -152,7 +152,7 @@ CCTYPE = MSVC60 # set this to additionally provide a statically linked perl-static.exe. # Note that dynamic loading will not work with this perl, so you must # include required modules statically using the STATIC_EXT or ALL_STATIC -# variables below. A static library perl513s.lib will also be created. +# variables below. A static library perl514s.lib will also be created. # Ordinary perl.exe is not affected by this option. # #BUILD_STATIC = define @@ -190,10 +190,16 @@ BUILDOPT = $(BUILDOPTEXTRA) #BUILDOPT = $(BUILDOPT) -DPERL_EXTERNAL_GLOB # -# This should normally be disabled. Enabling it causes perl to read scripts -# in text mode (which is the 5.005 behavior) and will break ByteLoader. +# Perl needs to read scripts in text mode so that the DATA filehandle +# works correctly with seek() and tell(), or around auto-flushes of +# all filehandles (e.g. by system(), backticks, fork(), etc). # -#BUILDOPT = $(BUILDOPT) -DPERL_TEXTMODE_SCRIPTS +# The current version on the ByteLoader module on CPAN however only +# works if scripts are read in binary mode. But before you disable text +# mode script reading (and break some DATA filehandle functionality) +# please check first if an updated ByteLoader isn't available on CPAN. +# +BUILDOPT = $(BUILDOPT) -DPERL_TEXTMODE_SCRIPTS # # specify semicolon-separated list of extra directories that modules will @@ -510,9 +516,9 @@ $(o).dll: # makedef.pl must be updated if this changes, and this should normally # only change when there is an incompatible revision of the public API. -PERLIMPLIB = ..\perl513.lib -PERLSTATICLIB = ..\perl513s.lib -PERLDLL = ..\perl513.dll +PERLIMPLIB = ..\perl514.lib +PERLSTATICLIB = ..\perl514s.lib +PERLDLL = ..\perl514.dll MINIPERL = ..\miniperl.exe MINIDIR = .\mini @@ -529,7 +535,7 @@ PERLSTATIC = static !ELSE PERLSTATIC = !ENDIF - + # Unicode data files generated by mktables FIRSTUNIFILE = ..\lib\unicore\Decomposition.pl UNIDATAFILES = ..\lib\unicore\Decomposition.pl \ @@ -582,6 +588,7 @@ UTILS = \ ..\utils\cpan2dist \ ..\utils\shasum \ ..\utils\instmodsh \ + ..\utils\json_pp \ ..\x2p\find2perl \ ..\x2p\psed \ ..\x2p\s2p \ @@ -620,6 +627,7 @@ MICROCORE_SRC = \ ..\mro.c \ ..\hv.c \ ..\locale.c \ + ..\keywords.c \ ..\mathoms.c \ ..\mg.c \ ..\numeric.c \ @@ -794,7 +802,7 @@ all : .\config.h ..\git_version.h $(GLOBEXE) $(MINIMOD) $(CONFIGPM) \ regnodes : ..\regnodes.h -..\regcomp$(o) : ..\regnodes.h ..\regcharclass.h +..\regcomp$(o) : ..\regnodes.h ..\regcharclass.h ..\regexec$(o) : ..\regnodes.h ..\regcharclass.h @@ -852,11 +860,13 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl if exist lib\* $(RCOPY) lib\*.* ..\lib\$(NULL) $(XCOPY) ..\*.h $(COREDIR)\*.* $(XCOPY) *.h $(COREDIR)\*.* - $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.* $(RCOPY) include $(COREDIR)\*.* -$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM) +..\lib\buildcustomize.pl: $(MINIPERL) ..\write_buildcustomize.pl + $(MINIPERL) -I..\lib ..\write_buildcustomize.pl .. >..\lib\buildcustomize.pl + $(MINIPERL) : $(MINIDIR) $(MINI_OBJ) $(LINK32) -subsystem:console -out:$@ @<< $(LINK_FLAGS) $(LIBFILES) $(MINI_OBJ) @@ -981,24 +991,24 @@ MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs #------------------------------------------------------------------------------- # There's no direct way to mark a dependency on # DynaLoader.pm, so this will have to do -Extensions: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) +Extensions: ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) $(XCOPY) ..\*.h $(COREDIR)\*.* $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic -Extensions_reonly: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) +Extensions_reonly: ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) $(XCOPY) ..\*.h $(COREDIR)\*.* $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +re -Extensions_static : ..\make_ext.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM) +Extensions_static : ..\make_ext.pl ..\lib\buildcustomize.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM) $(XCOPY) ..\*.h $(COREDIR)\*.* $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --static $(MINIPERL) -I..\lib list_static_libs.pl > Extensions_static -Extensions_nonxs: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) +Extensions_nonxs: ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) $(XCOPY) ..\*.h $(COREDIR)\*.* $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --nonxs -$(DYNALOADER) : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs +$(DYNALOADER) : ..\make_ext.pl ..\lib\buildcustomize.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs $(XCOPY) ..\*.h $(COREDIR)\*.* $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynaloader @@ -1059,7 +1069,7 @@ utils: $(PERLEXE) $(X2P) copy ..\README.vmesa ..\pod\perlvmesa.pod copy ..\README.vos ..\pod\perlvos.pod copy ..\README.win32 ..\pod\perlwin32.pod - copy ..\pod\perldelta.pod ..\pod\perl5139delta.pod + copy ..\pod\perldelta.pod ..\pod\perl5140delta.pod cd ..\win32 $(PERLEXE) $(PL2BAT) $(UTILS) $(PERLEXE) $(ICWD) ..\autodoc.pl .. @@ -1093,6 +1103,7 @@ distclean: realclean -del /f $(LIBDIR)\Win32CORE.pm -del /f $(LIBDIR)\Win32API\File.pm -del /f $(LIBDIR)\Win32API\File\cFile.pc + -del /f $(LIBDIR)\buildcustomize.pl -del /f $(DISTDIR)\XSLoader\XSLoader.pm -if exist $(LIBDIR)\App rmdir /s /q $(LIBDIR)\App -if exist $(LIBDIR)\Archive rmdir /s /q $(LIBDIR)\Archive @@ -1151,7 +1162,7 @@ distclean: realclean -if exist $(LIBDIR)\XS rmdir /s /q $(LIBDIR)\XS -if exist $(LIBDIR)\Win32API rmdir /s /q $(LIBDIR)\Win32API -cd $(PODDIR) && del /f *.html *.bat \ - perl5139delta.pod perlaix.pod perlamiga.pod perlapi.pod \ + perl5140delta.pod perlaix.pod perlamiga.pod perlapi.pod \ perlbeos.pod perlbs2000.pod perlce.pod perlcn.pod \ perlcygwin.pod perldgux.pod perldos.pod perlepoc.pod \ perlfreebsd.pod perlhaiku.pod perlhpux.pod perlhurd.pod \ @@ -1164,7 +1175,7 @@ distclean: realclean perlvos.pod perlwin32.pod -cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph pstruct h2xs \ perldoc perlivp dprofpp libnetcfg enc2xs piconv cpan *.bat \ - xsubpp instmodsh prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum corelist config_data + xsubpp instmodsh json_pp prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum corelist config_data -cd ..\x2p && del /f find2perl s2p psed *.bat -del /f ..\config.sh perlmain.c dlutils.c config.h.new \ perlmainst.c @@ -1214,7 +1225,7 @@ minitest : $(MINIPERL) $(GLOBEXE) $(CONFIGPM) utils $(UNIDATAFILES) cd ..\t && \ $(MINIPERL) -I..\lib harness base/*.t comp/*.t cmd/*.t io/*.t op/*.t pragma/*.t -test-prep : all utils +test-prep : all utils ../pod/perltoc.pod $(XCOPY) $(PERLEXE) ..\t\$(NULL) $(XCOPY) $(PERLDLL) ..\t\$(NULL) $(XCOPY) $(GLOBEXE) ..\t\$(NULL)