X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/ba6348832db3466d8ed9c3e5162a8438475e1a0c..5e4c4c91bd52a48de59520d5e9b4e3478e49c613:/win32/makefile.mk diff --git a/win32/makefile.mk b/win32/makefile.mk index b7264aa..fcc30ac 100644 --- a/win32/makefile.mk +++ b/win32/makefile.mk @@ -39,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.13.7 +#INST_VER *= \5.13.9 # # Comment this out if you DON'T want your perl installation to have @@ -151,20 +151,6 @@ CCTYPE *= GCC #USE_SETARGV *= define # -# if you want to have the crypt() builtin function implemented, leave this or -# CRYPT_LIB uncommented. The fcrypt.c file named here contains a suitable -# version of des_fcrypt(). -# -CRYPT_SRC *= fcrypt.c - -# -# if you didn't set CRYPT_SRC and if you have des_fcrypt() available in a -# library, uncomment this, and make sure the library exists (see README.win32) -# Specify the full pathname of the library. -# -#CRYPT_LIB *= fcrypt.lib - -# # set this if you wish to use perl's malloc # WARNING: Turning this on/off WILL break binary compatibility with extensions # you may have compiled with/without it. Be prepared to recompile all @@ -254,16 +240,6 @@ CCLIBDIR *= $(CCHOME)\lib BUILDOPT *= $(BUILDOPTEXTRA) # -# Adding -DPERL_HASH_SEED_EXPLICIT will disable randomization of Perl's -# internal hash function unless the PERL_HASH_SEED environment variable is set. -# Alternatively, adding -DNO_HASH_SEED will completely disable the -# randomization feature. -# The latter is required to maintain binary compatibility with Perl 5.8.0. -# -#BUILDOPT += -DPERL_HASH_SEED_EXPLICIT -#BUILDOPT += -DNO_HASH_SEED - -# # This should normally be disabled. Enabling it will disable the File::Glob # implementation of CORE::glob. # @@ -299,13 +275,6 @@ EXTRALIBDIRS *= ##################### CHANGE THESE ONLY IF YOU MUST ##################### -.IF "$(CRYPT_SRC)$(CRYPT_LIB)" == "" -D_CRYPT = undef -.ELSE -D_CRYPT = define -CRYPT_FLAG = -DHAVE_DES_FCRYPT -.ENDIF - PERL_MALLOC *= undef DEBUG_MSTATS *= undef @@ -458,7 +427,7 @@ RSC = brcc32 # INCLUDES = -I$(COREDIR) -I.\include -I. -I.. -I"$(CCINCDIR)" #PCHFLAGS = -H -Hc -H=c:\temp\bcmoduls.pch -DEFINES = -DWIN32 $(CRYPT_FLAG) +DEFINES = -DWIN32 LOCDEFS = -DPERLDLL -DPERL_CORE SUBSYS = console CXX_FLAG = -P @@ -466,7 +435,7 @@ CXX_FLAG = -P LIBC = cw32mti.lib # same libs as MSVC, except Borland doesn't have oldnames.lib -LIBFILES = $(CRYPT_LIB) \ +LIBFILES = \ 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 \ @@ -520,7 +489,7 @@ a = .a # INCLUDES = -I.\include -I. -I.. -I$(COREDIR) -DEFINES = -DWIN32 $(CRYPT_FLAG) +DEFINES = -DWIN32 .IF "$(WIN64)" == "define" DEFINES += -DWIN64 -DCONSERVATIVE .ENDIF @@ -534,7 +503,7 @@ LIBC = #LIBC = -lmsvcrt # same libs as MSVC -LIBFILES = $(CRYPT_LIB) $(LIBC) \ +LIBFILES = $(LIBC) \ -lmoldname -lkernel32 -luser32 -lgdi32 \ -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 \ -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr \ @@ -555,9 +524,7 @@ OBJOUT_FLAG = -o EXEOUT_FLAG = -o LIBOUT_FLAG = -# NOTE: we assume that GCC uses MSVCRT.DLL -# See comments about PERL_MSVCRT_READFIX in the "cl" compiler section below. -BUILDOPT += -fno-strict-aliasing -mms-bitfields -DPERL_MSVCRT_READFIX +BUILDOPT += -fno-strict-aliasing -mms-bitfields .ELSE @@ -572,7 +539,7 @@ RSC = rc INCLUDES = -I$(COREDIR) -I.\include -I. -I.. #PCHFLAGS = -Fpc:\temp\vcmoduls.pch -YX -DEFINES = -DWIN32 -D_CONSOLE -DNO_STRICT $(CRYPT_FLAG) +DEFINES = -DWIN32 -D_CONSOLE -DNO_STRICT LOCDEFS = -DPERLDLL -DPERL_CORE SUBSYS = console CXX_FLAG = -TP -EHsc @@ -631,14 +598,7 @@ BUILDOPT += -D_USE_32BIT_TIME_T .ENDIF .ENDIF -# Use the MSVCRT read() fix only when using VC++ 6.x or earlier. Later -# versions use MSVCR70.dll, MSVCR71.dll, etc, which do not require the -# fix. -.IF "$(CCTYPE)" == "MSVC60" -BUILDOPT += -DPERL_MSVCRT_READFIX -.ENDIF - -LIBBASEFILES = $(CRYPT_LIB) \ +LIBBASEFILES = \ 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 \ @@ -872,6 +832,7 @@ MICROCORE_SRC = \ ..\mro.c \ ..\hv.c \ ..\locale.c \ + ..\keywords.c \ ..\mathoms.c \ ..\mg.c \ ..\numeric.c \ @@ -909,7 +870,8 @@ EXTRACORE_SRC += ..\perlio.c WIN32_SRC = \ .\win32.c \ .\win32sck.c \ - .\win32thread.c + .\win32thread.c \ + .\fcrypt.c # We need this for miniperl build unless we override canned # config.h #define building mini\* @@ -917,10 +879,6 @@ WIN32_SRC = \ WIN32_SRC += .\win32io.c #.ENDIF -.IF "$(CRYPT_SRC)" != "" -WIN32_SRC += .\$(CRYPT_SRC) -.ENDIF - X2P_SRC = \ ..\x2p\a2p.c \ ..\x2p\hash.c \ @@ -1021,7 +979,6 @@ CFG_VARS = \ ld=$(LINK32) ~ \ ccflags=$(EXTRACFLAGS) $(OPTIMIZE) $(DEFINES) $(BUILDOPT) ~ \ cf_email=$(EMAIL) ~ \ - d_crypt=$(D_CRYPT) ~ \ d_mymalloc=$(PERL_MALLOC) ~ \ libs=$(LIBFILES:f) ~ \ incpath=$(CCINCDIR) ~ \ @@ -1078,7 +1035,7 @@ all : CHECKDMAKE .\config.h ..\git_version.h $(GLOBEXE) $(MINIPERL) $(MK2) \ regnodes : ..\regnodes.h -..\regcomp$(o) : ..\regnodes.h ..\regcharclass.h +..\regcomp$(o) : ..\regnodes.h ..\regcharclass.h ..\regexec$(o) : ..\regnodes.h ..\regcharclass.h @@ -1203,6 +1160,10 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl $(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" \ || $(MAKE) $(MAKEMACROS) $(CONFIGPM) $(MAKEFILE) +..\lib\buildcustomize.pl: $(MINIPERL) ..\write_buildcustomize.pl + $(MINIPERL) -I..\lib ..\write_buildcustomize.pl .. >..\lib\buildcustomize.pl + + $(MINIPERL) : $(MINIDIR) $(MINI_OBJ) $(CRTIPMLIBS) .IF "$(CCTYPE)" == "BORLAND" if not exist $(CCLIBDIR)\PSDK\odbccp32.lib \ @@ -1252,7 +1213,7 @@ $(DLL_OBJ) : $(CORE_H) $(X2P_OBJ) : $(CORE_H) -perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym ..\pp.sym ..\makedef.pl create_perllibst_h.pl +perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.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 @@ -1382,7 +1343,7 @@ $(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES) $(LINK32) -mconsole -o $@ $(BLINK_FLAGS) \ $(PERLEXE_OBJ) $(PERLEXE_RES) $(PERLIMPLIB) $(LIBFILES) .ELSE - $(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(BLINK_FLAGS) \ + $(LINK32) -subsystem:console -out:$@ $(BLINK_FLAGS) \ $(LIBFILES) $(PERLEXE_OBJ) $(SETARGV_OBJ) $(PERLIMPLIB) $(PERLEXE_RES) $(EMBED_EXE_MANI) .ENDIF @@ -1401,7 +1362,7 @@ $(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES) $(PERLSTATICLIB) $(LIBFILES) $(PERLEXEST_OBJ) \ $(PERLEXE_RES) $(LKPOST)) .ELSE - $(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(BLINK_FLAGS) \ + $(LINK32) -subsystem:console -out:$@ $(BLINK_FLAGS) \ @Extensions_static $(PERLSTATICLIB) /PDB:NONE \ $(LIBFILES) $(PERLEXEST_OBJ) $(SETARGV_OBJ) $(PERLEXE_RES) $(EMBED_EXE_MANI) @@ -1413,24 +1374,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 @@ -1454,7 +1415,6 @@ utils: $(PERLEXE) $(X2P) cd ..\utils && $(MAKE) PERL=$(MINIPERL) copy ..\README.aix ..\pod\perlaix.pod copy ..\README.amiga ..\pod\perlamiga.pod - copy ..\README.apollo ..\pod\perlapollo.pod copy ..\README.beos ..\pod\perlbeos.pod copy ..\README.bs2000 ..\pod\perlbs2000.pod copy ..\README.ce ..\pod\perlce.pod @@ -1490,7 +1450,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\perl5138delta.pod + copy ..\pod\perldelta.pod ..\pod\perl51310delta.pod $(PERLEXE) $(PL2BAT) $(UTILS) $(PERLEXE) $(ICWD) ..\autodoc.pl .. $(PERLEXE) $(ICWD) ..\pod\perlmodlib.pl -q @@ -1523,6 +1483,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 @@ -1581,9 +1542,9 @@ 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 \ - perl5138delta.pod perlaix.pod perlamiga.pod perlapi.pod \ - perlapollo.pod perlbeos.pod perlbs2000.pod perlce.pod \ - perlcn.pod perlcygwin.pod perldgux.pod perldos.pod perlepoc.pod \ + perl51310delta.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 \ perlintern.pod perlirix.pod perljp.pod perlko.pod perllinux.pod \ perlmacos.pod perlmacosx.pod perlmodlib.pod perlmpeix.pod \ @@ -1648,7 +1609,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 -test-prep : all utils +test-prep : all utils ..\pod\perltoc.pod $(XCOPY) $(PERLEXE) ..\t\$(NULL) $(XCOPY) $(PERLDLL) ..\t\$(NULL) .IF "$(CCTYPE)" == "BORLAND" @@ -1663,7 +1624,8 @@ test-prep : all utils .ENDIF test : $(RIGHTMAKE) test-prep - cd ..\t && $(PERLEXE) -I..\lib harness $(TEST_SWITCHES) $(TEST_FILES) + set PERL_STATIC_EXT=$(STATIC_EXT) && \ + cd ..\t && $(PERLEXE) -I..\lib harness $(TEST_SWITCHES) $(TEST_FILES) test-reonly : reonly utils $(XCOPY) $(PERLEXE) ..\t\$(NULL) @@ -1677,7 +1639,8 @@ regen : cd .. && regen.pl && cd win32 test-notty : test-prep - set PERL_SKIP_TTY_TEST=1 && \ + set PERL_STATIC_EXT=$(STATIC_EXT) && \ + set PERL_SKIP_TTY_TEST=1 && \ cd ..\t && $(PERLEXE) -I.\lib harness $(TEST_SWITCHES) $(TEST_FILES) _test : $(RIGHTMAKE) @@ -1688,7 +1651,8 @@ _test : $(RIGHTMAKE) .ELSE $(XCOPY) $(GLOBEXE) ..\t\$(NULL) .ENDIF - cd ..\t && $(PERLEXE) -I..\lib harness $(TEST_SWITCHES) $(TEST_FILES) + set PERL_STATIC_EXT=$(STATIC_EXT) && \ + cd ..\t && $(PERLEXE) -I..\lib harness $(TEST_SWITCHES) $(TEST_FILES) _clean : -@erase miniperlmain$(o)