This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
win32: remove support for disabling USE_LARGE_FILES
[perl5.git] / win32 / Makefile
index 603e97b..93d55f7 100644 (file)
@@ -1,11 +1,11 @@
 #
 # 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.
 #
 
 ##
@@ -38,7 +38,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.29.4
+#INST_VER      = \5.33.5
 
 #
 # Comment this out if you DON'T want your perl installation to have
@@ -81,17 +81,9 @@ USE_ITHREADS = define
 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
 
@@ -111,8 +103,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)
@@ -133,6 +123,8 @@ DEFAULT_INC_EXCLUDES_DOT = define
 #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
@@ -192,7 +184,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 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
@@ -211,18 +203,15 @@ DEFAULT_INC_EXCLUDES_DOT = 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
 
 #
@@ -256,7 +245,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         =
 
@@ -300,10 +289,6 @@ USE_ITHREADS       = undef
 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
@@ -348,40 +333,23 @@ PROCESSOR_ARCHITECTURE    = x86
 # 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
@@ -390,8 +358,7 @@ PREMSVC80   = undef
 ARCHITECTURE = $(PROCESSOR_ARCHITECTURE)
 !IF "$(ARCHITECTURE)" == "AMD64"
 ARCHITECTURE   = x64
-!ENDIF
-!IF "$(ARCHITECTURE)" == "IA64"
+!ELSEIF "$(ARCHITECTURE)" == "IA64"
 ARCHITECTURE   = ia64
 !ENDIF
 
@@ -405,25 +372,23 @@ ARCHNAME  = MSWin32-$(ARCHITECTURE)-perlio
 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
@@ -435,11 +400,16 @@ EMBED_EXE_MANI    = if exist $@.manifest mt -nologo -manifest $@.manifest -outputre
                  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
@@ -480,7 +450,7 @@ INST_HTML   = $(INST_TOP)$(INST_VER)\html
 !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
@@ -499,52 +469,51 @@ INCLUDES  = -I$(COREDIR) -I.\include -I. -I..
 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
 
@@ -555,7 +524,7 @@ DEFINES             = $(DEFINES) -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
 !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
 
@@ -574,12 +543,10 @@ DEFINES           = $(DEFINES) -DNO_THREAD_SAFE_LOCALE
 # 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   = \
@@ -588,7 +555,7 @@ 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
@@ -614,8 +581,6 @@ LIBBASEFILES    = $(LIBBASEFILES) bufferoverflowU.lib
 
 LIBFILES       = $(LIBBASEFILES) $(LIBC)
 
-#EXTRACFLAGS   = -nologo -GF -W4 -wd4127 -wd4706
-EXTRACFLAGS    = -nologo -GF -W3
 !IF "$(__ICC)" == "define"
 EXTRACFLAGS    = $(EXTRACFLAGS) -Qstd=c99
 !ENDIF
@@ -633,11 +598,7 @@ EXEOUT_FLAG        = -Fe
 
 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)
 
@@ -645,7 +606,7 @@ RSC_FLAGS   = -DINCLUDE_MANIFEST
 # 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
@@ -694,9 +655,9 @@ $(o).dll:
 
 # 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
@@ -762,6 +723,7 @@ UTILS               =                       \
                ..\utils\instmodsh      \
                ..\utils\json_pp        \
                ..\utils\pod2html       \
+               ..\utils\streamzip      \
                bin\exetype.pl          \
                bin\runperl.pl          \
                bin\pl2bat.pl           \
@@ -802,7 +764,6 @@ MICROCORE_SRC       =               \
                ..\op.c         \
                ..\pad.c        \
                ..\perl.c       \
-               ..\perlapi.c    \
                ..\perly.c      \
                ..\pp.c         \
                ..\pp_ctl.c     \
@@ -927,7 +888,7 @@ CFG_VARS    =                                       \
                "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)"             \
@@ -943,7 +904,6 @@ CFG_VARS    =                                       \
                "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:"=\")"         \
@@ -955,7 +915,7 @@ CFG_VARS    =                                       \
 #
 
 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.
 
@@ -1035,9 +995,6 @@ $(MINIDIR)\.exists : $(CFGH_TMPL)
        @(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&& \
@@ -1058,7 +1015,7 @@ $(MINIDIR)\.exists : $(CFGH_TMPL)
        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&& \
@@ -1069,15 +1026,6 @@ $(MINIDIR)\.exists : $(CFGH_TMPL)
        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)&& \
@@ -1158,7 +1106,7 @@ perldll.def : $(MINIPERL) $(CONFIGPM) ..\embed.fnc ..\makedef.pl create_perllibs
            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)
@@ -1202,14 +1150,14 @@ perlmainst$(o) : perlmainst.c
 $(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
@@ -1244,13 +1192,6 @@ Extensions_clean:
 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
@@ -1272,7 +1213,6 @@ utils: $(PERLEXE) ..\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
@@ -1295,13 +1235,12 @@ utils: $(PERLEXE) ..\utils\Makefile
        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 ..
@@ -1329,7 +1268,6 @@ distclean: realclean
        -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
@@ -1401,18 +1339,17 @@ 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 \
-           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