]> granicus.if.org Git - vim/commitdiff
updated for version 7.4.412 v7.4.412
authorBram Moolenaar <Bram@vim.org>
Fri, 22 Aug 2014 16:12:57 +0000 (18:12 +0200)
committerBram Moolenaar <Bram@vim.org>
Fri, 22 Aug 2014 16:12:57 +0000 (18:12 +0200)
Problem:    Can't build on Windows XP with MSVC.
Solution:   Add SUBSYSTEM_VER to the Makefile. (Yongwei Wu)

src/INSTALLpc.txt
src/Make_mvc.mak
src/version.c

index 7ba2801b0a2daa0ce5898e8ef48b89021c687c42..370c208eecdbc48c95a37409ae5b3f0068c468d5 100644 (file)
@@ -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
 ========
 
index c93f4b4aaa8a8cbe2d8e6e21cea77665925f8da1..31bcd6844066b165e0d775e0ecebd404fae41d7b 100644 (file)
@@ -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)
index 93660b44b5cbb0b58825174a330886122f58c6c1..40b7ae483ad77a3e0e88b44608000c08db3d9fca 100644 (file)
@@ -741,6 +741,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    412,
 /**/
     411,
 /**/