mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-06-07 02:28:22 +02:00
Building it unconditionally causes problems for minimal installations (OSTree), and building it opportunistically means the tarball isn't guaranteed to contain it, depending who releases libdbus and which packages they happen to have installed at the time. If this documentation is important enough that we need to ship it precompiled in tarballs, we should guarantee it; or if it isn't important enough to justify that, we should just drop it. I don't think we really need it in the tarballs at all: most users will get their libdbus from a binary distribution (in which case I expect the distribution's dbus maintainers to set appropriate build-dependencies), and those who build from source can either install xmlto, read the documentation on our website, or at worst, read the source XML. (We don't put the Doxygen-generated API reference HTML in the tarball either, and I haven't heard any complaints.) Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55426 Reviewed-by: Colin Walters <walters@verbum.org>
175 lines
4.3 KiB
Makefile
175 lines
4.3 KiB
Makefile
apidir = @htmldir@/api
|
|
|
|
# automake normally assumes that man pages are generated files;
|
|
# these ones aren't, so we need the dist_ prefix to say that they're
|
|
# their own source code
|
|
dist_man1_MANS = \
|
|
dbus-cleanup-sockets.1 \
|
|
dbus-launch.1 \
|
|
dbus-monitor.1 \
|
|
dbus-send.1 \
|
|
dbus-uuidgen.1
|
|
|
|
# on the other hand, this one is generated
|
|
man1_MANS = \
|
|
dbus-daemon.1
|
|
|
|
MAN_IN_FILES = dbus-daemon.1.in
|
|
|
|
MAN_HTML_FILES = \
|
|
dbus-cleanup-sockets.1.html \
|
|
dbus-daemon.1.html \
|
|
dbus-launch.1.html \
|
|
dbus-monitor.1.html \
|
|
dbus-send.1.html \
|
|
dbus-uuidgen.1.html
|
|
|
|
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 \
|
|
dcop-howto.txt \
|
|
introspect.xsl \
|
|
$(DTDS)
|
|
|
|
EXTRA_DIST = \
|
|
file-boilerplate.c \
|
|
doxygen_to_devhelp.xsl \
|
|
$(STATIC_DOCS) \
|
|
$(MAN_IN_FILES)
|
|
|
|
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)
|
|
|
|
dist_html_DATA += $(STATIC_HTML)
|
|
|
|
XMLTO_OUTPUT= \
|
|
dbus-faq.html \
|
|
dbus-specification.html \
|
|
dbus-test-plan.html \
|
|
dbus-tutorial.html
|
|
|
|
if DBUS_XML_DOCS_ENABLED
|
|
html_DATA += $(XMLTO_OUTPUT)
|
|
|
|
dbus-specification.html: dbus-specification.xml
|
|
$(XMLTO) html-nochunks $<
|
|
|
|
dbus-test-plan.html: dbus-test-plan.xml
|
|
$(XMLTO) html-nochunks $<
|
|
|
|
dbus-tutorial.html: dbus-tutorial.xml
|
|
$(XMLTO) html-nochunks $<
|
|
|
|
dbus-faq.html: dbus-faq.xml
|
|
$(XMLTO) html-nochunks $<
|
|
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
|
|
|
|
# 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_HAVE_MAN2HTML
|
|
html_DATA += $(MAN_HTML_FILES)
|
|
|
|
%.1.html: %.1
|
|
$(AM_V_GEN)( $(MAN2HTML) < $< > $@.tmp && mv $@.tmp $@ )
|
|
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) $(dist_doc_DATA) $(dist_html_DATA) $(MAN_HTML_FILES) $(BONUS_FILES) doxygen.stamp $(XMLTO_OUTPUT)
|
|
$(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_OUTPUT) @abs_builddir@/$@.tmp
|
|
$(AM_V_at)cp $(MAN_HTML_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"
|
|
@echo "and ensure that man2html is installed."
|
|
@false
|
|
endif
|
|
|
|
clean-local:
|
|
rm -f $(html_DATA)
|
|
rm -rf api
|
|
rm -rf dbus-docs dbus-docs.tmp
|
|
rm -f *.1.html
|
|
rm -f doxygen.stamp
|
|
|
|
maintainer-clean-local:
|
|
rm -f $(XMLTO_OUTPUT)
|