To: vim-dev@vim.org Subject: Patch 6.2.319 (extra) Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 6.2.319 (extra) Problem: Building gvimext.dll with Mingw doesn't work properly. Solution: Use gcc instead of dllwrap. Use long option names. (Alejandro Lopez-Valencia) Files: src/GvimExt/Make_ming.mak *** ../vim-6.2.318/src/GvimExt/Make_ming.mak Sun May 4 11:49:25 2003 --- src/GvimExt/Make_ming.mak Sun Feb 29 17:29:25 2004 *************** *** 2,44 **** # Generates gvimext.dll with gcc. # Can be used for Cygwin and MingW (MingW ignores -mno-cygwin) # ! CPP := g++.exe ! CC := gcc.exe CXXFLAGS := -O2 -mno-cygwin LIBS := -luuid WINDRES := windres.exe - DLLWRAP = dllwrap.exe RES := gvimext.res DEFFILE = gvimext_ming.def ! STATICLIB = gvimext.a ! EXPLIB = gvimext.exp ! OBJ := gvimext.o $(RES) - INCS := DLL := gvimext.dll .PHONY: all all-before all-after clean clean-custom all: all-before $(DLL) all-after ! clean: clean-custom ! ${RM} $(OBJ) $(DLL) ${RES} ${EXPLIB} $(STATICLIB) ! ! $(DLL): $(OBJ) ! $(DLLWRAP) \ ! --def $(DEFFILE) \ ! --output-exp ${EXPLIB} \ ! --image-base 0x1C000000 \ ! --driver-name c++ \ ! --implib $(STATICLIB) \ ! $(OBJ) $(LIBS) \ ! --target=i386-mingw32 -mno-cygwin \ ! -o $(DLL) -s ! gvimext.o: gvimext.cpp ! $(CPP) -c $? -o $@ $(CXXFLAGS) -DFEAT_GETTEXT - ${RES}: gvimext_ming.rc - $(WINDRES) $? -I rc -o $@ -O coff -DMING --- 2,41 ---- # Generates gvimext.dll with gcc. # Can be used for Cygwin and MingW (MingW ignores -mno-cygwin) # ! # Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000 ! # Now it is allocated dymanically by the linker by evaluating all DLLs ! # already loaded in memory. The binary image contains as well information ! # for automatic pseudo-rebasing, if needed by the system. ALV 2004-02-29 ! ! CXX := g++ CXXFLAGS := -O2 -mno-cygwin LIBS := -luuid WINDRES := windres.exe RES := gvimext.res DEFFILE = gvimext_ming.def ! OBJ := gvimext.o DLL := gvimext.dll .PHONY: all all-before all-after clean clean-custom all: all-before $(DLL) all-after + $(DLL): $(OBJ) $(RES) $(DEFFILE) + $(CXX) -shared $(CXXFLAGS) -s -o $@ \ + -Wl,--enable-auto-image-base \ + -Wl,--enable-auto-import \ + -Wl,--whole-archive \ + $^ \ + -Wl,--no-whole-archive \ + $(LIBS) ! gvimext.o: gvimext.cpp ! $(CXX) $(CXXFLAGS) -DFEAT_GETTEXT -c $? -o $@ ! $(RES): gvimext_ming.rc ! $(WINDRES) --input-format=rc --output-format=coff -DMING $? -o $@ ! clean: clean-custom ! ${RM} $(OBJ) $(RES) $(DLL) *** ../vim-6.2.318/src/version.c Fri Mar 5 15:21:09 2004 --- src/version.c Sat Mar 6 21:03:41 2004 *************** *** 639,640 **** --- 639,642 ---- { /* Add new patch number below this line */ + /**/ + 319, /**/ -- Dogs must have a permit signed by the mayor in order to congregate in groups of three or more on private property. [real standing law in Oklahoma, United States of America] /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// Sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ Project leader for A-A-P -- http://www.A-A-P.org /// \\\ Buy at Amazon and help AIDS victims -- http://ICCF.nl/click1.html ///