Fixed man and doc-html rules.
diff --git a/Make.rules.in b/Make.rules.in
index a168fc4..4118abf 100644
--- a/Make.rules.in
+++ b/Make.rules.in
@@ -246,11 +246,17 @@
# Rules for auto documentation
-man: $(C_SRCS)
- for i in $(C_SRCS); do $(C2MAN) -L -o $(TOPOBJDIR)/documentation/man3w -S3w $(DIVINCL) -D__WINE__ $(MANSPECS) $$i; done
+$(SUBDIRS:%=%/__man__): dummy
+ cd `dirname $@` && $(MAKE) man
-doc-html: $(C_SRCS)
- for i in $(C_SRCS); do $(C2MAN) -L -o $(TOPOBJDIR)/documentation/html -Th -iwindows.h $(DIVINCL) -D__WINE__ $(MANSPECS) $$i; done
+man: $(C_SRCS) $(SUBDIRS:%=%/__man__)
+ if [ -n "$(C_SRCS)" ]; then $(MKDIR) $(TOPOBJDIR)/documentation/man3w; for i in $(C_SRCS); do $(C2MAN) -L -o $(TOPOBJDIR)/documentation/man3w -S3w $(DIVINCL) -D__WINE__ $(MANSPECS) $$i; done; fi
+
+$(SUBDIRS:%=%/__doc_html__): dummy
+ cd `dirname $@` && $(MAKE) doc-html
+
+doc-html: $(C_SRCS) $(SUBDIRS:%=%/__doc_html__)
+ if [ -n "$(C_SRCS)" ]; then $(MKDIR) $(TOPOBJDIR)/documentation/html; for i in $(C_SRCS); do $(C2MAN) -L -o $(TOPOBJDIR)/documentation/html -Th -iwindows.h $(DIVINCL) -D__WINE__ $(MANSPECS) $$i; done; fi
# Rule for linting