mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
patch 7.4.1944
Problem: Win32: Cannot compile with XPM feature using VC2015 Solution: Add XPM libraries compiled with VC2015, and enable to build gvim.exe which supports XPM using VC2015. (Ken Takata)
This commit is contained in:
@@ -255,6 +255,45 @@ MAKEFLAGS_GVIMEXT = DEBUG=yes
|
|||||||
!endif
|
!endif
|
||||||
|
|
||||||
|
|
||||||
|
# Check VC version.
|
||||||
|
!if [echo MSVCVER=_MSC_VER> msvcver.c && $(CC) /EP msvcver.c > msvcver.~ 2> nul]
|
||||||
|
!message *** ERROR
|
||||||
|
!message Cannot run Visual C to determine its version. Make sure cl.exe is in your PATH.
|
||||||
|
!message This can usually be done by running "vcvarsall.bat", located in the bin directory where Visual Studio was installed.
|
||||||
|
!error Make aborted.
|
||||||
|
!else
|
||||||
|
!include msvcver.~
|
||||||
|
!if [del msvcver.c msvcver.~]
|
||||||
|
!endif
|
||||||
|
!endif
|
||||||
|
|
||||||
|
!if $(MSVCVER) < 1900
|
||||||
|
MSVC_MAJOR = ($(MSVCVER) / 100 - 6)
|
||||||
|
MSVCRT_VER = ($(MSVCVER) / 10 - 60)
|
||||||
|
!else
|
||||||
|
MSVC_MAJOR = ($(MSVCVER) / 100 - 5)
|
||||||
|
MSVCRT_VER = ($(MSVCVER) / 10 - 50)
|
||||||
|
!endif
|
||||||
|
|
||||||
|
# Calculate MSVCRT_VER
|
||||||
|
!if [(set /a MSVCRT_VER="$(MSVCRT_VER)" > nul) && set MSVCRT_VER > msvcrtver.~] == 0
|
||||||
|
!include msvcrtver.~
|
||||||
|
!if [del msvcrtver.~]
|
||||||
|
!endif
|
||||||
|
!endif
|
||||||
|
|
||||||
|
# Base name of the msvcrXX.dll
|
||||||
|
!if $(MSVCRT_VER) <= 60
|
||||||
|
MSVCRT_NAME = msvcrt
|
||||||
|
!else
|
||||||
|
MSVCRT_NAME = msvcr$(MSVCRT_VER)
|
||||||
|
!endif
|
||||||
|
|
||||||
|
!if $(MSVC_MAJOR) == 6
|
||||||
|
CPU = ix86
|
||||||
|
!endif
|
||||||
|
|
||||||
|
|
||||||
# Flag to turn on Win64 compatibility warnings for VC7.x and VC8.
|
# Flag to turn on Win64 compatibility warnings for VC7.x and VC8.
|
||||||
WP64CHECK = /Wp64
|
WP64CHECK = /Wp64
|
||||||
|
|
||||||
@@ -294,8 +333,9 @@ CHANNEL = $(GUI)
|
|||||||
!endif
|
!endif
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
# Only allow NETBEANS and XPM for a GUI build and CHANNEL.
|
# GUI sepcific features.
|
||||||
!if "$(GUI)" == "yes"
|
!if "$(GUI)" == "yes"
|
||||||
|
# Only allow NETBEANS for a GUI build and CHANNEL.
|
||||||
!if "$(NETBEANS)" == "yes" && "$(CHANNEL)" == "yes"
|
!if "$(NETBEANS)" == "yes" && "$(CHANNEL)" == "yes"
|
||||||
# NETBEANS - Include support for Netbeans integration
|
# NETBEANS - Include support for Netbeans integration
|
||||||
NETBEANS_PRO = proto/netbeans.pro
|
NETBEANS_PRO = proto/netbeans.pro
|
||||||
@@ -317,8 +357,11 @@ DIRECTX_INCL = gui_dwrite.h
|
|||||||
DIRECTX_OBJ = $(OUTDIR)\gui_dwrite.obj
|
DIRECTX_OBJ = $(OUTDIR)\gui_dwrite.obj
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
|
# Only allow XPM for a GUI build.
|
||||||
!ifndef XPM
|
!ifndef XPM
|
||||||
# XPM is not set, use the included xpm files, depending on the architecture.
|
!ifndef USE_MSVCRT
|
||||||
|
# Both XPM and USE_MSVCRT are not set, use the included xpm files, depending
|
||||||
|
# on the architecture.
|
||||||
!if "$(CPU)" == "AMD64"
|
!if "$(CPU)" == "AMD64"
|
||||||
XPM = xpm\x64
|
XPM = xpm\x64
|
||||||
!elseif "$(CPU)" == "i386"
|
!elseif "$(CPU)" == "i386"
|
||||||
@@ -326,13 +369,22 @@ XPM = xpm\x86
|
|||||||
!else
|
!else
|
||||||
XPM = no
|
XPM = no
|
||||||
!endif
|
!endif
|
||||||
!endif
|
!else # USE_MSVCRT
|
||||||
|
XPM = no
|
||||||
|
!endif # USE_MSVCRT
|
||||||
|
!endif # XPM
|
||||||
!if "$(XPM)" != "no"
|
!if "$(XPM)" != "no"
|
||||||
# XPM - Include support for XPM signs
|
# XPM - Include support for XPM signs
|
||||||
# See the xpm directory for more information.
|
# See the xpm directory for more information.
|
||||||
XPM_OBJ = $(OBJDIR)/xpm_w32.obj
|
XPM_OBJ = $(OBJDIR)/xpm_w32.obj
|
||||||
XPM_DEFS = -DFEAT_XPM_W32
|
XPM_DEFS = -DFEAT_XPM_W32
|
||||||
|
!if $(MSVC_MAJOR) >= 14
|
||||||
|
# VC14 cannot use a library built by VC12 or eariler, because VC14 uses
|
||||||
|
# Universal CRT.
|
||||||
|
XPM_LIB = $(XPM)\lib-vc14\libXpm.lib
|
||||||
|
!else
|
||||||
XPM_LIB = $(XPM)\lib\libXpm.lib
|
XPM_LIB = $(XPM)\lib\libXpm.lib
|
||||||
|
!endif
|
||||||
XPM_INC = -I $(XPM)\include -I $(XPM)\..\include
|
XPM_INC = -I $(XPM)\include -I $(XPM)\..\include
|
||||||
!endif
|
!endif
|
||||||
!endif
|
!endif
|
||||||
@@ -395,43 +447,6 @@ DEL_TREE = deltree /y
|
|||||||
INTDIR=$(OBJDIR)
|
INTDIR=$(OBJDIR)
|
||||||
OUTDIR=$(OBJDIR)
|
OUTDIR=$(OBJDIR)
|
||||||
|
|
||||||
!if [echo MSVCVER=_MSC_VER> msvcver.c && $(CC) /EP msvcver.c > msvcver.~ 2> nul]
|
|
||||||
!message *** ERROR
|
|
||||||
!message Cannot run Visual C to determine its version. Make sure cl.exe is in your PATH.
|
|
||||||
!message This can usually be done by running "vcvarsall.bat", located in the bin directory where Visual Studio was installed.
|
|
||||||
!error Make aborted.
|
|
||||||
!else
|
|
||||||
!include msvcver.~
|
|
||||||
!if [del msvcver.c msvcver.~]
|
|
||||||
!endif
|
|
||||||
!endif
|
|
||||||
|
|
||||||
!if $(MSVCVER) < 1900
|
|
||||||
MSVC_MAJOR = ($(MSVCVER) / 100 - 6)
|
|
||||||
MSVCRT_VER = ($(MSVCVER) / 10 - 60)
|
|
||||||
!else
|
|
||||||
MSVC_MAJOR = ($(MSVCVER) / 100 - 5)
|
|
||||||
MSVCRT_VER = ($(MSVCVER) / 10 - 50)
|
|
||||||
!endif
|
|
||||||
|
|
||||||
# Calculate MSVCRT_VER
|
|
||||||
!if [(set /a MSVCRT_VER="$(MSVCRT_VER)" > nul) && set MSVCRT_VER > msvcrtver.~] == 0
|
|
||||||
!include msvcrtver.~
|
|
||||||
!if [del msvcrtver.~]
|
|
||||||
!endif
|
|
||||||
!endif
|
|
||||||
|
|
||||||
# Base name of the msvcrXX.dll
|
|
||||||
!if $(MSVCRT_VER) <= 60
|
|
||||||
MSVCRT_NAME = msvcrt
|
|
||||||
!else
|
|
||||||
MSVCRT_NAME = msvcr$(MSVCRT_VER)
|
|
||||||
!endif
|
|
||||||
|
|
||||||
!if $(MSVC_MAJOR) == 6
|
|
||||||
CPU = ix86
|
|
||||||
!endif
|
|
||||||
|
|
||||||
# Convert processor ID to MVC-compatible number
|
# Convert processor ID to MVC-compatible number
|
||||||
!if $(MSVC_MAJOR) < 8
|
!if $(MSVC_MAJOR) < 8
|
||||||
!if "$(CPUNR)" == "i386"
|
!if "$(CPUNR)" == "i386"
|
||||||
|
@@ -753,6 +753,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 */
|
||||||
|
/**/
|
||||||
|
1944,
|
||||||
/**/
|
/**/
|
||||||
1943,
|
1943,
|
||||||
/**/
|
/**/
|
||||||
|
BIN
src/xpm/x64/lib-vc14/libXpm.lib
Normal file
BIN
src/xpm/x64/lib-vc14/libXpm.lib
Normal file
Binary file not shown.
BIN
src/xpm/x86/lib-vc14/libXpm.lib
Normal file
BIN
src/xpm/x86/lib-vc14/libXpm.lib
Normal file
Binary file not shown.
Reference in New Issue
Block a user