mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
updated for version 7.3.653
Problem: MingW needs build rule for included XPM files. Object directory for 32 and 64 builds is the same, also for MSVC. Solution: Add MingW build rule to use included XPM files. Add the CPU or architecture to the object directory name. (Sergey Khorev)
This commit is contained in:
@@ -1,14 +1,15 @@
|
|||||||
# Makefile for VIM on Win32, using 'EGCS/mingw32 1.1.2'.
|
# Makefile for VIM on Win32
|
||||||
|
#
|
||||||
# Info at http://www.mingw.org
|
# Info at http://www.mingw.org
|
||||||
# Also requires 'GNU make 3.77', which you can get through a link
|
# Alternative x86 and 64-builds: http://mingw-w64.sourceforge.net
|
||||||
# to 'JanJaap's page from the above page.
|
# Also requires GNU make, which you can download from the same sites.
|
||||||
# Get missing libraries from http://gnuwin32.sf.net.
|
# Get missing libraries from http://gnuwin32.sf.net.
|
||||||
#
|
#
|
||||||
# Tested on Win32 NT 4 and Win95.
|
# Tested on Win32 NT 4 and Win95.
|
||||||
#
|
#
|
||||||
# To make everything, just 'make -f Make_ming.mak'
|
# To make everything, just 'make -f Make_ming.mak'.
|
||||||
# To make just e.g. gvim.exe, 'make -f Make_ming.mak gvim.exe'
|
# To make just e.g. gvim.exe, 'make -f Make_ming.mak gvim.exe'.
|
||||||
# After a run, you can 'make -f Make_ming.mak clean' to clean up
|
# After a run, you can 'make -f Make_ming.mak clean' to clean up.
|
||||||
#
|
#
|
||||||
# NOTE: Sometimes 'GNU Make' will stop after building vimrun.exe -- I think
|
# NOTE: Sometimes 'GNU Make' will stop after building vimrun.exe -- I think
|
||||||
# it's just run out of memory or something. Run again, and it will continue
|
# it's just run out of memory or something. Run again, and it will continue
|
||||||
@@ -20,8 +21,8 @@
|
|||||||
# "make mpress" uses the MPRESS compressor for 32- and 64-bit EXEs:
|
# "make mpress" uses the MPRESS compressor for 32- and 64-bit EXEs:
|
||||||
# http://www.matcode.com/mpress.htm
|
# http://www.matcode.com/mpress.htm
|
||||||
#
|
#
|
||||||
# Maintained by Ron Aaron <ronaharon@yahoo.com>
|
# Maintained by Ron Aaron <ronaharon@yahoo.com> et al.
|
||||||
# updated 2003 Jan 20
|
# Updated 2012 Sep 5.
|
||||||
|
|
||||||
#>>>>> choose options:
|
#>>>>> choose options:
|
||||||
# set to yes for a debug build
|
# set to yes for a debug build
|
||||||
@@ -31,32 +32,33 @@ OPTIMIZE=MAXSPEED
|
|||||||
# set to yes to make gvim, no for vim
|
# set to yes to make gvim, no for vim
|
||||||
GUI=yes
|
GUI=yes
|
||||||
# FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE]
|
# FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE]
|
||||||
# set to TINY to make minimal version (few features)
|
# Set to TINY to make minimal version (few features).
|
||||||
FEATURES=BIG
|
FEATURES=BIG
|
||||||
# set to one of i386, i486, i586, i686 as the minimum target processor
|
# Set to one of i386, i486, i586, i686 as the minimum target processor.
|
||||||
|
# For amd64/x64 architecture set ARCH=x86-64 .
|
||||||
ARCH=i386
|
ARCH=i386
|
||||||
# set to yes to cross-compile from unix; no=native Windows
|
# Set to yes to cross-compile from unix; no=native Windows.
|
||||||
CROSS=no
|
CROSS=no
|
||||||
# set to path to iconv.h and libiconv.a to enable using 'iconv.dll'
|
# Set to path to iconv.h and libiconv.a to enable using 'iconv.dll'.
|
||||||
#ICONV="."
|
#ICONV="."
|
||||||
ICONV=yes
|
ICONV=yes
|
||||||
GETTEXT=yes
|
GETTEXT=yes
|
||||||
# set to yes to include multibyte support
|
# Set to yes to include multibyte support.
|
||||||
MBYTE=yes
|
MBYTE=yes
|
||||||
# set to yes to include IME support
|
# Set to yes to include IME support.
|
||||||
IME=yes
|
IME=yes
|
||||||
DYNAMIC_IME=yes
|
DYNAMIC_IME=yes
|
||||||
# set to yes to enable writing a postscript file with :hardcopy
|
# Set to yes to enable writing a postscript file with :hardcopy.
|
||||||
POSTSCRIPT=no
|
POSTSCRIPT=no
|
||||||
# set to yes to enable OLE support
|
# Set to yes to enable OLE support.
|
||||||
OLE=no
|
OLE=no
|
||||||
# Set the default $(WINVER) to make it work with pre-Win2k
|
# Set the default $(WINVER) to make it work with pre-Win2k.
|
||||||
ifndef WINVER
|
ifndef WINVER
|
||||||
WINVER = 0x0500
|
WINVER = 0x0500
|
||||||
endif
|
endif
|
||||||
# Set to yes to enable Cscope support
|
# Set to yes to enable Cscope support.
|
||||||
CSCOPE=yes
|
CSCOPE=yes
|
||||||
# Set to yes to enable Netbeans support
|
# Set to yes to enable Netbeans support.
|
||||||
NETBEANS=$(GUI)
|
NETBEANS=$(GUI)
|
||||||
|
|
||||||
|
|
||||||
@@ -431,11 +433,32 @@ endif
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef XPM
|
|
||||||
# Only allow XPM for a GUI build.
|
# Only allow XPM for a GUI build.
|
||||||
ifeq (yes, $(GUI))
|
ifeq (yes, $(GUI))
|
||||||
CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include
|
|
||||||
|
ifndef XPM
|
||||||
|
ifeq ($(ARCH),i386)
|
||||||
|
XPM = xpm/x86
|
||||||
endif
|
endif
|
||||||
|
ifeq ($(ARCH),i486)
|
||||||
|
XPM = xpm/x86
|
||||||
|
endif
|
||||||
|
ifeq ($(ARCH),i586)
|
||||||
|
XPM = xpm/x86
|
||||||
|
endif
|
||||||
|
ifeq ($(ARCH),i686)
|
||||||
|
XPM = xpm/x86
|
||||||
|
endif
|
||||||
|
ifeq ($(ARCH),x86-64)
|
||||||
|
XPM = xpm/x64
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
ifdef XPM
|
||||||
|
ifneq ($(XPM),no)
|
||||||
|
CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include -I $(XPM)/../include
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(DEBUG),yes)
|
ifeq ($(DEBUG),yes)
|
||||||
@@ -565,10 +588,10 @@ TARGET := gvim$(DEBUG_SUFFIX).exe
|
|||||||
DEFINES += $(DEF_GUI)
|
DEFINES += $(DEF_GUI)
|
||||||
OBJ += $(GUIOBJ)
|
OBJ += $(GUIOBJ)
|
||||||
LFLAGS += -mwindows
|
LFLAGS += -mwindows
|
||||||
OUTDIR = gobj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)
|
OUTDIR = gobj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH)
|
||||||
else
|
else
|
||||||
TARGET := vim$(DEBUG_SUFFIX).exe
|
TARGET := vim$(DEBUG_SUFFIX).exe
|
||||||
OUTDIR = obj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)
|
OUTDIR = obj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef GETTEXT
|
ifdef GETTEXT
|
||||||
|
@@ -213,6 +213,7 @@ CPU = i386
|
|||||||
# We're on Windows 95
|
# We're on Windows 95
|
||||||
CPU = i386
|
CPU = i386
|
||||||
!endif # !PROCESSOR_ARCHITECTURE
|
!endif # !PROCESSOR_ARCHITECTURE
|
||||||
|
OBJDIR = $(OBJDIR)$(CPU)
|
||||||
|
|
||||||
# Build a retail version by default
|
# Build a retail version by default
|
||||||
|
|
||||||
@@ -283,10 +284,12 @@ NETBEANS_LIB = WSock32.lib
|
|||||||
|
|
||||||
!ifndef XPM
|
!ifndef XPM
|
||||||
# XPM is not set, use the included xpm files, depending on the architecture.
|
# XPM is not set, use the included xpm files, depending on the architecture.
|
||||||
!if ("$(CPU)" == "AMD64") || ("$(CPU)" == "IA64")
|
!if "$(CPU)" == "AMD64"
|
||||||
XPM = xpm\x64
|
XPM = xpm\x64
|
||||||
!else
|
!elseif "$(CPU)" == "i386"
|
||||||
XPM = xpm\x86
|
XPM = xpm\x86
|
||||||
|
!else
|
||||||
|
XPM = no
|
||||||
!endif
|
!endif
|
||||||
!endif
|
!endif
|
||||||
!if "$(XPM)" != "no"
|
!if "$(XPM)" != "no"
|
||||||
|
@@ -719,6 +719,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 */
|
||||||
|
/**/
|
||||||
|
653,
|
||||||
/**/
|
/**/
|
||||||
652,
|
652,
|
||||||
/**/
|
/**/
|
||||||
|
@@ -10,6 +10,9 @@ nmake -f Make_mvc.mak GUI=yes CSCOPE=yes NETBEANS=yes XPM=e:\hg\xpm\x86
|
|||||||
MinGW:
|
MinGW:
|
||||||
mingw32-make -f Make_ming.mak GUI=yes CSCOPE=yes XPM=e:/hg/xpm/x86
|
mingw32-make -f Make_ming.mak GUI=yes CSCOPE=yes XPM=e:/hg/xpm/x86
|
||||||
|
|
||||||
|
MinGW 64 for x64:
|
||||||
|
mingw32-make -f Make_ming.mak GUI=yes ARCH=x86-64 XPM=E:\HG\xpm\x64
|
||||||
|
|
||||||
Microsoft Visual C++ on x64 (tested with versions 2008 and 2010):
|
Microsoft Visual C++ on x64 (tested with versions 2008 and 2010):
|
||||||
nmake -f Make_mvc.mak GUI=yes CSCOPE=yes XPM=E:\HG\xpm\x64
|
nmake -f Make_mvc.mak GUI=yes CSCOPE=yes XPM=E:\HG\xpm\x64
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user