diff options
author | Andrew Fresh <afresh1@cvs.openbsd.org> | 2021-03-01 23:20:03 +0000 |
---|---|---|
committer | Andrew Fresh <afresh1@cvs.openbsd.org> | 2021-03-01 23:20:03 +0000 |
commit | 6a4d7cedd2f141216c69476adb1b42914f89784c (patch) | |
tree | d2937252c06aa2e963fb3f5bef1f79b8e7b00b15 /gnu/usr.bin/perl/win32/GNUmakefile | |
parent | 830521676276b6133a5cd5127f3cc42f5590917a (diff) |
Fix merge issues, remove excess files - match perl-5.32.1 dist
OK sthen@
Diffstat (limited to 'gnu/usr.bin/perl/win32/GNUmakefile')
-rw-r--r-- | gnu/usr.bin/perl/win32/GNUmakefile | 113 |
1 files changed, 48 insertions, 65 deletions
diff --git a/gnu/usr.bin/perl/win32/GNUmakefile b/gnu/usr.bin/perl/win32/GNUmakefile index 1c20e839821..b944a5a2634 100644 --- a/gnu/usr.bin/perl/win32/GNUmakefile +++ b/gnu/usr.bin/perl/win32/GNUmakefile @@ -1,13 +1,13 @@ # # Makefile to build perl on Windows using GMAKE. # Supported compilers: -# Microsoft Visual C++ 6.0 or later +# Microsoft Visual C++ 7.0 or later # MinGW with gcc-3.4.5 or later with runtime < 3.21 # MinGW64 with gcc-4.4.3 or later # Windows SDK 64-bit compiler and tools # # This is set up to build a perl.exe that runs off a shared library -# (perl530.dll). Also makes individual DLLs for the XS extensions. +# (perl532.dll). Also makes individual DLLs for the XS extensions. # # The easiest way to customize the build process is to use parameters like this: # @@ -64,7 +64,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.30.3 +#INST_VER := \5.32.1 # # Comment this out if you DON'T want your perl installation to have @@ -126,7 +126,6 @@ USE_LARGE_FILES := define # Uncomment this if you're building a 32-bit perl and want 64-bit integers. # (If you're building a 64-bit perl then you will have 64-bit integers whether # or not this is uncommented.) -# Note: This option is not supported in 32-bit MSVC60 builds. # #USE_64_BIT_INT := define @@ -160,8 +159,6 @@ DEFAULT_INC_EXCLUDES_DOT := define # # uncomment exactly one of the following # -# Visual C++ 6.0 (aka Visual C++ 98) -#CCTYPE := MSVC60 # Visual C++ .NET 2002/2003 (aka Visual C++ 7.0/7.1) (full version) #CCTYPE := MSVC70 # Visual C++ Toolkit 2003 (aka Visual C++ 7.1) (free command-line tools) @@ -233,7 +230,7 @@ DEFAULT_INC_EXCLUDES_DOT := define # 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 perl530s.lib will also be created. +# variables below. A static library perl532s.lib will also be created. # Ordinary perl.exe is not affected by this option. # #BUILD_STATIC := define @@ -288,7 +285,7 @@ EXTRALIBDIRS := # # set this to your email address (perl will guess a value from -# from your loginname and your hostname, which may not be right) +# your loginname and your hostname, which may not be right) # #EMAIL := @@ -394,8 +391,6 @@ endif ifeq ($(CCHOME),) ifeq ($(CCTYPE),GCC) CCHOME := C:\MinGW -else ifeq ($(CCTYPE),MSVC60) -CCHOME := $(MSVCDir) else ifeq ($(CCTYPE),MSVC70) CCHOME := $(MSVCDir) else ifeq ($(CCTYPE),MSVC70FREE) @@ -446,19 +441,6 @@ ifeq ($(WIN64),define) USE_64_BIT_INT = define endif -# Treat 64-bit MSVC60 (doesn't really exist) as SDK2003SP1 because -# both link against MSVCRT.dll (which is part of Windows itself) and -# not against a compiler specific versioned runtime. -ifeq ("$(WIN64) $(CCTYPE)","define MSVC60") -CCTYPE = SDK2003SP1 -endif - -# Disable the 64-bit-int option for (32-bit) MSVC60 builds since that compiler -# does not support it. -ifeq ($(CCTYPE),MSVC60) -USE_64_BIT_INT = undef -endif - # Disable the long double option for MSVC builds since that compiler # does not support it. ifneq ($(CCTYPE),GCC) @@ -588,7 +570,7 @@ GCCVER2 := $(shell for /f "delims=. tokens=1,2,3" %%i in ('gcc -dumpversion') GCCVER3 := $(shell for /f "delims=. tokens=1,2,3" %%i in ('gcc -dumpversion') do echo %%k) # If you are using GCC, 4.3 or later by default we add the -fwrapv option. -# See https://rt.perl.org/Ticket/Display.html?id=121505 +# See https://github.com/Perl/perl5/issues/13690 # GCCWRAPV := $(shell if "$(GCCVER1)"=="4" (if "$(GCCVER2)" geq "3" echo define) else if "$(GCCVER1)" geq "5" (echo define)) @@ -608,7 +590,7 @@ a = .a INCLUDES = -I.\include -I. -I.. DEFINES = -DWIN32 ifeq ($(WIN64),define) -DEFINES += -DWIN64 -DCONSERVATIVE +DEFINES += -DWIN64 endif LOCDEFS = -DPERLDLL -DPERL_CORE CXX_FLAG = -xc++ @@ -618,8 +600,9 @@ LIBFILES = $(LIBC) -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool \ -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32 ifeq ($(CFG),Debug) -OPTIMIZE = -g -O2 -DDEBUGGING +OPTIMIZE = -g -O2 LINK_DBG = -g +DEFINES += -DDEBUGGING else OPTIMIZE = -s -O2 LINK_DBG = -s @@ -672,9 +655,7 @@ EMBED_DLL_MANI = if exist $@.manifest mt -nologo -manifest $@.manifest -outputre # Most relevant compiler-specific options fall into two groups: # either pre-MSVC80 or MSVC80 onwards, so define a macro for this. -ifeq ($(CCTYPE),MSVC60) -PREMSVC80 = define -else ifeq ($(CCTYPE),MSVC70) +ifeq ($(CCTYPE),MSVC70) PREMSVC80 = define else ifeq ($(CCTYPE),MSVC70FREE) PREMSVC80 = define @@ -701,6 +682,7 @@ INCLUDES = -I.\include -I. -I.. DEFINES = -DWIN32 -D_CONSOLE -DNO_STRICT LOCDEFS = -DPERLDLL -DPERL_CORE CXX_FLAG = -TP -EHsc +EXTRACFLAGS = -nologo -GF -W3 ifeq ($(CCTYPE),MSVC140) LIBC = ucrt.lib @@ -713,11 +695,14 @@ LIBC = msvcrt.lib endif ifeq ($(CFG),Debug) -OPTIMIZE = -Od -MD -Zi -DDEBUGGING +OPTIMIZE = -Od -Zi LINK_DBG = -debug +DEFINES += -DDEBUGGING +EXTRACFLAGS += -MD else ifeq ($(CFG),DebugSymbols) -OPTIMIZE = -Od -MD -Zi +OPTIMIZE = -Od -Zi LINK_DBG = -debug +EXTRACFLAGS += -MD else ifeq ($(CFG),DebugFull) ifeq ($(CCTYPE),MSVC140) LIBC = ucrtd.lib @@ -728,29 +713,29 @@ LIBC = ucrtd.lib else LIBC = msvcrtd.lib endif -OPTIMIZE = -Od -MDd -Zi -D_DEBUG -DDEBUGGING +OPTIMIZE = -Od -Zi LINK_DBG = -debug +DEFINES += -D_DEBUG -DDEBUGGING +EXTRACFLAGS += -MDd + else +# Enable Whole Program Optimizations (WPO) and Link Time Code Generation (LTCG). # -O1 yields smaller code, which turns out to be faster than -O2 on x86 and x64 -OPTIMIZE = -O1 -MD -Zi -DNDEBUG +OPTIMIZE = -O1 -Zi -GL # we enable debug symbols in release builds also -LINK_DBG = -debug -opt:ref,icf +LINK_DBG = -debug -opt:ref,icf -ltcg # you may want to enable this if you want COFF symbols in the executables # in addition to the PDB symbols. The default Dr. Watson that ships with -# Windows can use the the former but not latter. The free WinDbg can be +# Windows can use the former but not latter. The free WinDbg can be # installed to get better stack traces from just the PDB symbols, so we # avoid the bloat of COFF symbols by default. -#LINK_DBG = $(LINK_DBG) -debugtype:both -ifneq ($(CCTYPE),MSVC60) -# enable Whole Program Optimizations (WPO) and Link Time Code Generation (LTCG) -OPTIMIZE += -GL -LINK_DBG += -ltcg +#LINK_DBG += -debugtype:both LIB_FLAGS = -ltcg -endif +EXTRACFLAGS += -MD endif ifeq ($(WIN64),define) -DEFINES += -DWIN64 -DCONSERVATIVE +DEFINES += -DWIN64 OPTIMIZE += -fp:precise endif @@ -784,7 +769,7 @@ endif # backward compatibility. We define this symbol here for older 32-bit # compilers only (which aren't using it at all) for the sole purpose # of getting it into $Config{ccflags}. That way if someone builds -# Perl itself with e.g. VC6 but later installs an XS module using VC8 +# Perl itself with e.g. VC7 but later installs an XS module using VC8 # the time_t types will still be compatible. ifeq ($(WIN64),undef) ifeq ($(PREMSVC80),define) @@ -835,7 +820,6 @@ endif LIBFILES = $(LIBBASEFILES) $(LIBC) -EXTRACFLAGS = -nologo -GF -W3 ifeq ($(__ICC),define) EXTRACFLAGS += -Qstd=c99 endif @@ -966,7 +950,7 @@ endif UNIDATAFILES = ..\lib\unicore\Decomposition.pl ..\lib\unicore\TestProp.pl \ ..\lib\unicore\CombiningClass.pl ..\lib\unicore\Name.pl \ ..\lib\unicore\UCD.pl ..\lib\unicore\Name.pm \ - ..\lib\unicore\Heavy.pl ..\lib\unicore\mktables.lst + ..\lib\unicore\mktables.lst # Directories of Unicode data files generated by mktables UNIDATADIR1 = ..\lib\unicore\To @@ -1020,9 +1004,9 @@ ifeq ($(CCTYPE),GCC) CFGSH_TMPL = config.gc CFGH_TMPL = config_H.gc -PERLIMPLIB = $(COREDIR)\libperl530$(a) -PERLIMPLIBBASE = libperl530$(a) -PERLSTATICLIB = ..\libperl530s$(a) +PERLIMPLIB = $(COREDIR)\libperl532$(a) +PERLIMPLIBBASE = libperl532$(a) +PERLSTATICLIB = ..\libperl532s$(a) INT64 = long long else @@ -1035,12 +1019,12 @@ endif # 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 ?= $(COREDIR)\perl530$(a) -PERLIMPLIBBASE ?= perl530$(a) -PERLEXPLIB ?= $(COREDIR)\perl530.exp -PERLSTATICLIB ?= ..\perl530s$(a) -PERLDLL = ..\perl530.dll -PERLDLLBASE = perl530.dll +PERLIMPLIB ?= $(COREDIR)\perl532$(a) +PERLIMPLIBBASE ?= perl532$(a) +PERLEXPLIB ?= $(COREDIR)\perl532.exp +PERLSTATICLIB ?= ..\perl532s$(a) +PERLDLL = ..\perl532.dll +PERLDLLBASE = perl532.dll # don't let "gmake -n all" try to run "miniperl.exe make_ext.pl" PLMAKE = gmake @@ -1209,7 +1193,7 @@ CFG_VARS = \ "archname=$(ARCHNAME)" \ "cc=$(CC)" \ "ld=$(LINK32)" \ - "ccflags=$(subst ",\",$(EXTRACFLAGS) $(OPTIMIZE) $(DEFINES) $(BUILDOPT))" \ + "ccflags=$(subst ",\",$(EXTRACFLAGS) $(DEFINES) $(BUILDOPT))" \ "usecplusplus=$(USE_CPLUSPLUS)" \ "cf_email=$(EMAIL)" \ "d_mymalloc=$(PERL_MALLOC)" \ @@ -1284,9 +1268,9 @@ static: $(PERLEXESTATIC) $(GLOBEXE) : perlglob.c ifeq ($(CCTYPE),GCC) - $(LINK32) $(OPTIMIZE) $(BLINK_FLAGS) -mconsole -o $@ perlglob.c $(LIBFILES) + $(LINK32) $(EXTRACFLAGS) $(OPTIMIZE) $(BLINK_FLAGS) -mconsole -o $@ perlglob.c $(LIBFILES) else - $(CC) $(OPTIMIZE) $(PDBOUT) -Fe$@ perlglob.c -link $(BLINK_FLAGS) \ + $(CC) $(EXTRACFLAGS) $(OPTIMIZE) $(PDBOUT) -Fe$@ perlglob.c -link $(BLINK_FLAGS) \ setargv$(o) $(LIBFILES) && $(EMBED_EXE_MANI) endif @@ -1542,7 +1526,7 @@ $(MINIWIN32_OBJ) : $(CORE_NOCFG_H) $(CC) -c $(CFLAGS) $(MINIBUILDOPT) -DPERL_IS_MINIPERL $(OBJOUT_FLAG)$@ $(PDBOUT) $(*F).c # -DPERL_IMPLICIT_SYS needs C++ for perllib.c -# rules wrapped in .IFs break Win9X build (we end up with unbalanced []s unless +# rules wrapped in .IFs break Win9X build (we end up with unbalanced []s # unless the .IF is true), so instead we use a .ELSE with the default. # This is the only file that depends on perlhost.h, vmem.h, and vdir.h @@ -1588,7 +1572,7 @@ ifeq ($(CCTYPE),GCC) else $(LINK32) -dll -out:$@ $(BLINK_FLAGS) \ @Extensions_static \ - -base:0x28000000 $(DELAYLOAD) $(LIBFILES) \ + $(DELAYLOAD) $(LIBFILES) \ $(PERLDLL_RES) $(PERLDLL_OBJ) $(PERLEXPLIB) $(EMBED_DLL_MANI) endif @@ -1733,7 +1717,6 @@ utils: $(HAVEMINIPERL) ..\utils\Makefile copy ..\README.amiga ..\pod\perlamiga.pod copy ..\README.android ..\pod\perlandroid.pod copy ..\README.bs2000 ..\pod\perlbs2000.pod - copy ..\README.ce ..\pod\perlce.pod copy ..\README.cn ..\pod\perlcn.pod copy ..\README.cygwin ..\pod\perlcygwin.pod copy ..\README.dos ..\pod\perldos.pod @@ -1762,7 +1745,7 @@ utils: $(HAVEMINIPERL) ..\utils\Makefile copy ..\README.tw ..\pod\perltw.pod copy ..\README.vos ..\pod\perlvos.pod copy ..\README.win32 ..\pod\perlwin32.pod - copy ..\pod\perldelta.pod ..\pod\perl5303delta.pod + copy ..\pod\perldelta.pod ..\pod\perl5321delta.pod $(MINIPERL) -I..\lib $(PL2BAT) $(UTILS) $(MINIPERL) -I..\lib ..\autodoc.pl .. $(MINIPERL) -I..\lib ..\pod\perlmodlib.PL -q .. @@ -1834,7 +1817,6 @@ distclean: realclean -if exist $(LIBDIR)\MIME rmdir /s /q $(LIBDIR)\MIME -if exist $(LIBDIR)\Module rmdir /s /q $(LIBDIR)\Module -if exist $(LIBDIR)\Net\FTP rmdir /s /q $(LIBDIR)\Net\FTP - -if exist $(LIBDIR)\OpenBSD rmdir /s /q $(LIBDIR)\OpenBSD -if exist $(LIBDIR)\Params rmdir /s /q $(LIBDIR)\Params -if exist $(LIBDIR)\Parse rmdir /s /q $(LIBDIR)\Parse -if exist $(LIBDIR)\Perl rmdir /s /q $(LIBDIR)\Perl @@ -1861,15 +1843,16 @@ distclean: realclean -if exist $(LIBDIR)\Win32API rmdir /s /q $(LIBDIR)\Win32API -if exist $(LIBDIR)\XS rmdir /s /q $(LIBDIR)\XS -cd $(PODDIR) && del /f *.html *.bat roffitall \ - perl5303delta.pod perlaix.pod perlamiga.pod perlandroid.pod \ - perlapi.pod perlbs2000.pod perlce.pod perlcn.pod perlcygwin.pod \ + perl5321delta.pod perlaix.pod perlamiga.pod perlandroid.pod \ + perlapi.pod perlbs2000.pod perlcn.pod perlcygwin.pod \ perldos.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 \ perlnetware.pod perlopenbsd.pod perlos2.pod perlos390.pod \ perlos400.pod perlplan9.pod perlqnx.pod perlriscos.pod \ perlsolaris.pod perlsymbian.pod perlsynology.pod perltoc.pod \ - perltru64.pod perltw.pod perlvos.pod perlwin32.pod + perltru64.pod perltw.pod perluniprops.pod perlvos.pod \ + perlwin32.pod -cd ..\utils && del /f h2ph splain perlbug pl2pm h2xs \ perldoc perlivp libnetcfg enc2xs encguess piconv cpan *.bat \ xsubpp pod2html instmodsh json_pp prove ptar ptardiff ptargrep shasum corelist zipdetails |