# HG changeset patch # User Bram Moolenaar # Date 1267020507 -3600 # Node ID 4ec11bb387a559fb6168fdae70e7d0ad78e15c3a # Parent 3112fcc8923830fd9060c76d1ec9c75c59487d59 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 --- a/src/GvimExt/Make_ming.mak +++ b/src/GvimExt/Make_ming.mak @@ -20,17 +20,11 @@ MINGWOLD = no 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 @@ else 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 --- a/src/INSTALLpc.txt +++ b/src/INSTALLpc.txt @@ -241,7 +241,7 @@ Use Make_cyg.mak with Cygwin's GCC. See 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 --- 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 @@ DEFINES = -DWIN32 -DHAVE_PATHDEF -DFEAT_ INCLUDES = -march=$(ARCH) -Iproto #>>>>> name of the compiler and linker, name of lib directory +CROSS_COMPILE = CC = gcc RC = windres @@ -467,10 +471,10 @@ all: $(EXE) xxd/xxd.exe vimrun.exe insta $(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 --- a/src/Make_ming.mak +++ b/src/Make_ming.mak @@ -241,15 +241,15 @@ DEF_GUI=-DFEAT_GUI_W32 -DFEAT_CLIPBOARD 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 @@ DEL = del MKDIR = mkdir DIRSLASH = \\ endif -WINDRES = windres endif +CC := $(CROSS_COMPILE)gcc +WINDRES := $(CROSS_COMPILE)windres #>>>>> end of choices ########################################################################### @@ -549,10 +550,11 @@ upx: exes 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 --- a/src/version.c +++ b/src/version.c @@ -682,6 +682,8 @@ static char *(features[]) = 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 --- a/src/xxd/Make_cyg.mak +++ b/src/xxd/Make_cyg.mak @@ -12,6 +12,7 @@ DEFINES = -mno-cygwin LIBS = endif +CC = gcc CFLAGS = -O2 -Wall -DWIN32 $(DEFINES) ifneq (sh.exe, $(SHELL)) @@ -21,7 +22,7 @@ DEL = del 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