To: vim-dev@vim.org Subject: patch 7.1.065 (extra) Fcc: outbox From: Bram Moolenaar 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 *** ../vim-7.1.064/src/Make_ming.mak Thu May 10 19:35:54 2007 --- src/Make_ming.mak Sat Aug 11 14:52:11 2007 *************** *** 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)) *** ../vim-7.1.064/src/iid_ole.c Sun Jun 13 18:45:30 2004 --- src/iid_ole.c Sat Aug 11 14:57:58 2007 *************** *** 16,24 **** extern "C"{ #endif #ifndef __IID_DEFINED__ ! #define __IID_DEFINED__ typedef struct _IID { --- 16,33 ---- extern "C"{ #endif + #ifdef __MINGW32__ + # include + + # 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}}; *** ../vim-7.1.064/src/version.c Sat Aug 11 22:22:56 2007 --- src/version.c Sun Aug 12 15:21:34 2007 *************** *** 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 ///