X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/0195b1444e117d5ff8dc58a290639115901efb5b..b86e806e0fdabf765203585cee6697bc3e14be6f:/win32/makefile.mk diff --git a/win32/makefile.mk b/win32/makefile.mk index 6c5b4db..0f057a8 100644 --- a/win32/makefile.mk +++ b/win32/makefile.mk @@ -26,6 +26,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 @@ -34,7 +39,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.11.2 # # Comment this out if you DON'T want your perl installation to have @@ -112,7 +117,7 @@ USE_LARGE_FILES *= define #CCTYPE *= MSVC90 # Borland 5.02 or later #CCTYPE *= BORLAND -# MinGW with gcc-2.95.2 or later +# MinGW or mingw-w64 with gcc-2.95.2 or later CCTYPE *= GCC # @@ -220,6 +225,29 @@ CCINCDIR *= $(CCHOME)\include CCLIBDIR *= $(CCHOME)\lib # +# If building with gcc-4.x.x (or x86_64-w64-mingw32-gcc-4.x.x), then +# uncomment the following assignment to GCC_4XX, make sure that CCHOME +# has been set correctly above, and uncomment the appropriate +# GCCHELPERDLL line. +# The name of the dll can change, depending upon which vendor has supplied +# your 4.x.x compiler, and upon the values of "x". +# (The dll will be in your mingw/bin folder, so check there if you're +# unsure about the correct name.) +# Without these corrections, the op/taint.t test script will fail. +# +#GCC_4XX *= define +#GCCHELPERDLL *= $(CCHOME)\bin\libgcc_s_sjlj-1.dll +#GCCHELPERDLL *= $(CCHOME)\bin\libgcc_s_dw2-1.dll +#GCCHELPERDLL *= $(CCHOME)\bin\libgcc_s_1.dll + +# +# uncomment this if you are using x86_64-w64-mingw32 cross-compiler +# ie if your gcc executable is called 'x86_64-w64-mingw32-gcc' +# instead of the usual 'gcc'. +# +#GCCCROSS *= define + +# # Additional compiler flags can be specified here. # BUILDOPT *= $(BUILDOPTEXTRA) @@ -395,6 +423,8 @@ COREDIR = ..\lib\CORE AUTODIR = ..\lib\auto LIBDIR = ..\lib EXTDIR = ..\ext +DISTDIR = ..\dist +CPANDIR = ..\cpan PODDIR = ..\pod EXTUTILSDIR = $(LIBDIR)\ExtUtils HTMLDIR = .\html @@ -442,7 +472,7 @@ LIBFILES = $(CRYPT_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 \ import32.lib $(LIBC) .IF "$(CFG)" == "Debug" @@ -473,11 +503,15 @@ LINK_FLAGS += -L"$(CCLIBDIR)\Release" .ELIF "$(CCTYPE)" == "GCC" -CC = gcc -LINK32 = g++ -LIB32 = ar rc -IMPLIB = dlltool -RSC = windres +.IF "$(GCCCROSS)" == "define" +ARCHPREFIX = x86_64-w64-mingw32- +.ENDIF + +CC = $(ARCHPREFIX)gcc +LINK32 = $(ARCHPREFIX)g++ +LIB32 = $(ARCHPREFIX)ar rc +IMPLIB = $(ARCHPREFIX)dlltool +RSC = $(ARCHPREFIX)windres i = .i o = .o @@ -489,6 +523,9 @@ a = .a INCLUDES = -I.\include -I. -I.. -I$(COREDIR) DEFINES = -DWIN32 $(CRYPT_FLAG) +.IF "$(WIN64)" == "define" +DEFINES += -DWIN64 -DCONSERVATIVE +.ENDIF LOCDEFS = -DPERLDLL -DPERL_CORE SUBSYS = console CXX_FLAG = -xc++ @@ -503,7 +540,7 @@ LIBFILES = $(CRYPT_LIB) $(LIBC) \ -lmoldname -lkernel32 -luser32 -lgdi32 \ -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 \ -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr \ - -lwinmm -lversion -lodbc32 -lodbccp32 + -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32 .IF "$(CFG)" == "Debug" OPTIMIZE = -g -O2 -DDEBUGGING @@ -601,14 +638,14 @@ 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. # Since the code links against libraries that are compiled with /GS, this # "security cookie verification" must be included via bufferoverlow.lib. .IF "$(WIN64)" == "define" -LIBBASEFILES = $(LIBBASEFILES) bufferoverflowU.lib +LIBBASEFILES += bufferoverflowU.lib .ENDIF # we add LIBC here, since we may be using PerlCRT.dll @@ -629,6 +666,14 @@ LIBOUT_FLAG = /out: CFLAGS_O = $(CFLAGS) $(BUILDOPT) +.IF "$(CCTYPE)" == "MSVC80" || "$(CCTYPE)" == "MSVC80FREE" || \ + "$(CCTYPE)" == "MSVC90" || "$(CCTYPE)" == "MSVC90FREE" +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 + + # used to allow local linking flags that are not propogated into Config.pm, # currently unused # -- BKS, 12-12-1999 @@ -685,9 +730,9 @@ $(o).dll: .rc.res: .IF "$(CCTYPE)" == "GCC" - $(RSC) --use-temp-file --include-dir=. --include-dir=.. -O COFF -i $< -o $@ + $(RSC) --use-temp-file --include-dir=. --include-dir=.. -O COFF -D INCLUDE_MANIFEST -i $< -o $@ .ELSE - $(RSC) -i.. $< + $(RSC) -i.. -DINCLUDE_MANIFEST $< .ENDIF # @@ -709,15 +754,15 @@ PERLSTATIC = .ENDIF # Unicode data files generated by mktables -UNIDATAFILES = ..\lib\unicore\Canonical.pl ..\lib\unicore\Exact.pl \ - ..\lib\unicore\Properties ..\lib\unicore\Decomposition.pl \ +UNIDATAFILES = ..\lib\unicore\Decomposition.pl ..\lib\unicore\TestProp.pl \ ..\lib\unicore\CombiningClass.pl ..\lib\unicore\Name.pl \ - ..\lib\unicore\PVA.pl + ..\lib\unicore\Heavy.pl ..\lib\unicore\mktables.lst # 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 = @@ -781,8 +826,18 @@ CFGH_TMPL = config_H.bc .ELIF "$(CCTYPE)" == "GCC" +.IF "$(WIN64)" == "define" +.IF "$(GCCCROSS)" == "define" +CFGSH_TMPL = config.gc64 +CFGH_TMPL = config_H.gc64 +.ELSE +CFGSH_TMPL = config.gc64nox +CFGH_TMPL = config_H.gc64nox +.ENDIF +.ELSE CFGSH_TMPL = config.gc CFGH_TMPL = config_H.gc +.ENDIF PERLIMPLIB = ..\libperl511$(a) PERLSTATICLIB = ..\libperl511s$(a) @@ -808,12 +863,6 @@ XCOPY = xcopy /f /r /i /d /y RCOPY = xcopy /f /r /i /e /d /y NOOP = @rem -# -# 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 \ @@ -874,8 +923,6 @@ WIN32_SRC += .\win32io.c WIN32_SRC += .\$(CRYPT_SRC) .ENDIF -DLL_SRC = $(DYNALOADER).c - X2P_SRC = \ ..\x2p\a2p.c \ ..\x2p\hash.c \ @@ -934,7 +981,7 @@ WIN32_OBJ = $(WIN32_SRC:db:+$(o)) MINICORE_OBJ = $(MINIDIR)\{$(MICROCORE_OBJ:f) miniperlmain$(o) perlio$(o)} MINIWIN32_OBJ = $(MINIDIR)\{$(WIN32_OBJ:f)} MINI_OBJ = $(MINICORE_OBJ) $(MINIWIN32_OBJ) -DLL_OBJ = $(DLL_SRC:db:+$(o)) +DLL_OBJ = $(DYNALOADER) X2P_OBJ = $(X2P_SRC:db:+$(o)) GENUUDMAP_OBJ = $(GENUUDMAP:db:+$(o)) @@ -960,7 +1007,7 @@ STATIC_EXT = * !Win32 !SDBM_File !Encode STATIC_EXT = Win32CORE .ENDIF -DYNALOADER = $(EXTDIR)\DynaLoader\DynaLoader +DYNALOADER = ..\DynaLoader$(o) # vars must be separated by "\t+~\t+", since we're using the tempfile # version of config_sh.pl (we were overflowing someone's buffer by @@ -1021,6 +1068,8 @@ ODBCCP32_DLL = $(SystemRoot)\system32\odbccp32.dll ODBCCP32_DLL = $(windir)\system\odbccp32.dll .ENDIF +ICWD = -I..\cpan\Cwd -I..\cpan\Cwd\lib + # # Top targets # @@ -1042,8 +1091,6 @@ reonly : regnodes .\config.h ..\git_version.h $(GLOBEXE) $(MINIPERL) $(MK2) \ $(RIGHTMAKE) $(MINIMOD) $(CONFIGPM) $(UNIDATAFILES) $(PERLEXE) \ $(X2P) Extensions_reonly -$(DYNALOADER)$(o) : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c - static: $(PERLEXESTATIC) #---------------------------------------------------------------- @@ -1146,19 +1193,19 @@ config.w32 : $(CFGSH_TMPL) regen_config_h: $(MINIPERL) -I..\lib config_sh.PL --cfgsh-option-file $(mktmp $(CFG_VARS)) \ $(CFGSH_TMPL) > ..\config.sh - cd .. && miniperl configpm + $(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 + $(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)" \ || $(MAKE) $(MAKEMACROS) $(CONFIGPM) $(MAKEFILE) $(MINIPERL) : $(MINIDIR) $(MINI_OBJ) $(CRTIPMLIBS) @@ -1212,7 +1259,7 @@ $(X2P_OBJ) : $(CORE_H) perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym ..\pp.sym ..\makedef.pl create_perllibst_h.pl $(MINIPERL) -I..\lib create_perllibst_h.pl - $(MINIPERL) -w ..\makedef.pl PLATFORM=win32 $(OPTIMIZE) $(DEFINES) \ + $(MINIPERL) -I..\lib -w ..\makedef.pl PLATFORM=win32 $(OPTIMIZE) $(DEFINES) \ $(BUILDOPT) CCTYPE=$(CCTYPE) > perldll.def $(PERLDLL): perldll.def $(PERLDLL_OBJ) $(PERLDLL_RES) Extensions_static @@ -1226,7 +1273,7 @@ $(PERLDLL): perldll.def $(PERLDLL_OBJ) $(PERLDLL_RES) Extensions_static $(mktmp $(LKPRE) $(PERLDLL_OBJ) \ $(shell @type Extensions_static) \ $(LIBFILES) $(LKPOST)) - dlltool --output-lib $(PERLIMPLIB) \ + $(IMPLIB) --output-lib $(PERLIMPLIB) \ --dllname $(PERLDLL:b).dll \ --def perldll.def \ --base-file perl.base \ @@ -1264,7 +1311,7 @@ $(PERLSTATICLIB): Extensions_static .ENDIF $(XCOPY) $(PERLSTATICLIB) $(COREDIR) -$(PERLEXE_RES): perlexe.rc $(PERLEXE_ICO) +$(PERLEXE_RES): perlexe.rc $(PERLEXE_MANIFEST) $(PERLEXE_ICO) $(MINIMOD) : $(MINIPERL) ..\minimod.pl cd .. && miniperl minimod.pl > lib\ExtUtils\Miniperl.pm @@ -1284,9 +1331,9 @@ $(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 .IF "$(CCTYPE)" == "BORLAND" $(LINK32) -Tpe -ap $(BLINK_FLAGS) \ @$(mktmp c0x32$(o) $(X2P_OBJ),$@,,$(LIBFILES),) @@ -1344,8 +1391,6 @@ $(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES) .ENDIF copy $(PERLEXE) $(WPERLEXE) $(MINIPERL) -I..\lib bin\exetype.pl $(WPERLEXE) WINDOWS - copy splittree.pl .. - $(MINIPERL) -I..\lib ..\splittree.pl "../LIB" $(AUTODIR) $(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES) .IF "$(CCTYPE)" == "BORLAND" @@ -1365,50 +1410,38 @@ $(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES) $(EMBED_EXE_MANI) .ENDIF -$(DYNALOADER).c: $(MINIPERL) $(EXTDIR)\DynaLoader\dl_win32.xs $(CONFIGPM) Extensions_nonxs - if not exist $(AUTODIR) mkdir $(AUTODIR) - cd $(EXTDIR)\$(*B) && ..\$(MINIPERL) -I..\..\lib $(*B)_pm.PL - cd $(EXTDIR)\$(*B) && ..\$(MINIPERL) -I..\..\lib XSLoader_pm.PL - $(XCOPY) $(EXTDIR)\$(*B)\$(*B).pm $(LIBDIR)\$(NULL) - $(XCOPY) $(EXTDIR)\$(*B)\XSLoader.pm $(LIBDIR)\$(NULL) - cd $(EXTDIR)\$(*B) && $(XSUBPP) dl_win32.xs > $(*B).c - $(XCOPY) $(EXTDIR)\$(*B)\dlutils.c . - -$(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs - copy dl_win32.xs $(EXTDIR)\DynaLoader\dl_win32.xs - MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs - $(MINIPERL) -I..\lib ..\mkppport - -MakePPPort_clean: - -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\mkppport --clean + $(MINIPERL) -I..\lib $(ICWD) ..\mkppport #------------------------------------------------------------------------------- -# The rule for $(DYNALOADER).c makes DynaLoader.pm, and that is needed for -# ExtUtils::Mkbootstrap. There's no direct way to mark a dependency on +# 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).c +Extensions : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) $(XCOPY) ..\*.h $(COREDIR)\*.* - $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynamic + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --dynamic -Extensions_reonly : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER).c +Extensions_reonly : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER) $(XCOPY) ..\*.h $(COREDIR)\*.* - $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynamic +re + $(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) $(XCOPY) ..\*.h $(COREDIR)\*.* - $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --static + $(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) $(XCOPY) ..\*.h $(COREDIR)\*.* - $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --nonxs + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --nonxs + +$(DYNALOADER) : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) Extensions_nonxs + $(XCOPY) ..\*.h $(COREDIR)\*.* + $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynaloader Extensions_clean : - -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --all --target=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 ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --all --target=realclean + -if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=realclean #------------------------------------------------------------------------------- @@ -1460,15 +1493,14 @@ utils: $(PERLEXE) $(X2P) copy ..\README.vmesa ..\pod\perlvmesa.pod copy ..\README.vos ..\pod\perlvos.pod copy ..\README.win32 ..\pod\perlwin32.pod - copy ..\pod\perl5110delta.pod ..\pod\perldelta.pod + copy ..\pod\perl5113delta.pod ..\pod\perldelta.pod cd ..\pod && $(MAKE) -f ..\win32\pod.mak converters - cd ..\lib && $(PERLEXE) lib_pm.PL $(PERLEXE) $(PL2BAT) $(UTILS) - $(PERLEXE) ..\autodoc.pl .. - $(PERLEXE) ..\pod\perlmodlib.pl -q + $(PERLEXE) $(ICWD) ..\autodoc.pl .. + $(PERLEXE) $(ICWD) ..\pod\perlmodlib.pl -q ..\pod\perltoc.pod: $(PERLEXE) Extensions Extensions_nonxs - $(PERLEXE) ..\pod\buildtoc --build-toc -q + $(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 @@ -1478,14 +1510,9 @@ distclean: realclean $(PERLIMPLIB) ..\miniperl$(a) $(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)\attributes.pm $(LIBDIR)\DynaLoader.pm - -del /f $(LIBDIR)\XSLoader.pm $(LIBDIR)\lib.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 @@ -1508,6 +1535,7 @@ 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)\B rmdir /s /q $(LIBDIR)\B -if exist $(LIBDIR)\Compress rmdir /s /q $(LIBDIR)\Compress -if exist $(LIBDIR)\Data rmdir /s /q $(LIBDIR)\Data @@ -1539,23 +1567,25 @@ distclean: realclean perlmpeix.pod perlnetware.pod perlopenbsd.pod perlos2.pod \ perlos390.pod perlos400.pod perlplan9.pod perlqnx.pod \ perlriscos.pod perlsolaris.pod perlsymbian.pod perltoc.pod \ - perltru64.pod perltw.pod perluts.pod perlvmesa.pod perlvos.pod \ - perlwin32.pod \ + perltru64.pod perltw.pod perluniprops.pod perluts.pod \ + perlvmesa.pod perlvos.pod perlwin32.pod \ pod2html pod2latex pod2man pod2text pod2usage \ 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 perl.base - -cd .. && del /s *$(a) *.map *.pdb *.ilk *.tds *.bs *$(o) .exists pm_to_blib + -del /f $(PERLEXE_RES) perl.base + -cd .. && del /s *$(a) *.map *.pdb *.ilk *.tds *.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 @@ -1578,13 +1608,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) .UPDATEALL : $(MINIPERL) $(CONFIGPM) ..\lib\unicore\mktables Extensions_nonxs +$(UNIDATAFILES) ..\pod\perluniprops.pod .UPDATEALL : $(MINIPERL) $(CONFIGPM) ..\lib\unicore\mktables Extensions_nonxs cd ..\lib\unicore && \ - ..\$(MINIPERL) -I.. mktables + ..\$(MINIPERL) -I.. -I..\..\cpan\Cwd\lib -I..\..\cpan\Cwd mktables -P ..\..\pod -maketest -makelist -p minitest : $(MINIPERL) $(GLOBEXE) $(CONFIGPM) $(UNIDATAFILES) utils $(XCOPY) $(MINIPERL) ..\t\$(NULL) @@ -1599,13 +1627,7 @@ minitest : $(MINIPERL) $(GLOBEXE) $(CONFIGPM) $(UNIDATAFILES) utils cd ..\t && \ $(MINIPERL) -I..\lib harness base/*.t comp/*.t cmd/*.t io/*.t op/*.t pragma/*.t -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-prep : all utils unpack_files +test-prep : all utils $(XCOPY) $(PERLEXE) ..\t\$(NULL) $(XCOPY) $(PERLDLL) ..\t\$(NULL) .IF "$(CCTYPE)" == "BORLAND" @@ -1613,6 +1635,11 @@ test-prep : all utils unpack_files .ELSE $(XCOPY) $(GLOBEXE) ..\t\$(NULL) .ENDIF +.IF "$(CCTYPE)" == "GCC" +.IF "$(GCC_4XX)" == "define" + $(XCOPY) $(GCCHELPERDLL) ..\t\$(NULL) +.ENDIF +.ENDIF test : $(RIGHTMAKE) test-prep cd ..\t && $(PERLEXE) -I..\lib harness $(TEST_SWITCHES) $(TEST_FILES) @@ -1676,11 +1703,9 @@ _clean : -_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.