summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2014-08-22 18:12:57 +0200
committerBram Moolenaar <Bram@vim.org>2014-08-22 18:12:57 +0200
commitce2f2e061db91cc62e13023695dfa4a2755581f5 (patch)
tree5e28ec8dda43a02286ad22a8f01ec6be6347da01
parent1b338d2022cb28fe143b134a966f13f18d14596c (diff)
downloadvim-git-ce2f2e061db91cc62e13023695dfa4a2755581f5.tar.gz
updated for version 7.4.412v7.4.412
Problem: Can't build on Windows XP with MSVC. Solution: Add SUBSYSTEM_VER to the Makefile. (Yongwei Wu)
-rw-r--r--src/INSTALLpc.txt24
-rw-r--r--src/Make_mvc.mak4
-rw-r--r--src/version.c2
3 files changed, 30 insertions, 0 deletions
diff --git a/src/INSTALLpc.txt b/src/INSTALLpc.txt
index 7ba2801b0..370c208ee 100644
--- a/src/INSTALLpc.txt
+++ b/src/INSTALLpc.txt
@@ -192,6 +192,30 @@ To set the environment execute the msvc2010.bat script. You can then build
Vim with Make_mvc.mak.
+Targeting Windows XP with new MSVC *new-msvc-windows-xp*
+----------------------------------
+
+Beginning with Visual C++ 2010, Microsoft changed the behavior of LINK.EXE
+so that it targets Windows 6.0 (Vista) by default. In order to override
+this, the target Windows version number needs to be passed to LINK like
+follows:
+ LINK ... /subsystem:console,5.01
+
+Make_mvc.mak now supports a macro SUBSYSTEM_VER to pass the Windows version.
+Use lines like follows to target Windows XP (assuming using Visual C++ 2012
+under 64-bit Windows):
+ set WinSdk71=%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.1A
+ set SDK_INCLUDE_DIR=%WinSdk71%\Include
+ set INCLUDE=%WinSdk71%\Include;%INCLUDE%
+ set LIB=%WinSdk71%\Lib;%LIB%
+ set PATH=%WinSdk71%\Bin;%PATH%
+ set CL=/D_USING_V110_SDK71_
+ nmake -f Make_mvc.mak ... WINVER=0x0501 SUBSYSTEM_VER=5.01
+
+The following Visual C++ team blog can serve as a reference page:
+ http://blogs.msdn.com/b/vcblog/archive/2012/10/08/windows-xp-targeting-with-c-in-visual-studio-2012.aspx
+
+
2. MinGW
========
diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
index c93f4b4aa..31bcd6844 100644
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -657,6 +657,10 @@ GUI_LIB = \
SUBSYSTEM = console
!endif
+!if "$(SUBSYSTEM_VER)" != ""
+SUBSYSTEM = $(SUBSYSTEM),$(SUBSYSTEM_VER)
+!endif
+
!if "$(GUI)" == "yes" && "$(DIRECTX)" == "yes"
CFLAGS = $(CFLAGS) $(DIRECTX_DEFS)
GUI_INCL = $(GUI_INCL) $(DIRECTX_INCL)
diff --git a/src/version.c b/src/version.c
index 93660b44b..40b7ae483 100644
--- 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 */
/**/
+ 412,
+/**/
411,
/**/
410,