forked from aniani/vim
updated for version 7.4.412
Problem: Can't build on Windows XP with MSVC. Solution: Add SUBSYSTEM_VER to the Makefile. (Yongwei Wu)
This commit is contained in:
@@ -192,6 +192,30 @@ To set the environment execute the msvc2010.bat script. You can then build
|
|||||||
Vim with Make_mvc.mak.
|
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
|
2. MinGW
|
||||||
========
|
========
|
||||||
|
|
||||||
|
@@ -657,6 +657,10 @@ GUI_LIB = \
|
|||||||
SUBSYSTEM = console
|
SUBSYSTEM = console
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
|
!if "$(SUBSYSTEM_VER)" != ""
|
||||||
|
SUBSYSTEM = $(SUBSYSTEM),$(SUBSYSTEM_VER)
|
||||||
|
!endif
|
||||||
|
|
||||||
!if "$(GUI)" == "yes" && "$(DIRECTX)" == "yes"
|
!if "$(GUI)" == "yes" && "$(DIRECTX)" == "yes"
|
||||||
CFLAGS = $(CFLAGS) $(DIRECTX_DEFS)
|
CFLAGS = $(CFLAGS) $(DIRECTX_DEFS)
|
||||||
GUI_INCL = $(GUI_INCL) $(DIRECTX_INCL)
|
GUI_INCL = $(GUI_INCL) $(DIRECTX_INCL)
|
||||||
|
@@ -741,6 +741,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
412,
|
||||||
/**/
|
/**/
|
||||||
411,
|
411,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user