summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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&& \