#
# Makefile to build perl on Windows using Microsoft NMAKE.
# Supported compilers:
-# Microsoft Visual C++ 6.0 or later
+# Microsoft Visual C++ 7.0 or later
# Windows SDK 64-bit compiler and tools
#
# This is set up to build a perl.exe that runs off a shared library
-# (perl529.dll). Also makes individual DLLs for the XS extensions.
+# (perl533.dll). Also makes individual DLLs for the XS extensions.
#
##
# versioned installation can be obtained by setting INST_TOP above to a
# path that includes an arbitrary version string.
#
-#INST_VER = \5.29.4
+#INST_VER = \5.33.5
#
# Comment this out if you DON'T want your perl installation to have
USE_IMP_SYS = define
#
-# Comment this out if you don't want to enable large file support for
-# some reason. Should normally only be changed to maintain compatibility
-# with an older release of perl.
-#
-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
#
# 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)
#CCTYPE = MSVC140
# Visual C++ 2017 (aka Visual C++ 14.1) (full version or Community Edition)
#CCTYPE = MSVC141
+# Visual C++ 2019 (aka Visual C++ 14.2) (full version or Community Edition)
+#CCTYPE = MSVC142
#
# If you are using Intel C++ Compiler uncomment this
# 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 perl529s.lib will also be created.
+# variables below. A static library perl533s.lib will also be created.
# Ordinary perl.exe is not affected by this option.
#
#BUILD_STATIC = define
# Running VCVARS32.BAT, VCVARSALL.BAT or similar is *required* when using
# Visual C++.
# Versions of Visual C++ up to VC++ 7.1 define $(MSVCDir); versions since then
-# define $(VCINSTALLDIR) instead, but for VC++ 14.1 we need the subfolder given
+# define $(VCINSTALLDIR) instead, but from VC++ 14.1 we need the subfolder given
# by $(VCToolsInstallDir).
#
-!IF "$(CCTYPE)" == "MSVC60" || \
- "$(CCTYPE)" == "MSVC70" || "$(CCTYPE)" == "MSVC70FREE"
+!IF "$(CCTYPE)" == "MSVC70" || "$(CCTYPE)" == "MSVC70FREE"
CCHOME = $(MSVCDIR)
-!ELSE
-! IF "$(CCTYPE)" == "MSVC141"
+!ELSEIF "$(CCTYPE)" == "MSVC141" || "$(CCTYPE)" == "MSVC142"
CCHOME = $(VCTOOLSINSTALLDIR)
-! ELSE
+!ELSE
CCHOME = $(VCINSTALLDIR)
-! ENDIF
!ENDIF
#
#
# 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 =
USE_IMP_SYS = undef
!ENDIF
-!IF "$(USE_LARGE_FILES)" == ""
-USE_LARGE_FILES = undef
-!ENDIF
-
!IF "$(USE_64_BIT_INT)" == ""
USE_64_BIT_INT = undef
!ENDIF
# When we are running from a 32bit cmd.exe on AMD64 then
# PROCESSOR_ARCHITECTURE is set to x86 and PROCESSOR_ARCHITEW6432
# is set to AMD64
-!IF "$(PROCESSOR_ARCHITEW6432)" != ""
+! IF "$(PROCESSOR_ARCHITEW6432)" != ""
PROCESSOR_ARCHITECTURE = $(PROCESSOR_ARCHITEW6432)
WIN64 = define
-!ELSE
-!IF "$(PROCESSOR_ARCHITECTURE)" == "AMD64" || "$(PROCESSOR_ARCHITECTURE)" == "IA64"
+! ELSEIF "$(PROCESSOR_ARCHITECTURE)" == "AMD64" || "$(PROCESSOR_ARCHITECTURE)" == "IA64"
WIN64 = define
-!ELSE
+! ELSE
WIN64 = undef
-!ENDIF
-!ENDIF
+! ENDIF
!ENDIF
!IF "$(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.
-!IF "$(WIN64)" == "define" && "$(CCTYPE)" == "MSVC60"
-CCTYPE = SDK2003SP1
-!ENDIF
-
-# Disable the 64-bit-int option for (32-bit) MSVC60 builds since that compiler
-# does not support it.
-!IF "$(CCTYPE)" == "MSVC60"
-!UNDEF USE_64_BIT_INT
-USE_64_BIT_INT = undef
-!ENDIF
-
# Most relevant compiler-specific options fall into two groups:
# either pre-MSVC80 or MSVC80 onwards, so define a macro for this.
-!IF "$(CCTYPE)" == "MSVC60" || \
- "$(CCTYPE)" == "MSVC70" || "$(CCTYPE)" == "MSVC70FREE"
+!IF "$(CCTYPE)" == "MSVC70" || "$(CCTYPE)" == "MSVC70FREE"
PREMSVC80 = define
!ELSE
PREMSVC80 = undef
ARCHITECTURE = $(PROCESSOR_ARCHITECTURE)
!IF "$(ARCHITECTURE)" == "AMD64"
ARCHITECTURE = x64
-!ENDIF
-!IF "$(ARCHITECTURE)" == "IA64"
+!ELSEIF "$(ARCHITECTURE)" == "IA64"
ARCHITECTURE = ia64
!ENDIF
ARCHNAME = $(ARCHNAME)-thread
!ENDIF
-!IF "$(WIN64)" != "define"
-!IF "$(USE_64_BIT_INT)" == "define"
+!IF "$(WIN64)" != "define" && "$(USE_64_BIT_INT)" == "define"
ARCHNAME = $(ARCHNAME)-64int
!ENDIF
-!ENDIF
# All but the free version of VC++ 7.1 can load DLLs on demand. Makes the test
# suite run in about 10% less time.
!IF "$(CCTYPE)" != "MSVC70FREE"
# If no registry, advapi32 is only used for Perl_pp_getlogin/getlogin/GetUserNameA
# which is rare to execute
-!IF "$(USE_NO_REGISTRY)" != "undef"
+! IF "$(USE_NO_REGISTRY)" != "undef"
DELAYLOAD = -DELAYLOAD:ws2_32.dll -DELAYLOAD:advapi32.dll delayimp.lib
MINIDELAYLOAD =
-!ELSE
+! ELSE
DELAYLOAD = -DELAYLOAD:ws2_32.dll delayimp.lib
#miniperl never does any registry lookups
MINIDELAYLOAD = -DELAYLOAD:advapi32.dll
-!ENDIF
+! ENDIF
!ENDIF
# Visual C++ 2005 and 2008 (VC++ 8.0 and 9.0) create manifest files for EXEs and
if exist $@.manifest del $@.manifest
EMBED_DLL_MANI = if exist $@.manifest mt -nologo -manifest $@.manifest -outputresource:$@;2 && \
if exist $@.manifest del $@.manifest
+# This one is for perl.exe which already has an embedded manifest, so we want to
+# append to it, not replace it.
+APPEND_EXE_MANI = if exist $@.manifest mt -nologo -manifest $@.manifest -updateresource:$@;1 && \
+ if exist $@.manifest del $@.manifest
+
# Set the install location of the compiler headers/libraries.
# These are saved into $Config{incpath} and $Config{libpth}.
CCINCDIR = $(CCHOME)\include
-!IF "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC141" || "$(CCTYPE)" == "MSVC142"
! IF "$(WIN64)" == "define"
CCLIBDIR = $(CCHOME)\lib\x64
! ELSE
!IF "$(CCTYPE)" == ""
CC = @echo CCTYPE makefile variable not set && del mini\.exists && exit 1 &&
LINK32 = @echo CCTYPE makefile variable not set && del mini\.exists && exit 1 &&
-!ELSE IF "$(__ICC)" != "define"
+!ELSEIF "$(__ICC)" != "define"
CC = cl
LINK32 = link
!ELSE
DEFINES = -DWIN32 -D_CONSOLE -DNO_STRICT
LOCDEFS = -DPERLDLL -DPERL_CORE
CXX_FLAG = -TP -EHsc
+EXTRACFLAGS = -nologo -GF -W3
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141" || "$(CCTYPE)" == "MSVC142"
LIBC = ucrt.lib
!ELSE
LIBC = msvcrt.lib
!ENDIF
!IF "$(CFG)" == "Debug"
-OPTIMIZE = -Od -MD -Zi -DDEBUGGING
+OPTIMIZE = -Od -Zi
LINK_DBG = -debug
-!ELSE
-!IF "$(CFG)" == "DebugSymbols"
-OPTIMIZE = -Od -MD -Zi
+DEFINES = $(DEFINES) -DDEBUGGING
+EXTRACFLAGS = $(EXTRACFLAGS) -MD
+!ELSEIF "$(CFG)" == "DebugSymbols"
+OPTIMIZE = -Od -Zi
LINK_DBG = -debug
-!ELSE
-!IF "$(CFG)" == "DebugFull"
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
+EXTRACFLAGS = $(EXTRACFLAGS) -MD
+!ELSEIF "$(CFG)" == "DebugFull"
+! IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141" || "$(CCTYPE)" == "MSVC142"
LIBC = ucrtd.lib
-!ELSE
+! ELSE
LIBC = msvcrtd.lib
-!ENDIF
-OPTIMIZE = -Od -MDd -Zi -D_DEBUG -DDEBUGGING
+! ENDIF
+OPTIMIZE = -Od -Zi
LINK_DBG = -debug
+DEFINES = $(DEFINES) -D_DEBUG -DDEBUGGING
+EXTRACFLAGS = $(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
-! IF "$(CCTYPE)" != "MSVC60"
-# enable Whole Program Optimizations (WPO) and Link Time Code Generation (LTCG)
-OPTIMIZE = $(OPTIMIZE) -GL
-LINK_DBG = $(LINK_DBG) -ltcg
LIB_FLAGS = -ltcg
-! ENDIF
-!ENDIF
-!ENDIF
+EXTRACFLAGS = $(EXTRACFLAGS) -MD
!ENDIF
!IF "$(WIN64)" == "define"
-DEFINES = $(DEFINES) -DWIN64 -DCONSERVATIVE
+DEFINES = $(DEFINES) -DWIN64
OPTIMIZE = $(OPTIMIZE) -fp:precise
!ENDIF
!ENDIF
# Likewise for deprecated Winsock APIs in VC++ 14.0 onwards for now.
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141" || "$(CCTYPE)" == "MSVC142"
DEFINES = $(DEFINES) -D_WINSOCK_DEPRECATED_NO_WARNINGS
!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.
-!IF "$(WIN64)" == "undef"
-! IF "$(PREMSVC80)" == "define"
+!IF "$(WIN64)" == "undef" && "$(PREMSVC80)" == "define"
BUILDOPT = $(BUILDOPT) -D_USE_32BIT_TIME_T
-! ENDIF
!ENDIF
LIBBASEFILES = \
netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib \
version.lib odbc32.lib odbccp32.lib comctl32.lib
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141" || "$(CCTYPE)" == "MSVC142"
! IF "$(CFG)" == "DebugFull"
LIBBASEFILES = $(LIBBASEFILES) msvcrtd.lib vcruntimed.lib
! ELSE
LIBFILES = $(LIBBASEFILES) $(LIBC)
-#EXTRACFLAGS = -nologo -GF -W4 -wd4127 -wd4706
-EXTRACFLAGS = -nologo -GF -W3
!IF "$(__ICC)" == "define"
EXTRACFLAGS = $(EXTRACFLAGS) -Qstd=c99
!ENDIF
CFLAGS_O = $(CFLAGS) $(BUILDOPT)
-!IF "$(PREMSVC80)" == "undef"
-PRIV_LINK_FLAGS = $(PRIV_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
+RSC_FLAGS =
# VS 2017 (VC++ 14.1) requires at minimum Windows 7 SP1 (with latest Windows Updates)
# LINK_FLAGS else subsystem is only needed for EXE building, not XS DLL building
# Console vs GUI makes no difference for DLLs, so use default for cleaner
# building cmd lines
-!IF "$(CCTYPE)" == "MSVC120" || "$(CCTYPE)" == "MSVC140"
+!IF "$(CCTYPE)" == "MSVC120" || "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141" || "$(CCTYPE)" == "MSVC142"
! IF "$(WIN64)" == "define"
LINK_FLAGS = $(LINK_FLAGS) -subsystem:console,"5.02"
! ELSE
# 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 = ..\perl529.lib
-PERLSTATICLIB = ..\perl529s.lib
-PERLDLL = ..\perl529.dll
+PERLIMPLIB = ..\perl533.lib
+PERLSTATICLIB = ..\perl533s.lib
+PERLDLL = ..\perl533.dll
MINIPERL = ..\miniperl.exe
MINIDIR = .\mini
..\utils\instmodsh \
..\utils\json_pp \
..\utils\pod2html \
+ ..\utils\streamzip \
bin\exetype.pl \
bin\runperl.pl \
bin\pl2bat.pl \
..\op.c \
..\pad.c \
..\perl.c \
- ..\perlapi.c \
..\perly.c \
..\pp.c \
..\pp_ctl.c \
"archname=$(ARCHNAME)" \
"cc=$(CC)" \
"ld=$(LINK32)" \
- "ccflags=$(EXTRACFLAGS) $(OPTIMIZE:"=\") $(DEFINES) $(BUILDOPT)" \
+ "ccflags=$(EXTRACFLAGS) $(DEFINES) $(BUILDOPT)" \
"usecplusplus=$(USE_CPLUSPLUS)" \
"cf_email=$(EMAIL)" \
"d_mymalloc=$(PERL_MALLOC)" \
"usemultiplicity=$(USE_MULTI)" \
"use64bitint=$(USE_64_BIT_INT)" \
"uselongdouble=undef" \
- "uselargefiles=$(USE_LARGE_FILES)" \
"usesitecustomize=$(USE_SITECUST)" \
"default_inc_excludes_dot=$(DEFAULT_INC_EXCLUDES_DOT)" \
"LINK_FLAGS=$(LINK_FLAGS:"=\")" \
#
all : ..\git_version.h $(GLOBEXE) $(CONFIGPM) \
- $(UNIDATAFILES) MakePPPort $(PERLEXE) Extensions_nonxs Extensions PostExt \
+ $(UNIDATAFILES) MakePPPort $(PERLEXE) Extensions_nonxs Extensions \
$(PERLSTATIC)
@echo Everything is up to date. '$(MAKE_BARE) test' to run test suite.
@(echo.&& \
echo #ifndef _config_h_footer_&& \
echo #define _config_h_footer_&& \
- echo #undef Off_t&& \
- echo #undef LSEEKSIZE&& \
- echo #undef Off_t_size&& \
echo #undef PTRSIZE&& \
echo #undef SSize_t&& \
echo #undef HAS_ATOLL&& \
echo #undef USE_64_BIT_INT&& \
echo #undef USE_LONG_DOUBLE&& \
echo #undef USE_CPLUSPLUS)>> config.h
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141" || "$(CCTYPE)" == "MSVC142"
@(echo #undef FILE_ptr&& \
echo #undef FILE_cnt&& \
echo #undef FILE_base&& \
echo #define FILE_bufsiz^(fp^) ^(PERLIO_FILE_cnt^(fp^) + PERLIO_FILE_ptr^(fp^) - PERLIO_FILE_base^(fp^)^)&& \
echo #define I_STDBOOL)>> config.h
!ENDIF
-!IF "$(USE_LARGE_FILES)"=="define"
- @(echo #define Off_t $(INT64)&& \
- echo #define LSEEKSIZE ^8&& \
- echo #define Off_t_size ^8)>> config.h
-!ELSE
- @(echo #define Off_t long&& \
- echo #define LSEEKSIZE ^4&& \
- echo #define Off_t_size ^4)>> config.h
-!ENDIF
!IF "$(WIN64)"=="define"
@(echo #define PTRSIZE ^8&& \
echo #define SSize_t $(INT64)&& \
CCTYPE=$(CCTYPE) TARG_DIR=..\ > perldll.def
$(PERLDLL): perldll.def $(PERLDLL_OBJ) $(PERLDLL_RES) Extensions_static
- $(LINK32) -dll -def:perldll.def -base:0x28000000 -out:$@ @Extensions_static @<<
+ $(LINK32) -dll -def:perldll.def -out:$@ @Extensions_static @<<
$(BLINK_FLAGS) $(DELAYLOAD) $(LIBFILES) $(PERLDLL_OBJ) $(PERLDLL_RES)
<<
$(EMBED_DLL_MANI)
$(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES)
$(LINK32) -out:$@ $(BLINK_FLAGS) \
$(PERLEXE_OBJ) $(PERLEXE_RES) $(PERLIMPLIB) $(LIBFILES) $(SETARGV_OBJ)
- $(EMBED_EXE_MANI)
+ $(APPEND_EXE_MANI)
copy $(PERLEXE) $(WPERLEXE)
$(MINIPERL) -I..\lib bin\exetype.pl $(WPERLEXE) WINDOWS
$(PERLEXESTATIC): $(PERLSTATICLIB) $(CONFIGPM) $(PERLEXEST_OBJ) $(PERLEXE_RES)
$(LINK32) -out:$@ $(BLINK_FLAGS) \
$(PERLEXEST_OBJ) $(PERLEXE_RES) $(PERLSTATICLIB) $(LIBFILES) $(SETARGV_OBJ)
- $(EMBED_EXE_MANI)
+ $(APPEND_EXE_MANI)
MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs
$(MINIPERL) -I..\lib ..\mkppport
Extensions_realclean:
-if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(CPANDIR) --dir=$(DISTDIR) --dir=$(EXTDIR) --all --target=realclean
-PostExt: ..\lib\Storable\Limit.pm
-
-..\lib\Storable\Limit.pm: $(PERLEXE) Extensions
- cd ..\dist\Storable && $(MAKE) lib\Storable\Limit.pm
- if not exist ..\lib\Storable mkdir ..\lib\Storable
- copy ..\dist\Storable\lib\Storable\Limit.pm ..\lib\Storable\Limit.pm
-
#-------------------------------------------------------------------------------
doc: $(PERLEXE) ..\pod\perltoc.pod
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
copy ..\README.qnx ..\pod\perlqnx.pod
copy ..\README.riscos ..\pod\perlriscos.pod
copy ..\README.solaris ..\pod\perlsolaris.pod
- copy ..\README.symbian ..\pod\perlsymbian.pod
copy ..\README.synology ..\pod\perlsynology.pod
copy ..\README.tru64 ..\pod\perltru64.pod
copy ..\README.tw ..\pod\perltw.pod
copy ..\README.vos ..\pod\perlvos.pod
copy ..\README.win32 ..\pod\perlwin32.pod
- copy ..\pod\perldelta.pod ..\pod\perl5294delta.pod
+ copy ..\pod\perldelta.pod ..\pod\perl5335delta.pod
cd ..\win32
$(PERLEXE) $(PL2BAT) $(UTILS)
$(MINIPERL) -I..\lib ..\autodoc.pl ..
-del /f $(LIBDIR)\Time\HiRes.pm
-del /f $(LIBDIR)\Unicode\Normalize.pm
-del /f $(LIBDIR)\Math\BigInt\FastCalc.pm
- -del /f $(LIBDIR)\Storable.pm $(LIBDIR)\Storable\Limit.pm
-del /f $(LIBDIR)\Win32.pm
-del /f $(LIBDIR)\Win32CORE.pm
-del /f $(LIBDIR)\Win32API\File.pm
-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 \
- perl5294delta.pod perlaix.pod perlamiga.pod perlandroid.pod \
- perlapi.pod perlbs2000.pod perlce.pod perlcn.pod perlcygwin.pod \
+ perl5335delta.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 perluniprops.pod perlvos.pod \
- perlwin32.pod
+ perlsolaris.pod perlsynology.pod perltoc.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 \
+ perldoc perlivp libnetcfg enc2xs encguess piconv cpan streamzip *.bat \
xsubpp pod2html instmodsh json_pp prove ptar ptardiff ptargrep shasum corelist zipdetails
-del /f ..\config.sh perlmain.c dlutils.c config.h.new \
perlmainst.c