Added recursive idl target to allow updating idl files private to a

dll.
This commit is contained in:
Alexandre Julliard 2004-08-22 22:33:57 +00:00
parent cfb3b7e81f
commit 07a805127a
4 changed files with 29 additions and 6 deletions

View File

@ -225,6 +225,17 @@ clean:: $(SUBDIRS:%=%/__clean__) $(EXTRASUBDIRS:%=%/__clean__)
.PHONY: clean testclean $(SUBDIRS:%=%/__clean__) $(SUBDIRS:%=%/__testclean__) $(EXTRASUBDIRS:%=%/__clean__) .PHONY: clean testclean $(SUBDIRS:%=%/__clean__) $(SUBDIRS:%=%/__testclean__) $(EXTRASUBDIRS:%=%/__clean__)
# Rules for IDL files
idl: $(SUBDIRS:%=%/__idl__)
$(IDL_SRCS:.idl=.h): $(WIDL)
$(SUBDIRS:%=%/__idl__): dummy
cd `dirname $@` && $(MAKE) idl
.PHONY: idl
# Rules for installing # Rules for installing
$(SUBDIRS:%=%/__install__): dummy $(SUBDIRS:%=%/__install__): dummy
@ -268,8 +279,6 @@ $(SUBDIRS:%=%/__crosstest__): dummy
$(MC_SRCS:.mc=.mc.rc): $(WMC) $(MC_SRCS:.mc=.mc.rc): $(WMC)
$(IDL_SRCS:.idl=.h): $(WIDL)
$(SUBDIRS): dummy $(SUBDIRS): dummy
@cd $@ && $(MAKE) @cd $@ && $(MAKE)

View File

@ -61,8 +61,18 @@ RC_BINARIES = \
drag_move.cur \ drag_move.cur \
nodrop.cur nodrop.cur
IDL_SRCS = \
dcom.idl
SUBDIRS = tests SUBDIRS = tests
@MAKE_DLL_RULES@ @MAKE_DLL_RULES@
.SUFFIXES: .idl .h
.idl.h:
$(WIDL) $(IDLFLAGS) -b -h -H $@ $<
idl: $(IDL_SRCS:.idl=.h)
### Dependencies: ### Dependencies:

View File

@ -226,7 +226,7 @@ struct IRemUnknown {
const IRemUnknownVtbl* lpVtbl; const IRemUnknownVtbl* lpVtbl;
}; };
struct IRemUnknownVtbl { struct IRemUnknownVtbl {
ICOM_MSVTABLE_COMPAT_FIELDS BEGIN_INTERFACE
/*** IUnknown methods ***/ /*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)( HRESULT (STDMETHODCALLTYPE *QueryInterface)(
@ -260,8 +260,10 @@ struct IRemUnknownVtbl {
unsigned short cInterfaceRefs, unsigned short cInterfaceRefs,
REMINTERFACEREF* InterfaceRefs); REMINTERFACEREF* InterfaceRefs);
END_INTERFACE
}; };
#ifdef COBJMACROS
/*** IUnknown methods ***/ /*** IUnknown methods ***/
#define IRemUnknown_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRemUnknown_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IRemUnknown_AddRef(p) (p)->lpVtbl->AddRef(p) #define IRemUnknown_AddRef(p) (p)->lpVtbl->AddRef(p)
@ -270,6 +272,7 @@ struct IRemUnknownVtbl {
#define IRemUnknown_RemQueryInterface(p,a,b,c,d,e) (p)->lpVtbl->RemQueryInterface(p,a,b,c,d,e) #define IRemUnknown_RemQueryInterface(p,a,b,c,d,e) (p)->lpVtbl->RemQueryInterface(p,a,b,c,d,e)
#define IRemUnknown_RemAddRef(p,a,b,c) (p)->lpVtbl->RemAddRef(p,a,b,c) #define IRemUnknown_RemAddRef(p,a,b,c) (p)->lpVtbl->RemAddRef(p,a,b,c)
#define IRemUnknown_RemRelease(p,a,b) (p)->lpVtbl->RemRelease(p,a,b) #define IRemUnknown_RemRelease(p,a,b) (p)->lpVtbl->RemRelease(p,a,b)
#endif
#endif #endif
@ -349,7 +352,7 @@ struct IRemUnknown2 {
const IRemUnknown2Vtbl* lpVtbl; const IRemUnknown2Vtbl* lpVtbl;
}; };
struct IRemUnknown2Vtbl { struct IRemUnknown2Vtbl {
ICOM_MSVTABLE_COMPAT_FIELDS BEGIN_INTERFACE
/*** IUnknown methods ***/ /*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)( HRESULT (STDMETHODCALLTYPE *QueryInterface)(
@ -392,8 +395,10 @@ struct IRemUnknown2Vtbl {
HRESULT* phr, HRESULT* phr,
MInterfacePointer** ppMIF); MInterfacePointer** ppMIF);
END_INTERFACE
}; };
#ifdef COBJMACROS
/*** IUnknown methods ***/ /*** IUnknown methods ***/
#define IRemUnknown2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRemUnknown2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IRemUnknown2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IRemUnknown2_AddRef(p) (p)->lpVtbl->AddRef(p)
@ -404,6 +409,7 @@ struct IRemUnknown2Vtbl {
#define IRemUnknown2_RemRelease(p,a,b) (p)->lpVtbl->RemRelease(p,a,b) #define IRemUnknown2_RemRelease(p,a,b) (p)->lpVtbl->RemRelease(p,a,b)
/*** IRemUnknown2 methods ***/ /*** IRemUnknown2 methods ***/
#define IRemUnknown2_RemQueryInterface2(p,a,b,c,d,e) (p)->lpVtbl->RemQueryInterface2(p,a,b,c,d,e) #define IRemUnknown2_RemQueryInterface2(p,a,b,c,d,e) (p)->lpVtbl->RemQueryInterface2(p,a,b,c,d,e)
#endif
#endif #endif

View File

@ -296,8 +296,6 @@ EXTRASUBDIRS = msvcrt msvcrt/sys wine
.idl.h: .idl.h:
$(WIDL) $(IDLFLAGS) -b -h -H $@ $< $(WIDL) $(IDLFLAGS) -b -h -H $@ $<
.PHONY: idl
idl: $(IDL_SRCS:.idl=.h) idl: $(IDL_SRCS:.idl=.h)
install:: install::