From eb058c0793b0f6c96b6b92cfb047804c8c625c5a Mon Sep 17 00:00:00 2001 From: Steve Hay Date: Thu, 14 Oct 2021 17:37:08 +0100 Subject: Remove old MSVC++ (pre-VC12) support from Windows Makefiles Also remove the Platform SDK 2003 SP1/R2 64-bit compiler since (having just tried it) it no longer builds perl because it doesn't allow mixed code and declarations. Also remove mention of the Windows SDK since it doesn't appear to contain the compiler or linker any more. This page says that the VC++ 2010 compiler and linker were included in the Windows 7 SDK but then makes no mention of it for the Windows 8 SDK: https://docs.microsoft.com/en-us/previous-versions/visualstudio/windows-sdk/ff660763(v=vs.110) The page notes that it is no longer being updated, but the whole of the C:\Program Files (x86)\Windows Kits folder on my system (which contains 8.0, 8.10 and 10) does not contain any cl.exe or link.exe. I've re-worded some of the if/else conditions in the makefiles to pick out earlier versions rather than later versions. Thus, the current versions become the "else" case, which means that the next version of Visual C++ is more likely to work without requiring any changes. --- README.win32 | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) (limited to 'README.win32') diff --git a/README.win32 b/README.win32 index 448e5907ed..41cd2728db 100644 --- a/README.win32 +++ b/README.win32 @@ -63,9 +63,8 @@ that are also supported by perl's makefile. =back The Microsoft Visual C++ compilers are also now being given away free. They -are available as "Visual C++ 2013-2019 Community Edition" (and also as part of -the ".NET Framework SDK") and are the same compilers that ship with "Visual -C++ 2013-2019 Professional". +are available as "Visual C++ 2013-2019 Community Edition" and are the same +compilers that ship with "Visual C++ 2013-2019 Professional". Visual C++ 2013 is capable of B XP and Windows Server 2003 but the build host requirement is Windows 7/Windows Server 2012. For more details see @@ -73,7 +72,6 @@ https://docs.microsoft.com/en-us/visualstudio/productinfo/vs2013-compatibility-v and https://docs.microsoft.com/en-us/visualstudio/productinfo/vs2013-sysrequirements-vs -The Windows SDK can be downloaded from L. The MinGW64 compiler is available at L. The latter is actually a cross-compiler targeting Win64. There's also a trimmed down compiler (no java, or gfortran) suitable for building perl available at: @@ -96,8 +94,8 @@ See L below for general hints about this. =item Make You need a "make" program to build the sources. If you are using -Visual C++ or the Windows SDK tools, you can use nmake supplied with Visual C++ -or Windows SDK. You may also use gmake instead of nmake. Builds using gcc need +Visual C++, you can use nmake supplied with Visual C++. +You may also use gmake instead of nmake. Builds using gcc need gmake. nmake is not supported for gcc builds. Parallel building is only supported with gmake, not nmake. @@ -133,8 +131,7 @@ so. These free versions of Visual C++ 2013-2019 Professional contain the same compilers and linkers that ship with the full versions, and also contain -everything necessary to build Perl, rather than requiring a separate download -of the Windows SDK like previous versions did. +everything necessary to build Perl. These packages can be downloaded by searching in the Download Center at L. (Providing exact @@ -149,13 +146,7 @@ using, e.g. (assuming the default installation location was chosen). Perl should now build using the win32/Makefile. You will need to edit that -file to set CCTYPE to one of MSVC90-MSVC142 first. - -=item Microsoft Platform SDK 64-bit Compiler - -The nmake that comes with the Platform SDK will suffice for building -Perl. Make sure you are building within one of the "Build Environment" -shells available after you install the Platform SDK from the Start Menu. +file to set CCTYPE to one of MSVC120-MSVC142 first. =item GCC @@ -198,7 +189,7 @@ unlike GCC. Make sure you are in the "win32" subdirectory under the perl toplevel. This directory contains a "Makefile" that will work with -versions of nmake that come with Visual C++ or the Windows SDK, and +versions of nmake that come with Visual C++, and a GNU make "GNUmakefile" that will work for all supported compilers. The defaults in the gmake makefile are setup to build using MinGW/gcc. -- cgit v1.2.1