summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Hay <steve.m.hay@googlemail.com>2017-06-16 08:49:52 +0100
committerSteve Hay <steve.m.hay@googlemail.com>2017-06-16 18:17:21 +0100
commit3aa3d69ac5e208c16829ec576c5f16f90681d60c (patch)
treef9f619509bacbc61451fee531a15c9ecf261afbd
parentd8efeb4672ed789e8b5d885676607ec8487984d5 (diff)
downloadperl-3aa3d69ac5e208c16829ec576c5f16f90681d60c.tar.gz
Remove unnecessary MSVC*FREE CCTYPEs from Windows makefiles
As was pointed out recently in perl #131487, there is little point in most of these since the Express (now Community) versions are so close to the full versions anyway these days. MSVC70FREE is retained since it was the only one that was actually being made use of.
-rw-r--r--README.win324
-rw-r--r--win32/GNUmakefile64
-rw-r--r--win32/Makefile45
-rw-r--r--win32/makefile.mk45
4 files changed, 38 insertions, 120 deletions
diff --git a/README.win32 b/README.win32
index d0a865cbc2..56acf1882c 100644
--- a/README.win32
+++ b/README.win32
@@ -159,7 +159,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 MSVC90FREE-MSVC141FREE first.
+file to set CCTYPE to one of MSVC90-MSVC141 first.
=item Microsoft Visual C++ 2005 Express Edition
@@ -201,7 +201,7 @@ while the latest versions install into version-specific locations such as
Perl should now build using the win32/Makefile. You will need to edit that
file to set
- CCTYPE = MSVC80FREE
+ CCTYPE = MSVC80
and to set CCHOME, CCINCDIR and CCLIBDIR as per the environment setup above.
diff --git a/win32/GNUmakefile b/win32/GNUmakefile
index 7d75f2672a..2f2f1e962c 100644
--- a/win32/GNUmakefile
+++ b/win32/GNUmakefile
@@ -159,31 +159,19 @@ DEFAULT_INC_EXCLUDES_DOT := define
#CCTYPE := MSVC70FREE
# Windows Server 2003 SP1 Platform SDK (April 2005)
#CCTYPE := SDK2003SP1
-# Visual C++ 2005 (aka Visual C++ 8.0) (full version)
+# Visual C++ 2005 (aka Visual C++ 8.0) (full version or Express Edition)
#CCTYPE := MSVC80
-# Visual C++ 2005 Express Edition (aka Visual C++ 8.0) (free version)
-#CCTYPE := MSVC80FREE
-# Visual C++ 2008 (aka Visual C++ 9.0) (full version)
+# Visual C++ 2008 (aka Visual C++ 9.0) (full version or Express Edition)
#CCTYPE := MSVC90
-# Visual C++ 2008 Express Edition (aka Visual C++ 9.0) (free version)
-#CCTYPE := MSVC90FREE
-# Visual C++ 2010 (aka Visual C++ 10.0) (full version)
+# Visual C++ 2010 (aka Visual C++ 10.0) (full version or Express Edition)
#CCTYPE := MSVC100
-# Visual C++ 2010 Express Edition (aka Visual C++ 10.0) (free version)
-#CCTYPE := MSVC100FREE
-# Visual C++ 2012 (aka Visual C++ 11.0) (full version)
+# Visual C++ 2012 (aka Visual C++ 11.0) (full version or Express Edition)
#CCTYPE := MSVC110
-# Visual C++ 2012 Express Edition (aka Visual C++ 11.0) (free version)
-#CCTYPE := MSVC110FREE
-# Visual C++ 2013 (aka Visual C++ 12.0) (full version)
+# Visual C++ 2013 (aka Visual C++ 12.0) (full version or Express Edition)
#CCTYPE := MSVC120
-# Visual C++ 2013 Express Edition (aka Visual C++ 12.0) (free version)
-#CCTYPE := MSVC120FREE
-# Visual C++ 2015 (aka Visual C++ 14.0) (full version)
+# Visual C++ 2015 (aka Visual C++ 14.0) (full version or Express Edition)
#CCTYPE := MSVC140
-# Visual C++ 2015 Express Edition (aka Visual C++ 14.0) (free version)
-#CCTYPE := MSVC140FREE
-# Visual C++ 2017 (aka Visual C++ 14.1) (all versions)
+# Visual C++ 2017 (aka Visual C++ 14.1) (full version or Community Edition)
#CCTYPE := MSVC141
# MinGW or mingw-w64 with gcc-3.4.5 or later
#CCTYPE := GCC
@@ -655,8 +643,6 @@ CXX_FLAG = -TP -EHsc
ifeq ($(CCTYPE),MSVC140)
LIBC = ucrt.lib
-else ifeq ($(CCTYPE),MSVC140FREE)
-LIBC = ucrt.lib
else ifeq ($(CCTYPE),MSVC141)
LIBC = ucrt.lib
else
@@ -672,8 +658,6 @@ LINK_DBG = -debug
else ifeq ($(CFG),DebugFull)
ifeq ($(CCTYPE),MSVC140)
LIBC = ucrtd.lib
-else ifeq ($(CCTYPE),MSVC140FREE)
-LIBC = ucrtd.lib
else ifeq ($(CCTYPE),MSVC141)
LIBC = ucrtd.lib
else
@@ -711,11 +695,9 @@ ifeq ($(PREMSVC80),undef)
DEFINES += -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
endif
-# Likewise for deprecated Winsock APIs in VC++ 14.0 for now.
+# Likewise for deprecated Winsock APIs in VC++ 14.0 onwards for now.
ifeq ($(CCTYPE),MSVC140)
DEFINES += -D_WINSOCK_DEPRECATED_NO_WARNINGS
-else ifeq ($(CCTYPE),MSVC140FREE)
-DEFINES += -D_WINSOCK_DEPRECATED_NO_WARNINGS
else ifeq ($(CCTYPE),MSVC141)
DEFINES += -D_WINSOCK_DEPRECATED_NO_WARNINGS
endif
@@ -745,12 +727,6 @@ LIBBASEFILES += msvcrtd.lib vcruntimed.lib
else
LIBBASEFILES += msvcrt.lib vcruntime.lib
endif
-else ifeq ($(CCTYPE),MSVC140FREE)
-ifeq ($(CFG),DebugFull)
-LIBBASEFILES += msvcrtd.lib vcruntimed.lib
-else
-LIBBASEFILES += msvcrt.lib vcruntime.lib
-endif
else ifeq ($(CCTYPE),MSVC141)
ifeq ($(CFG),DebugFull)
LIBBASEFILES += msvcrtd.lib vcruntimed.lib
@@ -820,13 +796,6 @@ else
LINK_FLAGS += -subsystem:console,"5.01"
endif
-else ifeq ($(CCTYPE),MSVC120FREE)
-ifeq ($(WIN64),define)
-LINK_FLAGS += -subsystem:console,"5.02"
-else
-LINK_FLAGS += -subsystem:console,"5.01"
-endif
-
else ifeq ($(CCTYPE),MSVC140)
ifeq ($(WIN64),define)
LINK_FLAGS += -subsystem:console,"5.02"
@@ -834,13 +803,6 @@ else
LINK_FLAGS += -subsystem:console,"5.01"
endif
-else ifeq ($(CCTYPE),MSVC140FREE)
-ifeq ($(WIN64),define)
-LINK_FLAGS += -subsystem:console,"5.02"
-else
-LINK_FLAGS += -subsystem:console,"5.01"
-endif
-
else ifneq ($(CCTYPE),GCC)
PRIV_LINK_FLAGS += -subsystem:console
endif
@@ -1331,16 +1293,6 @@ ifeq ($(CCTYPE),MSVC140)
echo #define FILE_base^(fp^) PERLIO_FILE_base^(fp^)&& \
echo #define FILE_bufsiz^(fp^) ^(PERLIO_FILE_cnt^(fp^) + PERLIO_FILE_ptr^(fp^) - PERLIO_FILE_base^(fp^)^)&& \
echo #define I_STDBOOL)>> config.h
-else ifeq ($(CCTYPE),MSVC140FREE)
- @(echo #undef FILE_ptr&& \
- echo #undef FILE_cnt&& \
- echo #undef FILE_base&& \
- echo #undef FILE_bufsiz&& \
- echo #define FILE_ptr^(fp^) PERLIO_FILE_ptr^(fp^)&& \
- echo #define FILE_cnt^(fp^) PERLIO_FILE_cnt^(fp^)&& \
- echo #define FILE_base^(fp^) PERLIO_FILE_base^(fp^)&& \
- echo #define FILE_bufsiz^(fp^) ^(PERLIO_FILE_cnt^(fp^) + PERLIO_FILE_ptr^(fp^) - PERLIO_FILE_base^(fp^)^)&& \
- echo #define I_STDBOOL)>> config.h
else ifeq ($(CCTYPE),MSVC141)
@(echo #undef FILE_ptr&& \
echo #undef FILE_cnt&& \
diff --git a/win32/Makefile b/win32/Makefile
index 802ef405b2..51e2c27b14 100644
--- a/win32/Makefile
+++ b/win32/Makefile
@@ -119,31 +119,19 @@ CCTYPE = MSVC60
#CCTYPE = MSVC70FREE
# Windows Server 2003 SP1 Platform SDK (April 2005)
#CCTYPE = SDK2003SP1
-# Visual C++ 2005 (aka Visual C++ 8.0) (full version)
+# Visual C++ 2005 (aka Visual C++ 8.0) (full version or Express Edition)
#CCTYPE = MSVC80
-# Visual C++ 2005 Express Edition (aka Visual C++ 8.0) (free version)
-#CCTYPE = MSVC80FREE
-# Visual C++ 2008 (aka Visual C++ 9.0) (full version)
+# Visual C++ 2008 (aka Visual C++ 9.0) (full version or Express Edition)
#CCTYPE = MSVC90
-# Visual C++ 2008 Express Edition (aka Visual C++ 9.0) (free version)
-#CCTYPE = MSVC90FREE
-# Visual C++ 2010 (aka Visual C++ 10.0) (full version)
+# Visual C++ 2010 (aka Visual C++ 10.0) (full version or Express Edition)
#CCTYPE = MSVC100
-# Visual C++ 2010 Express Edition (aka Visual C++ 10.0) (free version)
-#CCTYPE = MSVC100FREE
-# Visual C++ 2012 (aka Visual C++ 11.0) (full version)
+# Visual C++ 2012 (aka Visual C++ 11.0) (full version or Express Edition)
#CCTYPE = MSVC110
-# Visual C++ 2012 Express Edition (aka Visual C++ 11.0) (free version)
-#CCTYPE = MSVC110FREE
-# Visual C++ 2013 (aka Visual C++ 12.0) (full version)
+# Visual C++ 2013 (aka Visual C++ 12.0) (full version or Express Edition)
#CCTYPE = MSVC120
-# Visual C++ 2013 Express Edition (aka Visual C++ 12.0) (free version)
-#CCTYPE = MSVC120FREE
-# Visual C++ 2015 (aka Visual C++ 14.0) (full version)
+# Visual C++ 2015 (aka Visual C++ 14.0) (full version or Express Edition)
#CCTYPE = MSVC140
-# Visual C++ 2015 Express Edition (aka Visual C++ 14.0) (free version)
-#CCTYPE = MSVC140FREE
-# Visual C++ 2017 (aka Visual C++ 14.1) (all versions)
+# Visual C++ 2017 (aka Visual C++ 14.1) (full version or Community Edition)
#CCTYPE = MSVC141
#
@@ -502,8 +490,7 @@ DEFINES = -DWIN32 -D_CONSOLE -DNO_STRICT
LOCDEFS = -DPERLDLL -DPERL_CORE
CXX_FLAG = -TP -EHsc
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" \
- || "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
LIBC = ucrt.lib
!ELSE
LIBC = msvcrt.lib
@@ -518,8 +505,7 @@ OPTIMIZE = -Od -MD -Zi
LINK_DBG = -debug
!ELSE
!IF "$(CFG)" == "DebugFull"
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" \
- || "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
LIBC = ucrtd.lib
!ELSE
LIBC = msvcrtd.lib
@@ -558,9 +544,8 @@ OPTIMIZE = $(OPTIMIZE) -fp:precise
DEFINES = $(DEFINES) -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
!ENDIF
-# Likewise for deprecated Winsock APIs in VC++ 14.0 for now.
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" \
- || "$(CCTYPE)" == "MSVC141"
+# Likewise for deprecated Winsock APIs in VC++ 14.0 onwards for now.
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
DEFINES = $(DEFINES) -D_WINSOCK_DEPRECATED_NO_WARNINGS
!ENDIF
@@ -584,8 +569,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)" == "MSVC140FREE" \
- || "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
! IF "$(CFG)" == "DebugFull"
LIBBASEFILES = $(LIBBASEFILES) msvcrtd.lib vcruntimed.lib
! ELSE
@@ -642,8 +626,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)" == "MSVC120FREE" \
- || "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE"
+!IF "$(CCTYPE)" == "MSVC120" || "$(CCTYPE)" == "MSVC140"
! IF "$(WIN64)" == "define"
LINK_FLAGS = $(LINK_FLAGS) -subsystem:console,"5.02"
! ELSE
@@ -991,7 +974,7 @@ perlglob$(o) : perlglob.c
@echo.>>$@
@echo #ifndef _config_h_footer_>>$@
@echo #define _config_h_footer_>>$@
-!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" || "$(CCTYPE)" == "MSVC141"
+!IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
@echo #undef FILE_ptr>>$@
@echo #define FILE_ptr(fp) PERLIO_FILE_ptr(fp)>>$@
@echo #undef FILE_cnt>>$@
diff --git a/win32/makefile.mk b/win32/makefile.mk
index 0e2f4630be..65aefa10d2 100644
--- a/win32/makefile.mk
+++ b/win32/makefile.mk
@@ -131,31 +131,19 @@ DEFAULT_INC_EXCLUDES_DOT *= define
#CCTYPE *= MSVC70FREE
# Windows Server 2003 SP1 Platform SDK (April 2005)
#CCTYPE = SDK2003SP1
-# Visual C++ 2005 (aka Visual C++ 8.0) (full version)
+# Visual C++ 2005 (aka Visual C++ 8.0) (full version or Express Edition)
#CCTYPE *= MSVC80
-# Visual C++ 2005 Express Edition (aka Visual C++ 8.0) (free version)
-#CCTYPE *= MSVC80FREE
-# Visual C++ 2008 (aka Visual C++ 9.0) (full version)
+# Visual C++ 2008 (aka Visual C++ 9.0) (full version or Express Edition)
#CCTYPE *= MSVC90
-# Visual C++ 2008 Express Edition (aka Visual C++ 9.0) (free version)
-#CCTYPE *= MSVC90FREE
-# Visual C++ 2010 (aka Visual C++ 10.0) (full version)
+# Visual C++ 2010 (aka Visual C++ 10.0) (full version or Express Edition)
#CCTYPE = MSVC100
-# Visual C++ 2010 Express Edition (aka Visual C++ 10.0) (free version)
-#CCTYPE = MSVC100FREE
-# Visual C++ 2012 (aka Visual C++ 11.0) (full version)
+# Visual C++ 2012 (aka Visual C++ 11.0) (full version or Express Edition)
#CCTYPE = MSVC110
-# Visual C++ 2012 Express Edition (aka Visual C++ 11.0) (free version)
-#CCTYPE = MSVC110FREE
-# Visual C++ 2013 (aka Visual C++ 12.0) (full version)
+# Visual C++ 2013 (aka Visual C++ 12.0) (full version or Express Edition)
#CCTYPE = MSVC120
-# Visual C++ 2013 Express Edition (aka Visual C++ 12.0) (free version)
-#CCTYPE = MSVC120FREE
-# Visual C++ 2015 (aka Visual C++ 14.0) (full version)
+# Visual C++ 2015 (aka Visual C++ 14.0) (full version or Express Edition)
#CCTYPE = MSVC140
-# Visual C++ 2015 Express Edition (aka Visual C++ 14.0) (free version)
-#CCTYPE = MSVC140FREE
-# Visual C++ 2017 (aka Visual C++ 14.1) (all versions)
+# Visual C++ 2017 (aka Visual C++ 14.1) (full version or Community Edition)
#CCTYPE = MSVC141
# MinGW or mingw-w64 with gcc-3.4.5 or later
#CCTYPE = GCC
@@ -636,8 +624,7 @@ DEFINES = -DWIN32 -D_CONSOLE -DNO_STRICT
LOCDEFS = -DPERLDLL -DPERL_CORE
CXX_FLAG = -TP -EHsc
-.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" \
- || "$(CCTYPE)" == "MSVC141"
+.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
LIBC = ucrt.lib
.ELSE
LIBC = msvcrt.lib
@@ -650,8 +637,7 @@ LINK_DBG = -debug
OPTIMIZE = -Od -MD -Zi
LINK_DBG = -debug
.ELIF "$(CFG)" == "DebugFull"
-.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" \
- || "$(CCTYPE)" == "MSVC141"
+.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
LIBC = ucrtd.lib
.ELSE
LIBC = msvcrtd.lib
@@ -688,9 +674,8 @@ OPTIMIZE += -fp:precise
DEFINES += -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
.ENDIF
-# Likewise for deprecated Winsock APIs in VC++ 14.0 for now.
-.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" \
- || "$(CCTYPE)" == "MSVC141"
+# Likewise for deprecated Winsock APIs in VC++ 14.0 onwards for now.
+.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
DEFINES += -D_WINSOCK_DEPRECATED_NO_WARNINGS
.ENDIF
@@ -713,8 +698,7 @@ LIBBASEFILES = oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib \
netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib \
odbc32.lib odbccp32.lib comctl32.lib
-.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" \
- || "$(CCTYPE)" == "MSVC141"
+.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
.IF "$(CFG)" == "DebugFull"
LIBBASEFILES += msvcrtd.lib vcruntimed.lib
.ELSE
@@ -775,8 +759,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)" == "MSVC120FREE" \
- || "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE"
+.IF "$(CCTYPE)" == "MSVC120" || "$(CCTYPE)" == "MSVC140"
.IF "$(WIN64)" == "define"
LINK_FLAGS += -subsystem:console,"5.02"
.ELSE
@@ -1265,7 +1248,7 @@ $(MINIDIR)\.exists : $(CFGH_TMPL)
echo #undef NVgf&& \
echo #undef USE_LONG_DOUBLE&& \
echo #undef USE_CPLUSPLUS)>> config.h
-.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC140FREE" || "$(CCTYPE)" == "MSVC141"
+.IF "$(CCTYPE)" == "MSVC140" || "$(CCTYPE)" == "MSVC141"
@(echo #undef FILE_ptr&& \
echo #undef FILE_cnt&& \
echo #undef FILE_base&& \