summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2014-09-02 09:50:14 +1000
committerPekka Paalanen <pekka.paalanen@collabora.co.uk>2014-09-03 16:25:27 +0300
commitfb97550ce6ff56e57d12f95173b2608cbc546b36 (patch)
treec632e5261efeb45235fdc847f5880c150c642059
parent6d0f298665e0f6b11a18ab6b6ccc49ba990b4b3e (diff)
doc/publican: stop excessive rebuilds
Traced down to the server/client target always rebuilding, causing a rebuild of everything else. Rework this so the target name is a file we actually produce and can check for a timestamp. Note: this also changes the generated file from the doxygen directory into the en-US publican path and renames it to (server|client)API.xml.tmp to avoid copying it into the xml output directory.
-rw-r--r--doc/publican/Makefile.am25
1 files changed, 11 insertions, 14 deletions
diff --git a/doc/publican/Makefile.am b/doc/publican/Makefile.am
index a20b1d3..47fc66d 100644
--- a/doc/publican/Makefile.am
+++ b/doc/publican/Makefile.am
@@ -55,31 +55,28 @@ en-US/ProtocolInterfaces.xml: $(top_srcdir)/protocol/wayland.xml $(srcdir)/proto
$(AM_V_GEN)$(XSLTPROC) $(srcdir)/protocol-interfaces-to-docbook.xsl \
$(top_srcdir)/protocol/wayland.xml > en-US/ProtocolInterfaces.xml
-combine_xml: server client
-
# * we don't want wayland-{server|client}_8h.xml to avoid duplicating output methods,
# move it out of the way first.
# * use doxygen's combine.xslt to merge the xml files into one single file
# * move wayland-<foo>_8h.xml back to its original location
-server client:
- $(AM_V_GEN)mv $(top_builddir)/doc/doxygen/xml/$@/wayland-$@_8h.xml \
+en-US/%API.xml.tmp:
+ $(AM_V_GEN)mv $(top_builddir)/doc/doxygen/xml/$*/wayland-$*_8h.xml \
$(top_builddir)/doc/doxygen/xml/
- $(AM_V_GEN)$(XSLTPROC) $(top_builddir)/doc/doxygen/xml/$@/combine.xslt \
- $(top_builddir)/doc/doxygen/xml/$@/index.xml > \
- $(top_builddir)/doc/doxygen/xml/$@/$@API.xml
- $(AM_V_GEN)mv $(top_builddir)/doc/doxygen/xml/wayland-$@_8h.xml \
- $(top_builddir)/doc/doxygen/xml/$@
+ $(AM_V_GEN)$(XSLTPROC) $(top_builddir)/doc/doxygen/xml/$*/combine.xslt \
+ $(top_builddir)/doc/doxygen/xml/$*/index.xml > $@
+ $(AM_V_GEN)mv $(top_builddir)/doc/doxygen/xml/wayland-$*_8h.xml \
+ $(top_builddir)/doc/doxygen/xml/$*
# WaylandClientAPI.xml:
-# merge doxygen xml files into one single file (see combine_xml), then transform the combined XML file into docbook format
-en-US/WaylandClientAPI.xml: combine_xml $(top_builddir)/doc/doxygen/xml/client/index.xml $(srcdir)/doxygen-to-publican.xsl
+# merge doxygen xml files into one single file, then transform the combined XML file into docbook format
+en-US/WaylandClientAPI.xml: en-US/clientAPI.xml.tmp $(top_builddir)/doc/doxygen/xml/client/index.xml $(srcdir)/doxygen-to-publican.xsl
$(AM_V_GEN)$(XSLTPROC) --stringparam which Client $(srcdir)/doxygen-to-publican.xsl \
- $(top_builddir)/doc/doxygen/xml/client/clientAPI.xml > en-US/WaylandClientAPI.xml
+ $(builddir)/en-US/clientAPI.xml.tmp > en-US/WaylandClientAPI.xml
# WaylandServerAPI.xml: see WaylandClientAPI.xml
-en-US/WaylandServerAPI.xml: combine_xml $(top_builddir)/doc/doxygen/xml/client/index.xml $(srcdir)/doxygen-to-publican.xsl
+en-US/WaylandServerAPI.xml: en-US/serverAPI.xml.tmp $(top_builddir)/doc/doxygen/xml/client/index.xml $(srcdir)/doxygen-to-publican.xsl
$(AM_V_GEN)$(XSLTPROC) --stringparam which Server $(srcdir)/doxygen-to-publican.xsl \
- $(top_builddir)/doc/doxygen/xml/server/serverAPI.xml > en-US/WaylandServerAPI.xml
+ $(builddir)/en-US/serverAPI.xml.tmp > en-US/WaylandServerAPI.xml
# Copy the sources source files into en-US destination
# This is required for out-of-source-tree build as publican does not allow us