updated for version 7.2.372
Problem: Cross-compiling GvimExt and xxd doesn't work.
Solution: Change the build files. (Markus Heidelberg)
diff --git a/src/GvimExt/Make_ming.mak b/src/GvimExt/Make_ming.mak
index f10f730..5997e7e 100644
--- a/src/GvimExt/Make_ming.mak
+++ b/src/GvimExt/Make_ming.mak
@@ -20,17 +20,11 @@
ifeq ($(CROSS),yes)
DEL = rm
ifeq ($(MINGWOLD),yes)
-CXX = i586-mingw32msvc-g++
CXXFLAGS := -O2 -mno-cygwin -fvtable-thunks
-WINDRES = i586-mingw32msvc-windres
else
-CXX = i386-mingw32msvc-g++
CXXFLAGS := -O2 -mno-cygwin
-WINDRES = i386-mingw32msvc-windres
endif
else
-CXX := g++
-WINDRES := windres
CXXFLAGS := -O2 -mno-cygwin
ifneq (sh.exe, $(SHELL))
DEL = rm
@@ -38,6 +32,8 @@
DEL = del
endif
endif
+CXX := $(CROSS_COMPILE)g++
+WINDRES := $(CROSS_COMPILE)windres
LIBS := -luuid
RES := gvimext.res
DEFFILE = gvimext_ming.def
diff --git a/src/INSTALLpc.txt b/src/INSTALLpc.txt
index ae65be0..a8b00f7 100644
--- a/src/INSTALLpc.txt
+++ b/src/INSTALLpc.txt
@@ -241,7 +241,7 @@
The Cygnus one many not fully work yet.
With Cygnus gcc you can use the Unix Makefile instead (you need to get the
Unix archive then). Then you get a Cygwin application (feels like Vim is
-runnin on Unix), while with Make_cyg.mak you get a Windows application (like
+running on Unix), while with Make_cyg.mak you get a Windows application (like
with the other makefiles).
diff --git a/src/Make_cyg.mak b/src/Make_cyg.mak
index 0a869dc..f0b4368 100644
--- a/src/Make_cyg.mak
+++ b/src/Make_cyg.mak
@@ -1,6 +1,6 @@
#
# Makefile for VIM on Win32, using Cygnus gcc
-# Last updated by Dan Sharp. Last Change: 2007 Sep 29
+# Last updated by Dan Sharp. Last Change: 2010 Feb 24
#
# Also read INSTALLpc.txt!
#
@@ -32,9 +32,12 @@
# OLE no or yes: set to yes to make OLE gvim (no)
# DEBUG no or yes: set to yes if you wish a DEBUGging build (no)
# CPUNR No longer supported, use ARCH.
-# ARCH i386 through pentium4: select -march argument to compile with (i386)
+# ARCH i386 through pentium4: select -march argument to compile with
+# (i386)
# USEDLL no or yes: set to yes to use the Runtime library DLL (no)
# For USEDLL=yes the cygwin1.dll is required to run Vim.
+# "no" does not work with latest version of Cygwin, use
+# Make_ming.mak instead. Or set CC to gcc-3.
# POSTSCRIPT no or yes: set to yes for PostScript printing (no)
# FEATURES TINY, SMALL, NORMAL, BIG or HUGE (BIG)
# WINVER Lowest Win32 version to support. (0x0400)
@@ -99,6 +102,7 @@
INCLUDES = -march=$(ARCH) -Iproto
#>>>>> name of the compiler and linker, name of lib directory
+CROSS_COMPILE =
CC = gcc
RC = windres
@@ -467,10 +471,10 @@
$(CC) $(CFLAGS) -o $(EXE) $(OBJ) $(LIBS) -luuid -lole32 $(EXTRA_LIBS)
xxd/xxd.exe: xxd/xxd.c
- $(MAKE) -C xxd -f Make_cyg.mak USEDLL=$(USEDLL)
+ $(MAKE) -C xxd -f Make_cyg.mak CC=$(CC) USEDLL=$(USEDLL)
GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h
- $(MAKE) -C GvimExt -f Make_ming.mak
+ $(MAKE) -C GvimExt -f Make_ming.mak CROSS_COMPILE=$(CROSS_COMPILE)
vimrun.exe: vimrun.c
$(CC) $(CFLAGS) -o vimrun.exe vimrun.c $(LIBS)
diff --git a/src/Make_ming.mak b/src/Make_ming.mak
index ae28a3d..ca630de 100644
--- a/src/Make_ming.mak
+++ b/src/Make_ming.mak
@@ -241,15 +241,15 @@
DEFINES=-DWIN32 -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) \
-DHAVE_PATHDEF -DFEAT_$(FEATURES)
ifeq ($(CROSS),yes)
-# cross-compiler:
-CC = i586-pc-mingw32msvc-gcc
+# cross-compiler prefix:
+CROSS_COMPILE = i586-pc-mingw32msvc-
DEL = rm
MKDIR = mkdir -p
-WINDRES = i586-pc-mingw32msvc-windres
+DIRSLASH = /
else
# normal (Windows) compilation:
-CC = gcc
ifneq (sh.exe, $(SHELL))
+CROSS_COMPILE =
DEL = rm
MKDIR = mkdir -p
DIRSLASH = /
@@ -258,8 +258,9 @@
MKDIR = mkdir
DIRSLASH = \\
endif
-WINDRES = windres
endif
+CC := $(CROSS_COMPILE)gcc
+WINDRES := $(CROSS_COMPILE)windres
#>>>>> end of choices
###########################################################################
@@ -549,10 +550,11 @@
upx vim.exe
xxd/xxd.exe: xxd/xxd.c
- $(MAKE) -C xxd -f Make_cyg.mak
+ $(MAKE) -C xxd -f Make_cyg.mak CC=$(CC)
GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h
$(MAKE) -C GvimExt -f Make_ming.mak
+ $(MAKE) -C GvimExt -f Make_ming.mak CROSS=$(CROSS) CROSS_COMPILE=$(CROSS_COMPILE)
clean:
-$(DEL) $(OUTDIR)$(DIRSLASH)*.o
diff --git a/src/version.c b/src/version.c
index 1718aa5..3af7dd3 100644
--- a/src/version.c
+++ b/src/version.c
@@ -682,6 +682,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 372,
+/**/
371,
/**/
370,
diff --git a/src/xxd/Make_cyg.mak b/src/xxd/Make_cyg.mak
index f04b7bf..ba74b18 100644
--- a/src/xxd/Make_cyg.mak
+++ b/src/xxd/Make_cyg.mak
@@ -12,6 +12,7 @@
LIBS =
endif
+CC = gcc
CFLAGS = -O2 -Wall -DWIN32 $(DEFINES)
ifneq (sh.exe, $(SHELL))
@@ -21,7 +22,7 @@
endif
xxd.exe: xxd.c
- gcc $(CFLAGS) -s -o xxd.exe xxd.c $(LIBS)
+ $(CC) $(CFLAGS) -s -o xxd.exe xxd.c $(LIBS)
clean:
-$(DEL) xxd.exe