changeset 6797:56a735cff1a0 v7.4.720

patch 7.4.720 Problem: Can't build with Visual Studio 2015. Solution: Recognize the "version 14" numbers and omit /nodefaultlib when appropriate. (Paul Moore)
author Bram Moolenaar <bram@vim.org>
date Mon, 04 May 2015 16:18:42 +0200
parents 24d91496a2b2
children f1759b3c709f
files src/Make_mvc.mak src/version.c
diffstat 2 files changed, 16 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -343,7 +343,7 @@ XPM_INC	  = -I $(XPM)\include -I $(XPM)\
 # gdi32.lib and comdlg32.lib for printing support
 # ole32.lib and uuid.lib are needed for FEAT_SHORTCUT
 CON_LIB = oldnames.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib \
-          comdlg32.lib ole32.lib uuid.lib /machine:$(CPU) /nodefaultlib
+          comdlg32.lib ole32.lib uuid.lib /machine:$(CPU)
 !if "$(DELAYLOAD)" == "yes"
 CON_LIB = $(CON_LIB) /DELAYLOAD:comdlg32.dll /DELAYLOAD:ole32.dll DelayImp.lib
 !endif
@@ -446,6 +446,9 @@ MSVCVER = 11.0
 !if "$(_NMAKE_VER)" == "12.00.21005.1"
 MSVCVER = 12.0
 !endif
+!if "$(_NMAKE_VER)" == "14.00.22609.0"
+MSVCVER = 14.0
+!endif
 !endif
 
 # Abort building VIM if version of VC is unrecognised.
@@ -460,7 +463,7 @@ MSVCVER = 12.0
 !endif
 
 # Convert processor ID to MVC-compatible number
-!if ("$(MSVCVER)" != "8.0") && ("$(MSVCVER)" != "9.0") && ("$(MSVCVER)" != "10.0") && ("$(MSVCVER)" != "11.0") && ("$(MSVCVER)" != "12.0")
+!if ("$(MSVCVER)" != "8.0") && ("$(MSVCVER)" != "9.0") && ("$(MSVCVER)" != "10.0") && ("$(MSVCVER)" != "11.0") && ("$(MSVCVER)" != "12.0") && ("$(MSVCVER)" != "14.0")
 !if "$(CPUNR)" == "i386"
 CPUARG = /G3
 !elseif "$(CPUNR)" == "i486"
@@ -484,6 +487,13 @@ CPUARG = /arch:SSE2
 LIBC =
 DEBUGINFO = /Zi
 
+# Don't use /nodefaultlib on MSVC 14
+!if "$(MSVCVER)" == "14.0"
+NODEFAULTLIB =
+!else
+NODEFAULTLIB = /nodefaultlib
+!endif
+
 !ifdef NODEBUG
 VIM = vim
 !if "$(OPTIMIZE)" == "SPACE"
@@ -655,7 +665,7 @@ GUI_OBJ = \
 GUI_LIB = \
 	gdi32.lib version.lib $(IME_LIB) \
 	winspool.lib comctl32.lib advapi32.lib shell32.lib \
-	/machine:$(CPU) /nodefaultlib
+	/machine:$(CPU)
 !else
 SUBSYSTEM = console
 !endif
@@ -976,7 +986,7 @@ conflags = $(conflags) /map /mapinfo:lin
 !ENDIF
 
 LINKARGS1 = $(linkdebug) $(conflags)
-LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(LIBC) $(OLE_LIB)  user32.lib $(SNIFF_LIB) \
+LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(NODEFAULTLIB) $(LIBC) $(OLE_LIB) user32.lib $(SNIFF_LIB) \
 		$(LUA_LIB) $(MZSCHEME_LIB) $(PERL_LIB) $(PYTHON_LIB) $(PYTHON3_LIB) $(RUBY_LIB) \
 		$(TCL_LIB) $(NETBEANS_LIB) $(XPM_LIB) $(LINK_PDB)
 
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    720,
+/**/
     719,
 /**/
     718,