| To: vim-dev@vim.org |
| Subject: patch 7.1.065 (extra) |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=ISO-8859-1 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.1.065 (extra) |
| Problem: Win32: Compilation problem for newer version of w32api. |
| Solution: Only define __IID_DEFINED__ when needed. (Chris Sutcliffe) |
| Files: src/Make_ming.mak, src/iid_ole.c |
| |
| |
| |
| |
| |
| *** 572,579 **** |
| $(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h |
| $(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o |
| |
| $(OUTDIR)/if_ole.o: if_ole.cpp $(INCL) |
| ! $(CC) $(CFLAGS) -D__IID_DEFINED__ -c -o $(OUTDIR)/if_ole.o if_ole.cpp |
| |
| $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL) |
| ifeq (16, $(RUBY)) |
| --- 572,580 ---- |
| $(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h |
| $(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o |
| |
| + # Remove -D__IID_DEFINED__ for newer versions of the w32api |
| $(OUTDIR)/if_ole.o: if_ole.cpp $(INCL) |
| ! $(CC) $(CFLAGS) -c -o $(OUTDIR)/if_ole.o if_ole.cpp |
| |
| $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL) |
| ifeq (16, $(RUBY)) |
| |
| |
| |
| *** 16,24 **** |
| extern "C"{ |
| #endif |
| |
| |
| #ifndef __IID_DEFINED__ |
| ! #define __IID_DEFINED__ |
| |
| typedef struct _IID |
| { |
| --- 16,33 ---- |
| extern "C"{ |
| #endif |
| |
| + #ifdef __MINGW32__ |
| + # include <w32api.h> |
| + |
| + # if __W32API_MAJOR_VERSION == 3 && __W32API_MINOR_VERSION < 10 |
| + /* This define is missing from older MingW versions of w32api, even though |
| + * IID is defined. */ |
| + # define __IID_DEFINED__ |
| + # endif |
| + #endif |
| |
| #ifndef __IID_DEFINED__ |
| ! # define __IID_DEFINED__ |
| |
| typedef struct _IID |
| { |
| |
| *** 28,39 **** |
| unsigned char c[8]; |
| } IID; |
| |
| ! #endif // __IID_DEFINED__ |
| |
| #ifndef CLSID_DEFINED |
| ! #define CLSID_DEFINED |
| typedef IID CLSID; |
| ! #endif // CLSID_DEFINED |
| |
| const IID IID_IVim = {0x0F0BFAE2,0x4C90,0x11d1,{0x82,0xD7,0x00,0x04,0xAC,0x36,0x85,0x19}}; |
| |
| --- 37,48 ---- |
| unsigned char c[8]; |
| } IID; |
| |
| ! #endif |
| |
| #ifndef CLSID_DEFINED |
| ! # define CLSID_DEFINED |
| typedef IID CLSID; |
| ! #endif |
| |
| const IID IID_IVim = {0x0F0BFAE2,0x4C90,0x11d1,{0x82,0xD7,0x00,0x04,0xAC,0x36,0x85,0x19}}; |
| |
| |
| |
| |
| *** 668,669 **** |
| --- 668,671 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 65, |
| /**/ |
| |
| -- |
| I'm writing a book. I've got the page numbers done. |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ download, build and distribute -- http://www.A-A-P.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |