| To: vim_dev@googlegroups.com |
| Subject: Patch 7.3.326 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.3.326 |
| Problem: MingW 4.6 no longer supports the -mno-cygwin option. |
| Solution: Split the Cygwin and MingW makefiles. (Matsushita Shougo) |
| Files: src/GvimExt/Make_cyg.mak, src/GvimExt/Make_ming.mak, |
| src/Make_cyg.mak, src/Make_ming.mak, src/xxd/Make_ming.mak, |
| Filelist |
| |
| |
| |
| |
| |
| |
| --- 1,77 ---- |
| + # Project: gvimext |
| + # Generates gvimext.dll with gcc. |
| + # To be used with 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 |
| + |
| + # If cross-compiling set this to yes, else set it to no |
| + CROSS = no |
| + #CROSS = yes |
| + # For the old MinGW 2.95 (the one you get e.g. with debian woody) |
| + # set the following variable to yes and check if the executables are |
| + # really named that way. |
| + # If you have a newer MinGW or you are using cygwin set it to no and |
| + # check also the executables |
| + MINGWOLD = no |
| + |
| + # Link against the shared versions of libgcc/libstdc++ by default. Set |
| + # STATIC_STDCPLUS to "yes" to link against static versions instead. |
| + STATIC_STDCPLUS=no |
| + #STATIC_STDCPLUS=yes |
| + |
| + # Note: -static-libstdc++ is not available until gcc 4.5.x. |
| + LDFLAGS += -shared |
| + ifeq (yes, $(STATIC_STDCPLUS)) |
| + LDFLAGS += -static-libgcc -static-libstdc++ |
| + endif |
| + |
| + ifeq ($(CROSS),yes) |
| + DEL = rm |
| + ifeq ($(MINGWOLD),yes) |
| + CXXFLAGS := -O2 -mno-cygwin -fvtable-thunks |
| + else |
| + CXXFLAGS := -O2 -mno-cygwin |
| + endif |
| + else |
| + CXXFLAGS := -O2 -mno-cygwin |
| + ifneq (sh.exe, $(SHELL)) |
| + DEL = rm |
| + else |
| + DEL = del |
| + endif |
| + endif |
| + CXX := $(CROSS_COMPILE)g++ |
| + WINDRES := $(CROSS_COMPILE)windres |
| + WINDRES_CXX = $(CXX) |
| + WINDRES_FLAGS = --preprocessor="$(WINDRES_CXX) -E -xc" -DRC_INVOKED |
| + LIBS := -luuid |
| + 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) $(LDFLAGS) $(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) $(WINDRES_FLAGS) --input-format=rc --output-format=coff -DMING $? -o $@ |
| + |
| + clean: clean-custom |
| + -$(DEL) $(OBJ) $(RES) $(DLL) |
| |
| |
| |
| *** 1,6 **** |
| # Project: gvimext |
| # 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 |
| --- 1,6 ---- |
| # Project: gvimext |
| # Generates gvimext.dll with gcc. |
| ! # To be used with MingW. |
| # |
| # Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000 |
| # Now it is allocated dymanically by the linker by evaluating all DLLs |
| |
| *** 31,42 **** |
| ifeq ($(CROSS),yes) |
| DEL = rm |
| ifeq ($(MINGWOLD),yes) |
| ! CXXFLAGS := -O2 -mno-cygwin -fvtable-thunks |
| else |
| ! CXXFLAGS := -O2 -mno-cygwin |
| endif |
| else |
| ! CXXFLAGS := -O2 -mno-cygwin |
| ifneq (sh.exe, $(SHELL)) |
| DEL = rm |
| else |
| --- 31,42 ---- |
| ifeq ($(CROSS),yes) |
| DEL = rm |
| ifeq ($(MINGWOLD),yes) |
| ! CXXFLAGS := -O2 -fvtable-thunks |
| else |
| ! CXXFLAGS := -O2 |
| endif |
| else |
| ! CXXFLAGS := -O2 |
| ifneq (sh.exe, $(SHELL)) |
| DEL = rm |
| else |
| |
| *** 75,78 **** |
| |
| clean: clean-custom |
| -$(DEL) $(OBJ) $(RES) $(DLL) |
| - |
| --- 75,77 ---- |
| |
| |
| |
| *** 536,542 **** |
| $(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 CROSS_COMPILE=$(CROSS_COMPILE) |
| |
| vimrun.exe: vimrun.c |
| $(CC) $(CFLAGS) -o vimrun.exe vimrun.c $(LIBS) |
| --- 536,542 ---- |
| $(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_cyg.mak CROSS_COMPILE=$(CROSS_COMPILE) |
| |
| vimrun.exe: vimrun.c |
| $(CC) $(CFLAGS) -o vimrun.exe vimrun.c $(LIBS) |
| |
| *** 565,571 **** |
| endif |
| -$(DEL) pathdef.c |
| $(MAKE) -C xxd -f Make_cyg.mak clean |
| ! $(MAKE) -C GvimExt -f Make_ming.mak clean |
| |
| distclean: clean |
| -$(DEL) obj$(DIRSLASH)*.o |
| --- 565,571 ---- |
| endif |
| -$(DEL) pathdef.c |
| $(MAKE) -C xxd -f Make_cyg.mak clean |
| ! $(MAKE) -C GvimExt -f Make_cyg.mak clean |
| |
| distclean: clean |
| -$(DEL) obj$(DIRSLASH)*.o |
| |
| |
| |
| *** 641,647 **** |
| upx vim.exe |
| |
| xxd/xxd.exe: xxd/xxd.c |
| ! $(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 CROSS=$(CROSS) CROSS_COMPILE=$(CROSS_COMPILE) |
| --- 641,647 ---- |
| upx vim.exe |
| |
| xxd/xxd.exe: xxd/xxd.c |
| ! $(MAKE) -C xxd -f Make_ming.mak CC=$(CC) |
| |
| GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h |
| $(MAKE) -C GvimExt -f Make_ming.mak CROSS=$(CROSS) CROSS_COMPILE=$(CROSS_COMPILE) |
| |
| *** 659,665 **** |
| -$(DEL) mzscheme_base.c |
| endif |
| $(MAKE) -C GvimExt -f Make_ming.mak clean |
| ! $(MAKE) -C xxd -f Make_cyg.mak clean |
| |
| ########################################################################### |
| INCL = vim.h feature.h os_win32.h os_dos.h ascii.h keymap.h term.h macros.h \ |
| --- 659,665 ---- |
| -$(DEL) mzscheme_base.c |
| endif |
| $(MAKE) -C GvimExt -f Make_ming.mak clean |
| ! $(MAKE) -C xxd -f Make_ming.mak clean |
| |
| ########################################################################### |
| INCL = vim.h feature.h os_win32.h os_dos.h ascii.h keymap.h term.h macros.h \ |
| |
| |
| |
| |
| --- 1,28 ---- |
| + # The most simplistic Makefile, for MinGW gcc on MS-DOS |
| + |
| + ifndef USEDLL |
| + USEDLL = no |
| + endif |
| + |
| + ifeq (yes, $(USEDLL)) |
| + DEFINES = |
| + LIBS = -lc |
| + else |
| + DEFINES = |
| + LIBS = |
| + endif |
| + |
| + CC = gcc |
| + CFLAGS = -O2 -Wall -DWIN32 $(DEFINES) |
| + |
| + ifneq (sh.exe, $(SHELL)) |
| + DEL = rm |
| + else |
| + DEL = del |
| + endif |
| + |
| + xxd.exe: xxd.c |
| + $(CC) $(CFLAGS) -s -o xxd.exe xxd.c $(LIBS) |
| + |
| + clean: |
| + -$(DEL) xxd.exe |
| |
| |
| |
| *** 313,318 **** |
| --- 313,319 ---- |
| src/xxd/Make_bc5.mak \ |
| src/xxd/Make_cyg.mak \ |
| src/xxd/Make_djg.mak \ |
| + src/xxd/Make_ming.mak \ |
| src/xxd/Make_mvc.mak \ |
| nsis/gvim.nsi \ |
| nsis/README.txt \ |
| |
| |
| |
| *** 711,712 **** |
| --- 711,714 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 326, |
| /**/ |
| |
| -- |
| hundred-and-one symptoms of being an internet addict: |
| 33. You name your children Eudora, Mozilla and Dotcom. |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |