X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=win32%2FMakefile;h=e44308f104402d160bb33e75f7b2695621da571d;hb=d4438f940607d4d475fcd9312e68e0c99c6c6d8b;hp=dccade2b3a96987610ab99f85629ec9d54b027be;hpb=8c4561fbb4b02a2171ebce641e7cb62696b86417;p=p5sagit%2Fp5-mst-13.2.git diff --git a/win32/Makefile b/win32/Makefile index dccade2..e44308f 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -5,7 +5,7 @@ # MS Platform SDK 64-bit compiler and tools # # This is set up to build a perl.exe that runs off a shared library -# (perl511.dll). Also makes individual DLLs for the XS extensions. +# (perl513.dll). Also makes individual DLLs for the XS extensions. # ## @@ -24,6 +24,11 @@ INST_DRV = c: INST_TOP = $(INST_DRV)\perl # +# Uncomment if you want to build a 32-bit Perl using a 32-bit compiler +# on a 64-bit version of Windows. +#WIN64 = undef + +# # Comment this out if you DON'T want your perl installation to be versioned. # This means that the new installation will overwrite any files from the # old installation at the same INST_TOP location. Leaving it enabled is @@ -32,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.11.0 +#INST_VER = \5.13.0 # # Comment this out if you DON'T want your perl installation to have @@ -170,7 +175,7 @@ CRYPT_SRC = fcrypt.c # 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 perl511s.lib will also be created. +# variables below. A static library perl513s.lib will also be created. # Ordinary perl.exe is not affected by this option. # #BUILD_STATIC = define @@ -383,22 +388,21 @@ DELAYLOAD = -DELAYLOAD:ws2_32.dll delayimp.lib # Visual C++ 2005 and 2008 (VC++ 8.x and 9.x) create manifest files for EXEs and # DLLs. These either need copying everywhere with the binaries, or else need -# embedding in them otherwise MSVCR80.dll or MSVCR90.dll won't be found. Embed -# them for simplicity, and delete them afterwards so that they don't get -# installed too. -!IF "$(CCTYPE)" == "MSVC80" || "$(CCTYPE)" == "MSVC80FREE" || \ - "$(CCTYPE)" == "MSVC90" || "$(CCTYPE)" == "MSVC90FREE" +# embedding in them otherwise MSVCR80.dll or MSVCR90.dll won't be found. For +# simplicity, embed them if they exist (and delete them afterwards so that they +# don't get installed too). EMBED_EXE_MANI = if exist $@.manifest mt -nologo -manifest $@.manifest -outputresource:$@;1 && \ if exist $@.manifest del $@.manifest EMBED_DLL_MANI = if exist $@.manifest mt -nologo -manifest $@.manifest -outputresource:$@;2 && \ if exist $@.manifest del $@.manifest -!ENDIF ARCHDIR = ..\lib\$(ARCHNAME) COREDIR = ..\lib\CORE AUTODIR = ..\lib\auto LIBDIR = ..\lib EXTDIR = ..\ext +DISTDIR = ..\dist +CPANDIR = ..\cpan PODDIR = ..\pod EXTUTILSDIR = $(LIBDIR)\ExtUtils HTMLDIR = .\html @@ -490,7 +494,7 @@ LIBBASEFILES = $(CRYPT_LIB) \ oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib \ comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib \ netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib \ - version.lib odbc32.lib odbccp32.lib + version.lib odbc32.lib odbccp32.lib comctl32.lib # The 64 bit Platform SDK compilers contain a runtime library that doesn't # include the buffer overrun verification code used by the /GS switch. @@ -516,6 +520,14 @@ EXEOUT_FLAG = -Fe CFLAGS_O = $(CFLAGS) $(BUILDOPT) +!IF "$(CCTYPE)" == "MSVC80" || "$(CCTYPE)" == "MSVC80FREE" || \ + "$(CCTYPE)" == "MSVC90" || "$(CCTYPE)" == "MSVC90FREE" +LINK_FLAGS = $(LINK_FLAGS) "/manifestdependency:type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'" +!ELSE +RSC_FLAGS = -DINCLUDE_MANIFEST +!ENDIF + + #################### do not edit below this line ####################### ############# NO USER-SERVICEABLE PARTS BEYOND THIS POINT ############## @@ -539,16 +551,16 @@ $(o).dll: $(EMBED_DLL_MANI) .rc.res: - $(RSC) -i.. $< + $(RSC) -i.. $(RSC_FLAGS) $< # # various targets # 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 = ..\perl511.lib -PERLSTATICLIB = ..\perl511s.lib -PERLDLL = ..\perl511.dll +PERLIMPLIB = ..\perl513.lib +PERLSTATICLIB = ..\perl513s.lib +PERLDLL = ..\perl513.dll MINIPERL = ..\miniperl.exe MINIDIR = .\mini @@ -567,16 +579,17 @@ PERLSTATIC = !ENDIF # Unicode data files generated by mktables -FIRSTUNIFILE = ..\lib\unicore\Canonical.pl -UNIDATAFILES = ..\lib\unicore\Canonical.pl ..\lib\unicore\Exact.pl \ - ..\lib\unicore\Properties ..\lib\unicore\Decomposition.pl \ +FIRSTUNIFILE = ..\lib\unicore\Decomposition.pl +UNIDATAFILES = ..\lib\unicore\Decomposition.pl \ ..\lib\unicore\CombiningClass.pl ..\lib\unicore\Name.pl \ - ..\lib\unicore\PVA.pl + ..\lib\unicore\Heavy.pl ..\lib\unicore\mktables.lst \ + ..\lib\unicore\TestProp.pl # Directories of Unicode data files generated by mktables UNIDATADIR1 = ..\lib\unicore\To UNIDATADIR2 = ..\lib\unicore\lib +PERLEXE_MANIFEST= .\perlexe.manifest PERLEXE_ICO = .\perlexe.ico PERLEXE_RES = .\perlexe.res PERLDLL_RES = @@ -650,12 +663,6 @@ NULL = DEL = del -# -# filenames given to xsubpp must have forward slashes (since it puts -# full pathnames in #line strings) -XSUBPP = ..\$(MINIPERL) -I..\..\lib ..\$(EXTUTILSDIR)\xsubpp \ - -C++ -prototypes - MICROCORE_SRC = \ ..\av.c \ ..\deb.c \ @@ -691,8 +698,7 @@ MICROCORE_SRC = \ ..\toke.c \ ..\universal.c \ ..\utf8.c \ - ..\util.c \ - ..\xsutils.c + ..\util.c EXTRACORE_SRC = $(EXTRACORE_SRC) perllib.c @@ -717,8 +723,6 @@ WIN32_SRC = $(WIN32_SRC) .\win32io.c WIN32_SRC = $(WIN32_SRC) .\$(CRYPT_SRC) !ENDIF -DLL_SRC = $(DYNALOADER).c - X2P_SRC = \ ..\x2p\a2p.c \ ..\x2p\hash.c \ @@ -769,6 +773,7 @@ CORE_NOCFG_H = \ CORE_H = $(CORE_NOCFG_H) .\config.h ..\git_version.h UUDMAP_H = ..\uudmap.h +BITCOUNT_H = ..\bitcount.h MICROCORE_OBJ = $(MICROCORE_SRC:.c=.obj) CORE_OBJ = $(MICROCORE_OBJ) $(EXTRACORE_SRC:.c=.obj) @@ -778,7 +783,7 @@ MINICORE_OBJ = $(MICROCORE_OBJ:..\=.\mini\) \ $(MINIDIR)\perlio$(o) MINIWIN32_OBJ = $(WIN32_OBJ:.\=.\mini\) MINI_OBJ = $(MINICORE_OBJ) $(MINIWIN32_OBJ) -DLL_OBJ = $(DLL_SRC:.c=.obj) +DLL_OBJ = $(DYNALOADER) X2P_OBJ = $(X2P_SRC:.c=.obj) GENUUDMAP_OBJ = $(GENUUDMAP:.exe=.obj) @@ -804,7 +809,7 @@ STATIC_EXT = * !Win32 !SDBM_File !Encode STATIC_EXT = Win32CORE !ENDIF -DYNALOADER = $(EXTDIR)\DynaLoader\DynaLoader +DYNALOADER = ..\DynaLoader$(o) CFG_VARS = \ "INST_DRV=$(INST_DRV)" \ @@ -834,12 +839,14 @@ CFG_VARS = \ "LINK_FLAGS=$(LINK_FLAGS:"=\")" \ "optimize=$(OPTIMIZE:"=\")" +ICWD = -I..\cpan\Cwd -I..\cpan\Cwd\lib + # # Top targets # all : .\config.h ..\git_version.h $(GLOBEXE) $(MINIMOD) $(CONFIGPM) \ - $(UNIDATAFILES) MakePPPort $(PERLEXE) $(X2P) Extensions $(PERLSTATIC) + $(UNIDATAFILES) MakePPPort $(PERLEXE) $(X2P) Extensions_nonxs Extensions $(PERLSTATIC) @echo Everything is up to date. '$(MAKE_BARE) test' to run test suite. ..\regcharclass.h : ..\Porting\regcharclass.pl @@ -857,8 +864,6 @@ reonly : regnodes .\config.h ..\git_version.h $(GLOBEXE) $(MINIMOD) $(CONFIGPM) $(UNIDATAFILES) $(PERLEXE) $(X2P) Extensions_reonly @echo Perl and 're' are up to date. -$(DYNALOADER)$(o) : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c - static: $(PERLEXESTATIC) #------------------------------------------------------------ @@ -877,14 +882,13 @@ config.w32 : $(CFGSH_TMPL) -del /f config.h copy $(CFGH_TMPL) config.h -make_patchnum : $(MINIPERL) +..\git_version.h : $(MINIPERL) ..\make_patchnum.pl cd .. miniperl -Ilib make_patchnum.pl cd win32 -..\git_version.h : ..\stock_git_version.h - -del /f ..\git_version.h - copy ..\stock_git_version.h ..\git_version.h +# make sure that we recompile perl.c if the git version changes +..\perl$(o) : ..\git_version.h ..\config.sh : config.w32 $(MINIPERL) config_sh.PL $(MINIPERL) -I..\lib config_sh.PL $(CFG_VARS) config.w32 > ..\config.sh @@ -900,23 +904,19 @@ make_patchnum : $(MINIPERL) # the special __GNUC__ handling that is otherwise lost. regen_config_h: $(MINIPERL) -I..\lib config_sh.PL $(CFG_VARS) $(CFGSH_TMPL) > ..\config.sh - cd .. - miniperl configpm - cd win32 + $(MINIPERL) -I..\lib ..\configpm --chdir=.. -del /f $(CFGH_TMPL) - -$(MINIPERL) -I..\lib config_h.PL "INST_VER=$(INST_VER)" + -$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" rename config.h $(CFGH_TMPL) $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl - cd .. - miniperl configpm - cd win32 + $(MINIPERL) -I..\lib ..\configpm --chdir=.. 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 config_h.PL "INST_VER=$(INST_VER)" + -$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM) $(MINIPERL) : $(MINIDIR) $(MINI_OBJ) @@ -943,6 +943,7 @@ perllib$(o) : perllib.c .\perlhost.h .\vdir.h .\vmem.h # 1. we don't want to rebuild miniperl.exe when config.h changes # 2. we don't want to rebuild miniperl.exe with non-default config.h +# 3. we can't have miniperl.exe depend on git_version.h, as miniperl creates it $(MINI_OBJ) : $(CORE_NOCFG_H) $(WIN32_OBJ) : $(CORE_H) @@ -950,9 +951,9 @@ $(CORE_OBJ) : $(CORE_H) $(DLL_OBJ) : $(CORE_H) $(X2P_OBJ) : $(CORE_H) -perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym ..\pp.sym ..\makedef.pl - $(MINIPERL) -I..\lib buildext.pl --create-perllibst-h - $(MINIPERL) -w ..\makedef.pl PLATFORM=win32 $(OPTIMIZE) $(DEFINES) $(BUILDOPT) \ +perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym ..\pp.sym ..\makedef.pl create_perllibst_h.pl + $(MINIPERL) -I..\lib create_perllibst_h.pl + $(MINIPERL) -I..\lib -w ..\makedef.pl PLATFORM=win32 $(OPTIMIZE) $(DEFINES) $(BUILDOPT) \ CCTYPE=$(CCTYPE) > perldll.def $(PERLDLL): perldll.def $(PERLDLL_OBJ) $(PERLDLL_RES) Extensions_static @@ -968,10 +969,7 @@ $(PERLSTATICLIB): Extensions_static << $(XCOPY) $(PERLSTATICLIB) $(COREDIR) -$(PERLEXE_ICO): $(MINIPERL) ..\uupacktool.pl $(PERLEXE_ICO).packd - $(MINIPERL) -I..\lib ..\uupacktool.pl -u $(PERLEXE_ICO).packd $(PERLEXE_ICO) - -$(PERLEXE_RES): perlexe.rc $(PERLEXE_ICO) +$(PERLEXE_RES): perlexe.rc $(PERLEXE_MANIFEST) $(PERLEXE_ICO) $(MINIMOD) : $(MINIPERL) ..\minimod.pl cd .. @@ -993,18 +991,18 @@ $(MINIMOD) : $(MINIPERL) ..\minimod.pl ..\x2p\walk$(o) : ..\x2p\walk.c $(CC) -I..\x2p $(CFLAGS) $(OBJOUT_FLAG)$@ -c ..\x2p\walk.c -$(X2P) : $(MINIPERL) $(X2P_OBJ) - $(MINIPERL) ..\x2p\find2perl.PL - $(MINIPERL) ..\x2p\s2p.PL +$(X2P) : $(MINIPERL) $(X2P_OBJ) Extensions + $(MINIPERL) -I..\lib ..\x2p\find2perl.PL + $(MINIPERL) -I..\lib ..\x2p\s2p.PL $(LINK32) -subsystem:console -out:$@ @<< $(LINK_FLAGS) $(LIBFILES) $(X2P_OBJ) << $(EMBED_EXE_MANI) -$(MINIDIR)\globals$(o) : $(UUDMAP_H) +$(MINIDIR)\globals$(o) : $(UUDMAP_H) $(BITCOUNT_H) -$(UUDMAP_H) : $(GENUUDMAP) - $(GENUUDMAP) >$(UUDMAP_H) +$(UUDMAP_H) $(BITCOUNT_H) : $(GENUUDMAP) + $(GENUUDMAP) $(UUDMAP_H) $(BITCOUNT_H) $(GENUUDMAP) : $(GENUUDMAP_OBJ) $(LINK32) -subsystem:console -out:$@ @<< @@ -1024,70 +1022,55 @@ perlmainst.c : runperl.c perlmainst$(o) : perlmainst.c $(CC) $(CFLAGS_O) $(OBJOUT_FLAG)$@ -c perlmainst.c -$(PERLEXE): make_patchnum $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES) +$(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES) $(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(LINK_FLAGS) \ $(LIBFILES) $(PERLEXE_OBJ) $(SETARGV_OBJ) $(PERLIMPLIB) $(PERLEXE_RES) $(EMBED_EXE_MANI) copy $(PERLEXE) $(WPERLEXE) $(MINIPERL) -I..\lib bin\exetype.pl $(WPERLEXE) WINDOWS - copy splittree.pl .. - $(MINIPERL) -I..\lib ..\splittree.pl "../LIB" $(AUTODIR) -$(PERLEXESTATIC): make_patchnum $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES) +$(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES) $(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(LINK_FLAGS) \ @Extensions_static $(PERLSTATICLIB) /PDB:NONE \ $(LIBFILES) $(PERLEXEST_OBJ) $(SETARGV_OBJ) $(PERLEXE_RES) $(EMBED_EXE_MANI) -$(DYNALOADER).c: $(MINIPERL) $(EXTDIR)\DynaLoader\dl_win32.xs $(CONFIGPM) - if not exist $(AUTODIR) mkdir $(AUTODIR) - cd $(EXTDIR)\$(*B) - ..\$(MINIPERL) -I..\..\lib $(*B)_pm.PL - ..\$(MINIPERL) -I..\..\lib XSLoader_pm.PL - cd ..\..\win32 - $(XCOPY) $(EXTDIR)\$(*B)\$(*B).pm $(LIBDIR)\$(NULL) - $(XCOPY) $(EXTDIR)\$(*B)\XSLoader.pm $(LIBDIR)\$(NULL) - cd $(EXTDIR)\$(*B) - $(XSUBPP) dl_win32.xs > $(*B).c - cd ..\..\win32 +MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs + $(MINIPERL) -I..\lib $(ICWD) ..\mkppport -$(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs - copy dl_win32.xs $(EXTDIR)\DynaLoader\dl_win32.xs - -MakePPPort: $(MINIPERL) $(CONFIGPM) - $(MINIPERL) -I..\lib ..\mkppport +#------------------------------------------------------------------------------- +# 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) + $(XCOPY) ..\*.h $(COREDIR)\*.* + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic -MakePPPort_clean: - -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\mkppport --clean +Extensions_reonly: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) + $(XCOPY) ..\*.h $(COREDIR)\*.* + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic +re -#------------------------------------------------------------------------------- -Extensions: buildext.pl $(PERLDEP) $(CONFIGPM) +Extensions_static : ..\make_ext.pl list_static_libs.pl $(PERLDEP) $(CONFIGPM) $(XCOPY) ..\*.h $(COREDIR)\*.* - $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) --dynamic - -if exist ext $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) ext --dynamic + $(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_reonly: buildext.pl $(PERLDEP) $(CONFIGPM) +Extensions_nonxs: ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(XCOPY) ..\*.h $(COREDIR)\*.* - $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) --dynamic +re - -if exist ext $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) ext --dynamic +re + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --nonxs -Extensions_static : buildext.pl $(PERLDEP) $(CONFIGPM) +$(DYNALOADER) : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs $(XCOPY) ..\*.h $(COREDIR)\*.* - $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) --static - -if exist ext $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) ext --static - $(MINIPERL) -I..\lib buildext.pl --list-static-libs > Extensions_static + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynaloader Extensions_clean: - -if exist $(MINIPERL) $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) clean - -if exist $(MINIPERL) if exist ext $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) ext clean + -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=clean Extensions_realclean: - -if exist $(MINIPERL) $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) realclean - -if exist $(MINIPERL) if exist ext $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) ext realclean + -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=realclean #------------------------------------------------------------------------------- -doc: $(PERLEXE) +doc: $(PERLEXE) ..\pod\perltoc.pod $(PERLEXE) -I..\lib ..\installhtml --podroot=.. --htmldir=$(HTMLDIR) \ --podpath=pod:lib:ext:utils --htmlroot="file://$(INST_HTML::=|)" \ --libpod=perlfunc:perlguts:perlvar:perlrun:perlop --recurse @@ -1099,7 +1082,6 @@ utils: $(PERLEXE) $(X2P) cd ..\utils $(MAKE) PERL=$(MINIPERL) cd ..\pod - copy ..\vms\perlvms.pod .\perlvms.pod copy ..\README.aix ..\pod\perlaix.pod copy ..\README.amiga ..\pod\perlamiga.pod copy ..\README.apollo ..\pod\perlapollo.pod @@ -1119,10 +1101,8 @@ utils: $(PERLEXE) $(X2P) copy ..\README.jp ..\pod\perljp.pod copy ..\README.ko ..\pod\perlko.pod copy ..\README.linux ..\pod\perllinux.pod - copy ..\README.machten ..\pod\perlmachten.pod copy ..\README.macos ..\pod\perlmacos.pod copy ..\README.macosx ..\pod\perlmacosx.pod - copy ..\README.mint ..\pod\perlmint.pod copy ..\README.mpeix ..\pod\perlmpeix.pod copy ..\README.netware ..\pod\perlnetware.pod copy ..\README.openbsd ..\pod\perlopenbsd.pod @@ -1138,15 +1118,17 @@ utils: $(PERLEXE) $(X2P) copy ..\README.tw ..\pod\perltw.pod copy ..\README.uts ..\pod\perluts.pod copy ..\README.vmesa ..\pod\perlvmesa.pod - copy ..\README.vms ..\pod\perlvms.pod copy ..\README.vos ..\pod\perlvos.pod copy ..\README.win32 ..\pod\perlwin32.pod - copy ..\pod\perl5110delta.pod ..\pod\perldelta.pod + copy ..\pod\perl5131delta.pod ..\pod\perldelta.pod $(MAKE) -f ..\win32\pod.mak converters - cd ..\lib - $(PERLEXE) lib_pm.PL cd ..\win32 $(PERLEXE) $(PL2BAT) $(UTILS) + $(PERLEXE) $(ICWD) ..\autodoc.pl .. + $(PERLEXE) $(ICWD) ..\pod\perlmodlib.pl -q + +..\pod\perltoc.pod: $(PERLEXE) Extensions Extensions_nonxs + $(PERLEXE) -f ..\pod\buildtoc --build-toc -q # Note that the pod cleanup in this next section is parsed (and regenerated # by pod/buildtoc so please check that script before making changes here @@ -1156,29 +1138,16 @@ distclean: realclean $(PERLIMPLIB) ..\miniperl.lib $(MINIMOD) \ $(PERLEXESTATIC) $(PERLSTATICLIB) -del /f *.def *.map - -del /f $(DYNALOADER).c - -del /f $(EXTDIR)\DynaLoader\dl_win32.xs - -del /f $(EXTDIR)\DynaLoader\DynaLoader.pm - -del /f $(EXTDIR)\DynaLoader\XSLoader.pm -del /f $(LIBDIR)\Encode.pm $(LIBDIR)\encoding.pm $(LIBDIR)\Errno.pm -del /f $(LIBDIR)\Config.pod $(LIBDIR)\POSIX.pod $(LIBDIR)\threads.pm - -del /f $(LIBDIR)\.exists $(LIBDIR)\attrs.pm $(LIBDIR)\DynaLoader.pm - -del /f $(LIBDIR)\XSLoader.pm $(LIBDIR)\lib.pm + -del /f $(LIBDIR)\.exists $(LIBDIR)\attributes.pm $(LIBDIR)\DynaLoader.pm -del /f $(LIBDIR)\Fcntl.pm $(LIBDIR)\IO.pm $(LIBDIR)\Opcode.pm -del /f $(LIBDIR)\ops.pm $(LIBDIR)\Safe.pm -del /f $(LIBDIR)\SDBM_File.pm $(LIBDIR)\Socket.pm $(LIBDIR)\POSIX.pm -del /f $(LIBDIR)\B.pm $(LIBDIR)\O.pm $(LIBDIR)\re.pm - -del /f $(LIBDIR)\Devel\Peek.pm $(LIBDIR)\Devel\DProf.pm - -del /f $(LIBDIR)\Devel\PPPort.pm -del /f $(LIBDIR)\File\Glob.pm -del /f $(LIBDIR)\Storable.pm - -del /f $(LIBDIR)\Digest\MD5.pm - -del /f $(LIBDIR)\Digest\SHA.pm - -del /f $(LIBDIR)\PerlIO\encoding.pm - -del /f $(LIBDIR)\PerlIO\scalar.pm - -del /f $(LIBDIR)\PerlIO\via.pm -del /f $(LIBDIR)\Sys\Hostname.pm - -del /f $(LIBDIR)\threads\shared.pm -del /f $(LIBDIR)\Time\HiRes.pm -del /f $(LIBDIR)\Unicode\Normalize.pm -del /f $(LIBDIR)\Math\BigInt\FastCalc.pm @@ -1186,54 +1155,91 @@ distclean: realclean -del /f $(LIBDIR)\Win32CORE.pm -del /f $(LIBDIR)\Win32API\File.pm -del /f $(LIBDIR)\Win32API\File\cFile.pc + -del /f $(DISTDIR)\XSLoader\XSLoader.pm + -if exist $(LIBDIR)\App rmdir /s /q $(LIBDIR)\App + -if exist $(LIBDIR)\Archive rmdir /s /q $(LIBDIR)\Archive + -if exist $(LIBDIR)\Attribute rmdir /s /q $(LIBDIR)\Attribute + -if exist $(LIBDIR)\autodie rmdir /s /q $(LIBDIR)\autodie -if exist $(LIBDIR)\B rmdir /s /q $(LIBDIR)\B + -if exist $(LIBDIR)\CGI rmdir /s /q $(LIBDIR)\CGI + -if exist $(LIBDIR)\CPAN rmdir /s /q $(LIBDIR)\CPAN + -if exist $(LIBDIR)\CPANPLUS rmdir /s /q $(LIBDIR)\CPANPLUS -if exist $(LIBDIR)\Compress rmdir /s /q $(LIBDIR)\Compress -if exist $(LIBDIR)\Data rmdir /s /q $(LIBDIR)\Data + -if exist $(LIBDIR)\Devel rmdir /s /q $(LIBDIR)\Devel + -if exist $(LIBDIR)\Digest rmdir /s /q $(LIBDIR)\Digest -if exist $(LIBDIR)\Encode rmdir /s /q $(LIBDIR)\Encode - -if exist $(LIBDIR)\Filter\Util rmdir /s /q $(LIBDIR)\Filter\Util + -if exist $(LIBDIR)\encoding rmdir /s /q $(LIBDIR)\encoding + -if exist $(LIBDIR)\ExtUtils\CBuilder rmdir /s /q $(LIBDIR)\ExtUtils\CBuilder + -if exist $(LIBDIR)\ExtUtils\Command rmdir /s /q $(LIBDIR)\ExtUtils\Command + -if exist $(LIBDIR)\ExtUtils\Constant rmdir /s /q $(LIBDIR)\ExtUtils\Constant + -if exist $(LIBDIR)\ExtUtils\Liblist rmdir /s /q $(LIBDIR)\ExtUtils\Liblist + -if exist $(LIBDIR)\ExtUtils\MakeMaker rmdir /s /q $(LIBDIR)\ExtUtils\MakeMaker + -if exist $(LIBDIR)\File\Spec rmdir /s /q $(LIBDIR)\File\Spec + -if exist $(LIBDIR)\Filter rmdir /s /q $(LIBDIR)\Filter -if exist $(LIBDIR)\Hash rmdir /s /q $(LIBDIR)\Hash - -if exist $(LIBDIR)\App rmdir /s /q $(LIBDIR)\App + -if exist $(LIBDIR)\I18N\LangTags rmdir /s /q $(LIBDIR)\I18N\LangTags + -if exist $(LIBDIR)\inc rmdir /s /q $(LIBDIR)\inc -if exist $(LIBDIR)\Module\Pluggable rmdir /s /q $(LIBDIR)\Module\Pluggable - -if exist $(LIBDIR)\TAP rmdir /s /q $(LIBDIR)\TAP - -if exist $(LIBDIR)\mro rmdir /s /q $(LIBDIR)\mro - -if exist $(LIBDIR)\IO\Compress rmdir /s /q $(LIBDIR)\IO\Compress - -if exist $(LIBDIR)\IO\Socket rmdir /s /q $(LIBDIR)\IO\Socket - -if exist $(LIBDIR)\IO\Uncompress rmdir /s /q $(LIBDIR)\IO\Uncompress + -if exist $(LIBDIR)\IO rmdir /s /q $(LIBDIR)\IO + -if exist $(LIBDIR)\IPC rmdir /s /q $(LIBDIR)\IPC -if exist $(LIBDIR)\List rmdir /s /q $(LIBDIR)\List + -if exist $(LIBDIR)\Locale rmdir /s /q $(LIBDIR)\Locale + -if exist $(LIBDIR)\Log rmdir /s /q $(LIBDIR)\Log + -if exist $(LIBDIR)\Math rmdir /s /q $(LIBDIR)\Math + -if exist $(LIBDIR)\Memoize rmdir /s /q $(LIBDIR)\Memoize -if exist $(LIBDIR)\MIME rmdir /s /q $(LIBDIR)\MIME + -if exist $(LIBDIR)\Module rmdir /s /q $(LIBDIR)\Module + -if exist $(LIBDIR)\mro rmdir /s /q $(LIBDIR)\mro + -if exist $(LIBDIR)\Net\FTP rmdir /s /q $(LIBDIR)\Net\FTP + -if exist $(LIBDIR)\Object rmdir /s /q $(LIBDIR)\Object + -if exist $(LIBDIR)\Package rmdir /s /q $(LIBDIR)\Package + -if exist $(LIBDIR)\Params rmdir /s /q $(LIBDIR)\Params + -if exist $(LIBDIR)\Parse rmdir /s /q $(LIBDIR)\Parse + -if exist $(LIBDIR)\PerlIO rmdir /s /q $(LIBDIR)\PerlIO + -if exist $(LIBDIR)\Pod\Perldoc rmdir /s /q $(LIBDIR)\Pod\Perldoc + -if exist $(LIBDIR)\Pod\Simple rmdir /s /q $(LIBDIR)\Pod\Simple + -if exist $(LIBDIR)\Pod\Text rmdir /s /q $(LIBDIR)\Pod\Text -if exist $(LIBDIR)\re rmdir /s /q $(LIBDIR)\re -if exist $(LIBDIR)\Scalar rmdir /s /q $(LIBDIR)\Scalar -if exist $(LIBDIR)\Sys rmdir /s /q $(LIBDIR)\Sys + -if exist $(LIBDIR)\TAP rmdir /s /q $(LIBDIR)\TAP + -if exist $(LIBDIR)\Term\UI rmdir /s /q $(LIBDIR)\Term\UI + -if exist $(LIBDIR)\Test rmdir /s /q $(LIBDIR)\Test + -if exist $(LIBDIR)\Thread rmdir /s /q $(LIBDIR)\Thread -if exist $(LIBDIR)\threads rmdir /s /q $(LIBDIR)\threads + -if exist $(LIBDIR)\Unicode\Collate rmdir /s /q $(LIBDIR)\Unicode\Collate -if exist $(LIBDIR)\XS rmdir /s /q $(LIBDIR)\XS -if exist $(LIBDIR)\Win32API rmdir /s /q $(LIBDIR)\Win32API - -cd $(PODDIR) && del /f *.html *.bat podchecker \ - perlaix.pod perlamiga.pod perlapollo.pod perlbeos.pod \ - perlbs2000.pod perlce.pod perlcn.pod perlcygwin.pod \ - perldelta.pod perldgux.pod perldos.pod perlepoc.pod \ - perlfreebsd.pod perlhaiku.pod perlhpux.pod perlhurd.pod \ - perlirix.pod perljp.pod perlko.pod perllinux.pod \ - perlmachten.pod perlmacos.pod perlmacosx.pod perlmint.pod \ + -cd $(PODDIR) && del /f *.html *.bat \ + perlaix.pod perlamiga.pod perlapi.pod perlapollo.pod \ + perlbeos.pod perlbs2000.pod perlce.pod perlcn.pod \ + perlcygwin.pod perldelta.pod perldgux.pod perldos.pod \ + perlepoc.pod perlfreebsd.pod perlhaiku.pod perlhpux.pod \ + perlhurd.pod perlintern.pod perlirix.pod perljp.pod perlko.pod \ + perllinux.pod perlmacos.pod perlmacosx.pod perlmodlib.pod \ perlmpeix.pod perlnetware.pod perlopenbsd.pod perlos2.pod \ perlos390.pod perlos400.pod perlplan9.pod perlqnx.pod \ - perlriscos.pod perlsolaris.pod perlsymbian.pod perltru64.pod \ - perltw.pod perluts.pod perlvmesa.pod perlvms.pod perlvms.pod \ - perlvos.pod perlwin32.pod \ + perlriscos.pod perlsolaris.pod perlsymbian.pod perltoc.pod \ + perltru64.pod perltw.pod perluniprops.pod perluts.pod \ + perlvmesa.pod perlvos.pod perlwin32.pod \ pod2html pod2latex pod2man pod2text pod2usage \ podchecker podselect -cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph pstruct h2xs \ perldoc perlivp dprofpp libnetcfg enc2xs piconv cpan *.bat \ xsubpp instmodsh prove ptar ptardiff cpanp-run-perl cpanp cpan2dist shasum corelist config_data -cd ..\x2p && del /f find2perl s2p psed *.bat - -del /f ..\config.sh ..\splittree.pl perlmain.c dlutils.c config.h.new \ + -del /f ..\config.sh perlmain.c dlutils.c config.h.new \ perlmainst.c -del /f $(CONFIGPM) -del /f ..\lib\Config_git.pl -del /f bin\*.bat -del /f perllibst.h - -del /f $(PERLEXE_ICO) perl.base - -cd .. && del /s *.lib *.map *.pdb *.ilk *.bs *$(o) .exists pm_to_blib + -del /f $(PERLEXE_RES) perl.base + -cd .. && del /s *.lib *.map *.pdb *.ilk *.bs *$(o) .exists pm_to_blib ppport.h -cd $(EXTDIR) && del /s *.def Makefile Makefile.old + -cd $(DISTDIR) && del /s *.def Makefile Makefile.old + -cd $(CPANDIR) && del /s *.def Makefile Makefile.old -if exist $(AUTODIR) rmdir /s /q $(AUTODIR) -if exist $(COREDIR) rmdir /s /q $(COREDIR) -if exist pod2htmd.tmp del pod2htmd.tmp @@ -1243,7 +1249,7 @@ distclean: realclean install : all installbare installhtml -installbare : utils +installbare : utils ..\pod\perltoc.pod $(PERLEXE) ..\installperl if exist $(WPERLEXE) $(XCOPY) $(WPERLEXE) $(INST_BIN)\*.* if exist $(PERLEXESTATIC) $(XCOPY) $(PERLEXESTATIC) $(INST_BIN)\*.* @@ -1256,13 +1262,11 @@ installhtml : doc $(RCOPY) $(HTMLDIR)\*.* $(INST_HTML)\*.* inst_lib : $(CONFIGPM) - copy splittree.pl .. - $(MINIPERL) -I..\lib ..\splittree.pl "../LIB" $(AUTODIR) $(RCOPY) ..\lib $(INST_LIB)\*.* -$(UNIDATAFILES) : $(MINIPERL) $(CONFIGPM) ..\lib\unicore\mktables +$(UNIDATAFILES) ..\pod\perluniprops.pod : $(MINIPERL) $(CONFIGPM) ..\lib\unicore\mktables Extensions_nonxs cd ..\lib\unicore && \ - ..\$(MINIPERL) -I.. mktables -check $@ $(FIRSTUNIFILE) + ..\$(MINIPERL) -I.. -I..\..\cpan\Cwd\lib -I..\..\cpan\Cwd mktables -P ..\..\pod -maketest -makelist -p -check $@ $(FIRSTUNIFILE) minitest : $(MINIPERL) $(GLOBEXE) $(CONFIGPM) utils $(UNIDATAFILES) $(XCOPY) $(MINIPERL) ..\t\$(NULL) @@ -1273,7 +1277,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 unpack_files +test-prep : all utils $(XCOPY) $(PERLEXE) ..\t\$(NULL) $(XCOPY) $(PERLDLL) ..\t\$(NULL) $(XCOPY) $(GLOBEXE) ..\t\$(NULL) @@ -1283,18 +1287,12 @@ test : test-prep $(PERLEXE) -I..\lib harness $(TEST_SWITCHES) $(TEST_FILES) cd ..\win32 -unpack_files: - $(MINIPERL) -I..\lib ..\uupacktool.pl -u -d .. -m - -cleanup_unpacked_files: - -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\uupacktool.pl -c -d .. -m - test-reonly : reonly utils $(XCOPY) $(PERLEXE) ..\t\$(NULL) $(XCOPY) $(PERLDLL) ..\t\$(NULL) $(XCOPY) $(GLOBEXE) ..\t\$(NULL) cd ..\t - $(PERLEXE) -I..\lib harness $(OPT) -re \bpat\b \breg \bre\b \bsubst \brxcode $(EXTRA) + $(PERLEXE) -I..\lib harness $(OPT) -re \bre\\/ $(EXTRA) cd ..\win32 regen : @@ -1332,7 +1330,7 @@ _clean : -@$(DEL) $(PERLSTATICLIB) -@$(DEL) $(PERLDLL) -@$(DEL) $(CORE_OBJ) - -@$(DEL) $(GENUUDMAP) $(GENUUDMAP_OBJ) $(UUDMAP_H) + -@$(DEL) $(GENUUDMAP) $(GENUUDMAP_OBJ) $(UUDMAP_H) $(BITCOUNT_H) -if exist $(MINIDIR) rmdir /s /q $(MINIDIR) -if exist $(UNIDATADIR1) rmdir /s /q $(UNIDATADIR1) -if exist $(UNIDATADIR2) rmdir /s /q $(UNIDATADIR2) @@ -1347,11 +1345,9 @@ _clean : -@$(DEL) *.pdb -@$(DEL) Extensions_static -_preclean : cleanup_unpacked_files - -clean : _preclean Extensions_clean _clean +clean : Extensions_clean _clean -realclean : _preclean Extensions_realclean MakePPPort_clean _clean +realclean : Extensions_realclean _clean # Handy way to run perlbug -ok without having to install and run the # installed perlbug. We don't re-run the tests here - we trust the user.