summaryrefslogtreecommitdiffstats
path: root/src/Make_mvc.mak
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2015-05-04 16:18:42 +0200
committerBram Moolenaar <Bram@vim.org>2015-05-04 16:18:42 +0200
commitf300ad230bc394556aac070faa88ca1667ffbfa2 (patch)
tree137c21063bce41a68e431319b98605a379142bba /src/Make_mvc.mak
parentc4dc286fe67f385043efddca1bb7196619df8fb2 (diff)
patch 7.4.720v7.4.720
Problem: Can't build with Visual Studio 2015. Solution: Recognize the "version 14" numbers and omit /nodefaultlib when appropriate. (Paul Moore)
Diffstat (limited to 'src/Make_mvc.mak')
-rw-r--r--src/Make_mvc.mak18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
index f7517574cb..05574c62fa 100644
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -343,7 +343,7 @@ XPM_INC = -I $(XPM)\include -I $(XPM)\..\include
# 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:lines
!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)