Merge branch 'documentation-build-system'
[platform/upstream/dbus.git] / doc / Makefile.am
1 man_MANS = \
2         dbus-cleanup-sockets.1 \
3         dbus-daemon.1 \
4         dbus-launch.1 \
5         dbus-monitor.1 \
6         dbus-send.1 \
7         dbus-uuidgen.1
8
9 MAN_IN_FILES = dbus-daemon.1.in
10
11 MAN_HTML_FILES = \
12         dbus-cleanup-sockets.1.html \
13         dbus-daemon.1.html \
14         dbus-launch.1.html \
15         dbus-monitor.1.html \
16         dbus-send.1.html \
17         dbus-uuidgen.1.html
18
19 DTDS = \
20         busconfig.dtd \
21         introspect.dtd
22
23 STATIC_DOCS = \
24         diagram.png \
25         diagram.svg \
26         dbus-faq.xml \
27         dbus-specification.xml \
28         dbus-test-plan.xml \
29         dbus-tutorial.xml \
30         dcop-howto.txt \
31         introspect.xsl \
32         system-activation.txt \
33         $(DTDS)
34
35 EXTRA_DIST = \
36         file-boilerplate.c \
37         $(STATIC_DOCS) \
38         $(MAN_IN_FILES) $(man_MANS)
39
40 HTML_FILES=                                     \
41         dbus-faq.html                           \
42         dbus-specification.html                 \
43         dbus-test-plan.html                     \
44         dbus-tutorial.html
45
46 if DBUS_XML_DOCS_ENABLED
47 all-local:: $(HTML_FILES)
48
49 EXTRA_DIST += $(HTML_FILES)
50
51 dbus-specification.html: dbus-specification.xml
52         $(XMLTO) html-nochunks $<
53
54 dbus-test-plan.html: dbus-test-plan.xml
55         $(XMLTO) html-nochunks $<
56
57 dbus-tutorial.html: dbus-tutorial.xml
58         $(XMLTO) html-nochunks $<
59
60 dbus-faq.html: dbus-faq.xml
61         $(XMLTO) html-nochunks $<
62
63 endif
64
65 if DBUS_DOXYGEN_DOCS_ENABLED
66 # Use the index as a proxy for the entire doc tree.
67 DOXYGEN_HTML_INDEX = api/html/index.html
68
69 all-local:: $(DOXYGEN_HTML_INDEX)
70
71 $(DOXYGEN_HTML_INDEX): $(wildcard $(top_srcdir)/dbus/*.[ch])
72         $(AM_V_GEN)cd $(top_builddir) && doxygen Doxyfile
73 endif
74
75 if DBUS_HAVE_MAN2HTML
76 all-local:: $(MAN_HTML_FILES)
77
78 %.1.html: %.1
79         $(AM_V_GEN)( $(MAN2HTML) $< > $@.tmp && mv $@.tmp $@ )
80 endif
81
82 if DBUS_CAN_UPLOAD_DOCS
83 BONUS_FILES = \
84         $(top_srcdir)/README \
85         $(top_srcdir)/HACKING \
86         $(top_srcdir)/AUTHORS \
87         $(top_srcdir)/NEWS \
88         $(top_srcdir)/COPYING \
89         $(top_srcdir)/ChangeLog
90
91 dbus-docs: $(STATIC_DOCS) $(HTML_FILES) $(MAN_HTML_FILES) $(BONUS_FILES) $(DOXYGEN_HTML_INDEX)
92         $(AM_V_at)rm -rf $@
93         $(AM_V_GEN)mkdir -p $@/api
94         $(AM_V_at)cp $(STATIC_DOCS) $@
95         $(AM_V_at)cp $(HTML_FILES) $@
96         $(AM_V_at)cp $(MAN_HTML_FILES) $@
97         $(AM_V_at)cp $(BONUS_FILES) $@
98         $(AM_V_at)cp -r api/html $@/api
99
100 dbus-docs.tar.gz: dbus-docs
101         $(AM_V_GEN)tar czf $@ $<
102
103 DOC_SERVER = dbus.freedesktop.org
104 DOC_WWW_DIR = /srv/dbus.freedesktop.org/www
105
106 SPECIFICATION_SERVER = specifications.freedesktop.org
107 SPECIFICATION_PATH = /srv/specifications.freedesktop.org/www/dbus/1.0
108
109 maintainer-upload-docs: dbus-docs.tar.gz dbus-docs
110         scp dbus-docs.tar.gz $(DOC_SERVER):$(DOC_WWW_DIR)
111         rsync -rvzP --chmod=Dg+s,ug+rwX,o=rX \
112                 dbus-docs/ $(DOC_SERVER):$(DOC_WWW_DIR)/doc/
113         scp -p $(DTDS) $(SPECIFICATION_SERVER):$(SPECIFICATION_PATH)
114 else
115 maintainer-upload-docs:
116         @echo "Can't upload documentation! Re-run configure with"
117         @echo "  --enable-doxygen-docs --enable-xml-docs"
118         @echo "and ensure that man2html is installed."
119         @false
120 endif
121
122 clean-local:
123         rm -rf api
124         rm -rf dbus-docs
125         rm -f *.1.html
126
127 maintainer-clean-local:
128         rm -f $(HTML_FILES)