To: vim-dev@vim.org Subject: Patch 6.1.374 (extra) Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 6.1.374 (extra) Problem: MS-Windows: Cannot build GvimExt with MingW or Cygwin. Solution: Add makefile and modified resource files. (Rene de Zwart) Also support Cygwin. (Alejandro Lopez_Valencia) Files: GvimExt/Make_cyg.mak, GvimExt/Make_ming.mak, GvimExt/Makefile, GvimExt/gvimext_ming.def, GvimExt/gvimext_ming.rc *** ../vim61.373/GvimExt/Make_cyg.mak Sun Mar 9 15:08:20 2003 --- GvimExt/Make_cyg.mak Sun Mar 9 14:57:41 2003 *************** *** 0 **** --- 1,42 ---- + # Project: gvimext + # Generates gvimext.dll with Cygwin's -mno-cygwin + # + CPP := g++ -mno-cygwin -mwin32 + CC := gcc -mno-cygwin -mwin32 + WINDRES := windres + RES := gvimext.res + OBJ := gvimext.o $(RES) + LIBS := -luuid + + 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) + + DLLWRAP = dllwrap.exe + DEFFILE = gvimext_ming.def + STATICLIB = gvimext.a + EXPLIB = gvimext.exp + + $(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 + *** ../vim61.373/GvimExt/Make_ming.mak Sun Mar 9 15:08:20 2003 --- GvimExt/Make_ming.mak Sat Feb 1 23:39:24 2003 *************** *** 0 **** --- 1,42 ---- + # Project: gvimext + # Generates gvimext.dll with mingw + # + + CPP := g++.exe + CC := gcc.exe + WINDRES := windres.exe + RES := gvimext.res + OBJ := gvimext.o $(RES) + LIBS := -luuid + + 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) + + DLLWRAP=dllwrap.exe + DEFFILE=gvimext_ming.def + STATICLIB=gvimext.a + EXPLIB=gvimext.exp + + $(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 *** ../vim61.373/GvimExt/Makefile Fri Aug 24 22:29:48 2001 --- GvimExt/Makefile Sun Feb 2 13:05:48 2003 *************** *** 10,15 **** --- 10,17 ---- $(implib) -machine:$(CPU) -def:gvimext.def $** -out:gvimext.lib $(link) $(dlllflags) -base:0x1C000000 -out:$*.dll $** $(olelibsdll) shell32.lib gvimext.lib comctl32.lib gvimext.exp + gvimext.obj: gvimext.h + .cpp.obj: $(cc) $(cflags) -DFEAT_GETTEXT $(cvarsdll) $*.cpp *** ../vim61.373/GvimExt/gvimext_ming.def Sun Mar 9 15:08:20 2003 --- GvimExt/gvimext_ming.def Tue Jan 28 22:24:16 2003 *************** *** 0 **** --- 1,10 ---- + ;gvimdef_ming.def : Declares the module parameters for the DLL. + ;The mingw environment doesn't know anything about private declarations + ;Hence this is the same file as gvimext.def with private removed + + LIBRARY gvimext + DESCRIPTION 'Vim Shell Extension build with MinGW' + + EXPORTS + DllCanUnloadNow = DllCanUnloadNow@0 + DllGetClassObject = DllGetClassObject@12 *** ../vim61.373/GvimExt/gvimext_ming.rc Sun Mar 9 15:08:20 2003 --- GvimExt/gvimext_ming.rc Sun Feb 2 13:05:06 2003 *************** *** 0 **** --- 1,45 ---- + #include + #define xstr(x) str(x) + #define str(x) #x + VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,0,0,1 + PRODUCTVERSION 1,0,0,1 + FILEFLAGSMASK 0x3fL + #ifdef _DEBUG + FILEFLAGS 0x3L + #else + FILEFLAGS 0x2L + #endif + FILEOS 0x4L + FILETYPE VFT_DLL + FILESUBTYPE 0x0L + { + BLOCK "StringFileInfo" + { + BLOCK "040904b0" + { + VALUE "Comments", "Developed using COM architecture!\0" + VALUE "CompanyName", "Tianmiao Hu's Developer Studio\0" + VALUE "FileDescription", "A small project for the context menu of gvim!\0" + VALUE "FileVersion", "1, 0, 0, 1\0" + VALUE "InternalName", "gvim right-click menu extension\0" + VALUE "LegalCopyright", "Copyright © 1999 Tianmiao Hu\0" + VALUE "LegalTrademarks", "Tianmiao Hu's Gvim Context Menu Extension\0" + VALUE "OriginalFilename", "gvimext.dll\0" + VALUE "PrivateBuild", "\0" + VALUE "ProductName", "Tianmiao Hu's gvimext context menu extension\0" + VALUE "ProductVersion", "1, 0, 0, 1\0" + + #if defined(__GNUC__) + VALUE "SpecialBuild", "Build With " "MingW " xstr(__GNUC__) "." xstr(__GNUC_MINOR__) "." xstr(__GNUC_PATCHLEVEL__) " on " __DATE__ " " __TIME__ "\0" + #else + VALUE "SpecialBuild", "Unknown compiler\0" + + #endif + } + } + BLOCK "VarFileInfo" + { + VALUE "Translation", 0x409, 1200 + } + } *** ../vim61.373/src/version.c Sun Mar 9 15:05:10 2003 --- src/version.c Sun Mar 9 15:08:04 2003 *************** *** 613,614 **** --- 613,616 ---- { /* Add new patch number below this line */ + /**/ + 374, /**/ -- Never enter the boss's office unless it's absolutely necessary. Every boss saves one corner of the desk for useless assignments that are doled out like Halloween candy to each visitor. (Scott Adams - The Dilbert principle) /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// Creator of Vim - Vi IMproved -- http://www.Vim.org \\\ \\\ Project leader for A-A-P -- http://www.A-A-P.org /// \\\ Help AIDS victims, buy at Amazon -- http://ICCF.nl/click1.html ///