1 To: vim_dev@googlegroups.com
4 From: Bram Moolenaar <Bram@moolenaar.net>
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
11 Problem: MingW needs build rule for included XPM files. Object directory
12 for 32 and 64 builds is the same, also for MSVC.
13 Solution: Add MingW build rule to use included XPM files. Add the CPU or
14 architecture to the object directory name. (Sergey Khorev)
15 Files: src/Make_ming.mak, src/Make_mvc.mak, src/xpm/README.txt
18 *** ../vim-7.3.652/src/Make_ming.mak 2012-08-02 21:21:43.000000000 +0200
19 --- src/Make_ming.mak 2012-09-05 17:43:11.000000000 +0200
22 ! # Makefile for VIM on Win32, using 'EGCS/mingw32 1.1.2'.
23 # Info at http://www.mingw.org
24 ! # Also requires 'GNU make 3.77', which you can get through a link
25 ! # to 'JanJaap's page from the above page.
26 # Get missing libraries from http://gnuwin32.sf.net.
28 # Tested on Win32 NT 4 and Win95.
30 ! # To make everything, just 'make -f Make_ming.mak'
31 ! # To make just e.g. gvim.exe, 'make -f Make_ming.mak gvim.exe'
32 ! # After a run, you can 'make -f Make_ming.mak clean' to clean up
34 # NOTE: Sometimes 'GNU Make' will stop after building vimrun.exe -- I think
35 # it's just run out of memory or something. Run again, and it will continue
37 ! # Makefile for VIM on Win32
39 # Info at http://www.mingw.org
40 ! # Alternative x86 and 64-builds: http://mingw-w64.sourceforge.net
41 ! # Also requires GNU make, which you can download from the same sites.
42 # Get missing libraries from http://gnuwin32.sf.net.
44 # Tested on Win32 NT 4 and Win95.
46 ! # To make everything, just 'make -f Make_ming.mak'.
47 ! # To make just e.g. gvim.exe, 'make -f Make_ming.mak gvim.exe'.
48 ! # After a run, you can 'make -f Make_ming.mak clean' to clean up.
50 # NOTE: Sometimes 'GNU Make' will stop after building vimrun.exe -- I think
51 # it's just run out of memory or something. Run again, and it will continue
54 # "make mpress" uses the MPRESS compressor for 32- and 64-bit EXEs:
55 # http://www.matcode.com/mpress.htm
57 ! # Maintained by Ron Aaron <ronaharon@yahoo.com>
58 ! # updated 2003 Jan 20
60 #>>>>> choose options:
61 # set to yes for a debug build
63 # "make mpress" uses the MPRESS compressor for 32- and 64-bit EXEs:
64 # http://www.matcode.com/mpress.htm
66 ! # Maintained by Ron Aaron <ronaharon@yahoo.com> et al.
67 ! # Updated 2012 Sep 5.
69 #>>>>> choose options:
70 # set to yes for a debug build
73 # set to yes to make gvim, no for vim
75 # FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE]
76 ! # set to TINY to make minimal version (few features)
78 ! # set to one of i386, i486, i586, i686 as the minimum target processor
80 ! # set to yes to cross-compile from unix; no=native Windows
82 ! # set to path to iconv.h and libiconv.a to enable using 'iconv.dll'
86 ! # set to yes to include multibyte support
88 ! # set to yes to include IME support
91 ! # set to yes to enable writing a postscript file with :hardcopy
93 ! # set to yes to enable OLE support
95 ! # Set the default $(WINVER) to make it work with pre-Win2k
99 ! # Set to yes to enable Cscope support
101 ! # Set to yes to enable Netbeans support
106 # set to yes to make gvim, no for vim
108 # FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE]
109 ! # Set to TINY to make minimal version (few features).
111 ! # Set to one of i386, i486, i586, i686 as the minimum target processor.
112 ! # For amd64/x64 architecture set ARCH=x86-64 .
114 ! # Set to yes to cross-compile from unix; no=native Windows.
116 ! # Set to path to iconv.h and libiconv.a to enable using 'iconv.dll'.
120 ! # Set to yes to include multibyte support.
122 ! # Set to yes to include IME support.
125 ! # Set to yes to enable writing a postscript file with :hardcopy.
127 ! # Set to yes to enable OLE support.
129 ! # Set the default $(WINVER) to make it work with pre-Win2k.
133 ! # Set to yes to enable Cscope support.
135 ! # Set to yes to enable Netbeans support.
145 # Only allow XPM for a GUI build.
147 ! CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include
156 # Only allow XPM for a GUI build.
160 ! ifeq ($(ARCH),i386)
163 ! ifeq ($(ARCH),i486)
166 ! ifeq ($(ARCH),i586)
169 ! ifeq ($(ARCH),i686)
172 + ifeq ($(ARCH),x86-64)
178 + CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include -I $(XPM)/../include
187 DEFINES += $(DEF_GUI)
190 ! OUTDIR = gobj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)
192 TARGET := vim$(DEBUG_SUFFIX).exe
193 ! OUTDIR = obj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)
198 DEFINES += $(DEF_GUI)
201 ! OUTDIR = gobj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH)
203 TARGET := vim$(DEBUG_SUFFIX).exe
204 ! OUTDIR = obj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH)
208 *** ../vim-7.3.652/src/Make_mvc.mak 2012-08-29 14:18:26.000000000 +0200
209 --- src/Make_mvc.mak 2012-09-05 17:33:56.000000000 +0200
213 # We're on Windows 95
215 !endif # !PROCESSOR_ARCHITECTURE
216 + OBJDIR = $(OBJDIR)$(CPU)
218 # Build a retail version by default
224 # XPM is not set, use the included xpm files, depending on the architecture.
225 ! !if ("$(CPU)" == "AMD64") || ("$(CPU)" == "IA64")
235 # XPM is not set, use the included xpm files, depending on the architecture.
236 ! !if "$(CPU)" == "AMD64"
238 ! !elseif "$(CPU)" == "i386"
245 *** ../vim-7.3.652/src/xpm/README.txt 2012-08-29 14:18:26.000000000 +0200
246 --- src/xpm/README.txt 2012-09-05 17:35:34.000000000 +0200
251 mingw32-make -f Make_ming.mak GUI=yes CSCOPE=yes XPM=e:/hg/xpm/x86
254 + mingw32-make -f Make_ming.mak GUI=yes ARCH=x86-64 XPM=E:\HG\xpm\x64
256 Microsoft Visual C++ on x64 (tested with versions 2008 and 2010):
257 nmake -f Make_mvc.mak GUI=yes CSCOPE=yes XPM=E:\HG\xpm\x64
259 *** ../vim-7.3.652/src/version.c 2012-09-05 17:28:08.000000000 +0200
260 --- src/version.c 2012-09-05 17:53:15.000000000 +0200
264 { /* Add new patch number below this line */
270 GUARD #2: Wait a minute -- supposing two swallows carried it together?
271 GUARD #1: No, they'd have to have it on a line.
272 GUARD #2: Well, simple! They'd just use a standard creeper!
273 GUARD #1: What, held under the dorsal guiding feathers?
274 GUARD #2: Well, why not?
275 The Quest for the Holy Grail (Monty Python)
277 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
278 /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
279 \\\ an exciting new programming language -- http://www.Zimbu.org ///
280 \\\ help me help AIDS victims -- http://ICCF-Holland.org ///