Make.rules: Automatically generate the header for all types of idl sources.
diff --git a/Make.rules.in b/Make.rules.in
index b254cdf..1b051ea 100644
--- a/Make.rules.in
+++ b/Make.rules.in
@@ -110,10 +110,12 @@
 conf_manext     = 5
 CLEAN_FILES     = *.o *.a *.so *.ln *.$(LIBEXT) \\\#*\\\# *~ *% .\\\#* *.bak *.orig *.rej *.flc core
 
-IDL_GEN_C_SRCS = $(IDL_C_SRCS:.idl=_c.c) $(IDL_I_SRCS:.idl=_i.c) \
-                 $(IDL_P_SRCS:.idl=_p.c) $(IDL_S_SRCS:.idl=_s.c)
+IDL_GEN_C_SRCS  = $(IDL_C_SRCS:.idl=_c.c) $(IDL_I_SRCS:.idl=_i.c) \
+                  $(IDL_P_SRCS:.idl=_p.c) $(IDL_S_SRCS:.idl=_s.c)
+IDL_GEN_HEADERS = $(IDL_H_SRCS:.idl=.h) $(IDL_C_SRCS:.idl=.h) $(IDL_I_SRCS:.idl=.h) \
+                  $(IDL_P_SRCS:.idl=.h) $(IDL_S_SRCS:.idl=.h)
 
-CLEAN_TARGETS = $(IDL_GEN_C_SRCS) $(IDL_H_SRCS:.idl=.h) $(IDL_TLB_SRCS:.idl=.tlb) \
+CLEAN_TARGETS = $(IDL_GEN_C_SRCS) $(IDL_GEN_HEADERS) $(IDL_TLB_SRCS:.idl=.tlb) \
                 $(BISON_SRCS:.y=.tab.c) $(BISON_SRCS:.y=.tab.h) $(LEX_SRCS:.l=.yy.c) \
                 $(MC_SRCS:.mc=.mc.rc) $(RC_SRCS:.rc=.res) $(RC_SRCS16:.rc=.res)
 
@@ -309,7 +311,7 @@
 
 $(MC_SRCS:.mc=.mc.rc): $(WMC)
 
-$(IDL_H_SRCS:.idl=.h) $(IDL_GEN_C_SRCS) $(IDL_TLB_SRCS:.idl=.tlb): $(WIDL)
+$(IDL_GEN_HEADERS) $(IDL_GEN_C_SRCS) $(IDL_TLB_SRCS:.idl=.tlb): $(WIDL)
 
 $(SUBDIRS): dummy
 	@cd $@ && $(MAKE)
diff --git a/configure b/configure
index 0125b9e..0075cea 100755
--- a/configure
+++ b/configure
@@ -20387,7 +20387,7 @@
 Makefile: dummy
 	-\$(MAKEDEP) -C\$(SRCDIR) -S\$(TOPSRCDIR) -T\$(TOPOBJDIR) \$(EXTRAINCL) \$(DEPEND_SRCS)
 
-\$(ALL_OBJS): \$(IDL_H_SRCS:.idl=.h)
+\$(ALL_OBJS): \$(IDL_GEN_HEADERS)
 \$(IDL_GEN_C_SRCS:.c=.o): \$(IDL_GEN_C_SRCS)
 \$(LEX_SRCS:.l=.yy.o): \$(LEX_SRCS:.l=.yy.c)
 \$(BISON_SRCS:.y=.tab.o): \$(BISON_SRCS:.y=.tab.c)"
diff --git a/configure.ac b/configure.ac
index 1f98f16..4edaa20 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1476,7 +1476,7 @@
 Makefile: dummy\\
 	-\$(MAKEDEP) -C\$(SRCDIR) -S\$(TOPSRCDIR) -T\$(TOPOBJDIR) \$(EXTRAINCL) \$(DEPEND_SRCS)\\
 \\
-\$(ALL_OBJS): \$(IDL_H_SRCS:.idl=.h)\\
+\$(ALL_OBJS): \$(IDL_GEN_HEADERS)\\
 \$(IDL_GEN_C_SRCS:.c=.o): \$(IDL_GEN_C_SRCS)\\
 \$(LEX_SRCS:.l=.yy.o): \$(LEX_SRCS:.l=.yy.c)\\
 \$(BISON_SRCS:.y=.tab.o): \$(BISON_SRCS:.y=.tab.c)"],
@@ -1487,7 +1487,7 @@
 Makefile: dummy
 	-\$(MAKEDEP) -C\$(SRCDIR) -S\$(TOPSRCDIR) -T\$(TOPOBJDIR) \$(EXTRAINCL) \$(DEPEND_SRCS)
 
-\$(ALL_OBJS): \$(IDL_H_SRCS:.idl=.h)
+\$(ALL_OBJS): \$(IDL_GEN_HEADERS)
 \$(IDL_GEN_C_SRCS:.c=.o): \$(IDL_GEN_C_SRCS)
 \$(LEX_SRCS:.l=.yy.o): \$(LEX_SRCS:.l=.yy.c)
 \$(BISON_SRCS:.y=.tab.o): \$(BISON_SRCS:.y=.tab.c)"]))
diff --git a/dlls/oleaut32/tests/Makefile.in b/dlls/oleaut32/tests/Makefile.in
index 3192610..7e0b307 100644
--- a/dlls/oleaut32/tests/Makefile.in
+++ b/dlls/oleaut32/tests/Makefile.in
@@ -20,7 +20,6 @@
 RC_SRCS = tmarshal.rc
 
 IDL_I_SRCS = tmarshal.idl
-IDL_H_SRCS = tmarshal.idl
 IDL_TLB_SRCS = tmarshal.idl
 
 @MAKE_TEST_RULES@
diff --git a/tools/make_makefiles b/tools/make_makefiles
index ede3d9d..b21d4ef 100755
--- a/tools/make_makefiles
+++ b/tools/make_makefiles
@@ -92,6 +92,10 @@
     [ 'RC_SRCS16',    '\.rc',  '.res' ],
     [ 'IDL_TLB_SRCS', '\.idl', '.tlb' ],
     [ 'IDL_H_SRCS',   '\.idl', '.h' ],
+    [ 'IDL_C_SRCS',   '\.idl', '.h' ],
+    [ 'IDL_I_SRCS',   '\.idl', '.h' ],
+    [ 'IDL_P_SRCS',   '\.idl', '.h' ],
+    [ 'IDL_S_SRCS',   '\.idl', '.h' ],
     [ 'IDL_C_SRCS',   '\.idl', '_c.c' ],
     [ 'IDL_I_SRCS',   '\.idl', '_i.c' ],
     [ 'IDL_P_SRCS',   '\.idl', '_p.c' ],