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)
Files:      src/Make_mvc.mak, src/xpm/x64/lib-vc14/libXpm.lib,
            src/xpm/x86/lib-vc14/libXpm.lib


*** ../vim-7.4.1943/src/Make_mvc.mak    2016-06-02 20:26:37.296366681 +0200
--- src/Make_mvc.mak    2016-06-18 21:29:03.620766358 +0200
***************
*** 255,260 ****
--- 255,299 ----
  !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.
  WP64CHECK = /Wp64
  
***************
*** 294,301 ****
  !endif
  !endif
  
! # Only allow NETBEANS and XPM for a GUI build and CHANNEL.
  !if "$(GUI)" == "yes"
  !if "$(NETBEANS)" == "yes" && "$(CHANNEL)" == "yes"
  # NETBEANS - Include support for Netbeans integration
  NETBEANS_PRO  = proto/netbeans.pro
--- 333,341 ----
  !endif
  !endif
  
! # GUI sepcific features.
  !if "$(GUI)" == "yes"
+ # Only allow NETBEANS for a GUI build and CHANNEL.
  !if "$(NETBEANS)" == "yes" && "$(CHANNEL)" == "yes"
  # NETBEANS - Include support for Netbeans integration
  NETBEANS_PRO  = proto/netbeans.pro
***************
*** 317,324 ****
  DIRECTX_OBJ   = $(OUTDIR)\gui_dwrite.obj
  !endif
  
  !ifndef XPM
! # XPM is not set, use the included xpm files, depending on the architecture.
  !if "$(CPU)" == "AMD64"
  XPM = xpm\x64
  !elseif "$(CPU)" == "i386"
--- 357,367 ----
  DIRECTX_OBJ   = $(OUTDIR)\gui_dwrite.obj
  !endif
  
+ # Only allow XPM for a GUI build.
  !ifndef XPM
! !ifndef USE_MSVCRT
! # Both XPM and USE_MSVCRT are not set, use the included xpm files, depending
! # on the architecture.
  !if "$(CPU)" == "AMD64"
  XPM = xpm\x64
  !elseif "$(CPU)" == "i386"
***************
*** 326,338 ****
  !else
  XPM = no
  !endif
! !endif
  !if "$(XPM)" != "no"
  # XPM - Include support for XPM signs
  # See the xpm directory for more information.
  XPM_OBJ   = $(OBJDIR)/xpm_w32.obj
  XPM_DEFS  = -DFEAT_XPM_W32
  XPM_LIB   = $(XPM)\lib\libXpm.lib
  XPM_INC         = -I $(XPM)\include -I $(XPM)\..\include
  !endif
  !endif
--- 369,390 ----
  !else
  XPM = no
  !endif
! !else # USE_MSVCRT
! XPM = no
! !endif # USE_MSVCRT
! !endif # XPM
  !if "$(XPM)" != "no"
  # XPM - Include support for XPM signs
  # See the xpm directory for more information.
  XPM_OBJ   = $(OBJDIR)/xpm_w32.obj
  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
+ !endif
  XPM_INC         = -I $(XPM)\include -I $(XPM)\..\include
  !endif
  !endif
***************
*** 395,437 ****
  INTDIR=$(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
  !if $(MSVC_MAJOR) < 8
  !if "$(CPUNR)" == "i386"
--- 447,452 ----
*** ../vim-7.4.1943/src/xpm/x64/lib-vc14/libXpm.lib     1970-01-01 
01:00:00.000000000 +0100
--- src/xpm/x64/lib-vc14/libXpm.lib     2016-06-18 21:29:03.620766358 +0200
***************
*** 0 ****
--- 1,350 ----
+ !<arch>
+ /               1466086426              0       1683      `
+ al_stdio_printf_options ÎÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌ@SUVWATH ì  Gray74‰\$ D‹ 0765ð 
�è H Öèort_rangecheckfailureÀt H‰0H‰h H‰ H…Àu ¸ýÿÿÿë ‹C ;C r 
H‹Ëèingt$XH‰D$PH‹„$P  
ParseDataAndCreate�èunwind$XpmWriteFileFromBuffer:"LIBCMT" 
/DEFAULTLIB:"OLDNAMES"  P`.xdata�ÌÌÌÌÌÌE3ÀH‰J D‰ H‹ H‰B L‰B L‰‚( .datau÷I‹S AƒÂ 
D ÐE…Àt'M‹È  @   L‰d$XD‹àL‰t$hM q L‰|$ M‹NðL  Ap‹B‰Ah‰jH‰j ët ºà sn‹RL ApH‹N 
èreeOldColorTablebNames /DEFAULTLIB:"uuid.lib" /DEFAULTLIB:"uuid.lib" 
/DEFAULTLIB:"LIBCMT" /DEFAULTLIB:"OLDNAMES"  �Ä …À HÁà o…öt
÷ ¨ 3© u ÇD$  D$0Pÿt$ èb Ç  0À.debug$f...@comp.idÒ[  ÿÿÇ@  „Àuù+ÊƒÇ ‹U  ù…öt"  
D+ "XPMENDEXT"Ä …À HÁÃ &ÿþÿÿ÷ 

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui