apidir = @htmldir@/api man_pages = \ dbus-cleanup-sockets.1 \ dbus-daemon.1 \ dbus-launch.1 \ dbus-monitor.1 \ dbus-run-session.1 \ dbus-send.1 \ dbus-test-tool.1 \ dbus-uuidgen.1 \ $(NULL) MAN_XML_FILES = $(patsubst %.1,%.1.xml,$(man_pages)) if DBUS_XML_DOCS_ENABLED man1_MANS = $(man_pages) endif MAN_HTML_FILES = $(patsubst %.1,%.1.html,$(man_pages)) DTDS = \ busconfig.dtd \ introspect.dtd dist_doc_DATA = system-activation.txt # uploaded and distributed, but not installed STATIC_DOCS = \ dbus-faq.xml \ dbus-specification.xml \ dbus-test-plan.xml \ dbus-tutorial.xml \ dbus-api-design.duck \ dcop-howto.txt \ introspect.xsl \ $(DTDS) EXTRA_DIST = \ file-boilerplate.c \ doxygen_to_devhelp.xsl \ $(STATIC_DOCS) html_DATA = dist_html_DATA = # diagram.png/diagram.svg aren't really HTML, but must go in the same # directory as the HTML to avoid broken links STATIC_HTML = \ diagram.png \ diagram.svg \ $(NULL) # Static HTML helper files generated by yelp-build. YELP_STATIC_HTML = \ yelp.js \ C.css \ jquery.js \ jquery.syntax.js \ jquery.syntax.brush.html.js \ jquery.syntax.core.js \ jquery.syntax.layout.yelp.js \ $(NULL) dist_html_DATA += $(STATIC_HTML) # Content HTML files generated by yelp-build. YELP_HTML = \ dbus-api-design.html \ $(NULL) XMLTO_HTML = \ dbus-faq.html \ dbus-specification.html \ dbus-test-plan.html \ dbus-tutorial.html \ $(MAN_HTML_FILES) \ $(NULL) if DBUS_XML_DOCS_ENABLED html_DATA += $(XMLTO_HTML) %.html: %.xml $(XMLTO) html-nochunks $< %.1: %.1.xml $(XMLTO) man $< endif if DBUS_DOXYGEN_DOCS_ENABLED all-local:: doxygen.stamp doxygen.stamp: $(wildcard $(top_srcdir)/dbus/*.[ch]) $(AM_V_GEN)cd $(top_builddir) && doxygen Doxyfile @touch $@ if DBUS_HAVE_XSLTPROC html_DATA += dbus.devhelp dbus.devhelp: $(srcdir)/doxygen_to_devhelp.xsl doxygen.stamp $(XSLTPROC) -o $@ $< api/xml/index.xml endif if DBUS_DUCKTYPE_DOCS_ENABLED html_DATA += $(YELP_HTML) $(YELP_STATIC_HTML) %.page: %.duck $(DUCKTYPE) -o $@ $< %.html: %.page $(YELP_BUILD) html $< $(YELP_STATIC_HTML): $(YELP_HTML) endif # this assumes CREATE_SUBDIRS isn't set to YES in Doxyfile # (which it isn't currently) install-data-local:: doxygen.stamp $(MKDIR_P) $(DESTDIR)$(apidir) $(INSTALL_DATA) api/html/* $(DESTDIR)$(apidir) uninstall-local:: rm -f $(DESTDIR)$(apidir)/*.html rm -f $(DESTDIR)$(apidir)/*.png rm -f $(DESTDIR)$(apidir)/*.css rm -f $(DESTDIR)$(apidir)/*.js rm -f $(DESTDIR)$(htmldir)/*.html rm -f $(DESTDIR)$(docdir)/*.txt rm -f $(DESTDIR)$(htmldir)/*.png rm -f $(DESTDIR)$(htmldir)/*.svg rmdir --ignore-fail-on-non-empty $(DESTDIR)$(apidir) || \ rmdir $(DESTDIR)$(apidir) endif if DBUS_CAN_UPLOAD_DOCS BONUS_FILES = \ $(top_srcdir)/README \ $(top_srcdir)/HACKING \ $(top_srcdir)/AUTHORS \ $(top_srcdir)/NEWS \ $(top_srcdir)/COPYING \ $(top_srcdir)/ChangeLog dbus-docs: $(STATIC_DOCS) $(MAN_XML_FILES) $(dist_doc_DATA) $(dist_html_DATA) $(MAN_HTML_FILES) $(BONUS_FILES) doxygen.stamp $(XMLTO_HTML) $(YELP_HTML) $(YELP_STATIC_HTML) $(AM_V_at)rm -rf $@ $@.tmp $(AM_V_GEN)$(MKDIR_P) $@.tmp/api $(AM_V_at)cd $(srcdir) && cp $(STATIC_DOCS) @abs_builddir@/$@.tmp $(AM_V_at)cd $(srcdir) && cp $(dist_doc_DATA) @abs_builddir@/$@.tmp $(AM_V_at)cd $(srcdir) && cp $(STATIC_HTML) @abs_builddir@/$@.tmp $(AM_V_at)cp $(XMLTO_HTML) @abs_builddir@/$@.tmp $(AM_V_at)cp $(YELP_HTML) @abs_builddir@/$@.tmp $(AM_V_at)cp $(YELP_STATIC_HTML) @abs_builddir@/$@.tmp $(AM_V_at)cp $(MAN_HTML_FILES) @abs_builddir@/$@.tmp $(AM_V_at)cp $(MAN_XML_FILES) @abs_builddir@/$@.tmp $(AM_V_at)cp $(BONUS_FILES) @abs_builddir@/$@.tmp $(AM_V_at)cp -r api/html @abs_builddir@/$@.tmp/api $(AM_V_at)mv $@.tmp $@ dbus-docs.tar.gz: dbus-docs $(AM_V_GEN)tar czf $@ $< DOC_SERVER = dbus.freedesktop.org DOC_WWW_DIR = /srv/dbus.freedesktop.org/www SPECIFICATION_SERVER = specifications.freedesktop.org SPECIFICATION_PATH = /srv/specifications.freedesktop.org/www/dbus/1.0 maintainer-upload-docs: dbus-docs.tar.gz dbus-docs scp dbus-docs.tar.gz $(DOC_SERVER):$(DOC_WWW_DIR)/ rsync -rpvzP --chmod=Dg+s,ug+rwX,o=rX \ dbus-docs/ $(DOC_SERVER):$(DOC_WWW_DIR)/doc/ cd $(srcdir) && scp -p $(DTDS) $(SPECIFICATION_SERVER):$(SPECIFICATION_PATH)/ else maintainer-upload-docs: @echo "Can't upload documentation! Re-run configure with" @echo " --enable-doxygen-docs --enable-xml-docs --enable-ducktype-docs" @echo "and ensure that man2html is installed." @false endif CLEANFILES = \ $(man1_MANS) \ $(MAN_XML_FILES) \ $(XMLTO_HTML) \ $(YELP_HTML) \ $(YELP_STATIC_HTML) \ $(NULL) clean-local: rm -f $(html_DATA) rm -rf api rm -rf dbus-docs dbus-docs.tmp rm -f *.1.html rm -f doxygen.stamp