Modify widl to put the C COM macros inside an #ifdef COBJMACROS block
as is done in the Windows headers.
Add #define COBJMACROS where needed in Wine.
Fixes the compilation of the oleaut32/tests/olefont.c and
urlmon/tests/url.c conformance tests with the Windows headers.

diff --git a/include/pstore.h b/include/pstore.h
index 79b4034..6ed38d5 100644
--- a/include/pstore.h
+++ b/include/pstore.h
@@ -135,6 +135,7 @@
 
 };
 
+#ifdef COBJMACROS
 /*** IUnknown methods ***/
 #define IEnumPStoreItems_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
 #define IEnumPStoreItems_AddRef(p) (p)->lpVtbl->AddRef(p)
@@ -144,6 +145,7 @@
 #define IEnumPStoreItems_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
 #define IEnumPStoreItems_Reset(p) (p)->lpVtbl->Reset(p)
 #define IEnumPStoreItems_Skip(p,a) (p)->lpVtbl->Skip(p,a)
+#endif
 
 #endif
 
@@ -264,6 +266,7 @@
 
 };
 
+#ifdef COBJMACROS
 /*** IUnknown methods ***/
 #define IEnumPStoreTypes_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
 #define IEnumPStoreTypes_AddRef(p) (p)->lpVtbl->AddRef(p)
@@ -273,6 +276,7 @@
 #define IEnumPStoreTypes_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
 #define IEnumPStoreTypes_Reset(p) (p)->lpVtbl->Reset(p)
 #define IEnumPStoreTypes_Skip(p,a) (p)->lpVtbl->Skip(p,a)
+#endif
 
 #endif
 
@@ -645,6 +649,7 @@
 
 };
 
+#ifdef COBJMACROS
 /*** IUnknown methods ***/
 #define IPStore_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
 #define IPStore_AddRef(p) (p)->lpVtbl->AddRef(p)
@@ -669,6 +674,7 @@
 #define IPStore_OpenItem(p,a,b,c,d,e,f,g) (p)->lpVtbl->OpenItem(p,a,b,c,d,e,f,g)
 #define IPStore_CloseItem(p,a,b,c,d,e) (p)->lpVtbl->CloseItem(p,a,b,c,d,e)
 #define IPStore_EnumItems(p,a,b,c,d,e) (p)->lpVtbl->EnumItems(p,a,b,c,d,e)
+#endif
 
 #endif