Add dbus-run-session
[platform/upstream/dbus.git] / doc / Makefile.am
1 apidir = @htmldir@/api
2
3 MAN_XML_FILES = \
4         dbus-cleanup-sockets.1.xml \
5         dbus-daemon.1.xml \
6         dbus-launch.1.xml \
7         dbus-monitor.1.xml \
8         dbus-send.1.xml \
9         dbus-uuidgen.1.xml \
10         $(NULL)
11
12 if DBUS_XML_DOCS_ENABLED
13 man1_MANS = \
14         dbus-cleanup-sockets.1 \
15         dbus-daemon.1 \
16         dbus-launch.1 \
17         dbus-monitor.1 \
18         dbus-run-session.1 \
19         dbus-send.1 \
20         dbus-uuidgen.1
21 endif
22
23 MAN_HTML_FILES = \
24         dbus-cleanup-sockets.1.html \
25         dbus-daemon.1.html \
26         dbus-launch.1.html \
27         dbus-monitor.1.html \
28         dbus-run-session.1.html \
29         dbus-send.1.html \
30         dbus-uuidgen.1.html
31
32 DTDS = \
33         busconfig.dtd \
34         introspect.dtd
35
36 dist_doc_DATA = system-activation.txt
37
38 # uploaded and distributed, but not installed
39 STATIC_DOCS = \
40         dbus-faq.xml \
41         dbus-specification.xml \
42         dbus-test-plan.xml \
43         dbus-tutorial.xml \
44         dcop-howto.txt \
45         introspect.xsl \
46         $(DTDS)
47
48 EXTRA_DIST = \
49         file-boilerplate.c \
50         doxygen_to_devhelp.xsl \
51         $(STATIC_DOCS)
52
53 html_DATA =
54
55 dist_html_DATA =
56
57 # diagram.png/diagram.svg aren't really HTML, but must go in the same
58 # directory as the HTML to avoid broken links
59 STATIC_HTML = \
60         diagram.png \
61         diagram.svg \
62         $(NULL)
63
64 dist_html_DATA += $(STATIC_HTML)
65
66 XMLTO_HTML =                                    \
67         dbus-faq.html                           \
68         dbus-specification.html                 \
69         dbus-test-plan.html                     \
70         dbus-tutorial.html                      \
71         $(MAN_HTML_FILES)                       \
72         $(NULL)
73
74 if DBUS_XML_DOCS_ENABLED
75 html_DATA += $(XMLTO_HTML)
76
77 %.html: %.xml
78         $(XMLTO) html-nochunks $<
79
80 %.1: %.1.xml
81         $(XMLTO) man $<
82 endif
83
84 if DBUS_DOXYGEN_DOCS_ENABLED
85 all-local:: doxygen.stamp
86
87 doxygen.stamp: $(wildcard $(top_srcdir)/dbus/*.[ch])
88         $(AM_V_GEN)cd $(top_builddir) && doxygen Doxyfile
89         @touch $@
90
91 if DBUS_HAVE_XSLTPROC
92 html_DATA += dbus.devhelp
93
94 dbus.devhelp: $(srcdir)/doxygen_to_devhelp.xsl doxygen.stamp
95         $(XSLTPROC) -o $@ $< api/xml/index.xml
96 endif
97
98 # this assumes CREATE_SUBDIRS isn't set to YES in Doxyfile
99 # (which it isn't currently)
100 install-data-local:: doxygen.stamp
101         $(MKDIR_P) $(DESTDIR)$(apidir)
102         $(INSTALL_DATA) api/html/* $(DESTDIR)$(apidir)
103
104 uninstall-local::
105         rm -f $(DESTDIR)$(apidir)/*.html
106         rm -f $(DESTDIR)$(apidir)/*.png
107         rm -f $(DESTDIR)$(apidir)/*.css
108         rm -f $(DESTDIR)$(apidir)/*.js
109         rm -f $(DESTDIR)$(htmldir)/*.html
110         rm -f $(DESTDIR)$(docdir)/*.txt
111         rm -f $(DESTDIR)$(htmldir)/*.png
112         rm -f $(DESTDIR)$(htmldir)/*.svg
113         rmdir --ignore-fail-on-non-empty $(DESTDIR)$(apidir) || \
114                 rmdir $(DESTDIR)$(apidir)
115 endif
116
117 if DBUS_CAN_UPLOAD_DOCS
118 BONUS_FILES = \
119         $(top_srcdir)/README \
120         $(top_srcdir)/HACKING \
121         $(top_srcdir)/AUTHORS \
122         $(top_srcdir)/NEWS \
123         $(top_srcdir)/COPYING \
124         $(top_srcdir)/ChangeLog
125
126 dbus-docs: $(STATIC_DOCS) $(MAN_XML_FILES) $(dist_doc_DATA) $(dist_html_DATA) $(MAN_HTML_FILES) $(BONUS_FILES) doxygen.stamp $(XMLTO_HTML)
127         $(AM_V_at)rm -rf $@ $@.tmp
128         $(AM_V_GEN)$(MKDIR_P) $@.tmp/api
129         $(AM_V_at)cd $(srcdir) && cp $(STATIC_DOCS) @abs_builddir@/$@.tmp
130         $(AM_V_at)cd $(srcdir) && cp $(dist_doc_DATA) @abs_builddir@/$@.tmp
131         $(AM_V_at)cd $(srcdir) && cp $(STATIC_HTML) @abs_builddir@/$@.tmp
132         $(AM_V_at)cp $(XMLTO_HTML) @abs_builddir@/$@.tmp
133         $(AM_V_at)cp $(MAN_HTML_FILES) @abs_builddir@/$@.tmp
134         $(AM_V_at)cp $(MAN_XML_FILES) @abs_builddir@/$@.tmp
135         $(AM_V_at)cp $(BONUS_FILES) @abs_builddir@/$@.tmp
136         $(AM_V_at)cp -r api/html @abs_builddir@/$@.tmp/api
137         $(AM_V_at)mv $@.tmp $@
138
139 dbus-docs.tar.gz: dbus-docs
140         $(AM_V_GEN)tar czf $@ $<
141
142 DOC_SERVER = dbus.freedesktop.org
143 DOC_WWW_DIR = /srv/dbus.freedesktop.org/www
144
145 SPECIFICATION_SERVER = specifications.freedesktop.org
146 SPECIFICATION_PATH = /srv/specifications.freedesktop.org/www/dbus/1.0
147
148 maintainer-upload-docs: dbus-docs.tar.gz dbus-docs
149         scp dbus-docs.tar.gz $(DOC_SERVER):$(DOC_WWW_DIR)/
150         rsync -rpvzP --chmod=Dg+s,ug+rwX,o=rX \
151                 dbus-docs/ $(DOC_SERVER):$(DOC_WWW_DIR)/doc/
152         cd $(srcdir) && scp -p $(DTDS) $(SPECIFICATION_SERVER):$(SPECIFICATION_PATH)/
153 else
154 maintainer-upload-docs:
155         @echo "Can't upload documentation! Re-run configure with"
156         @echo "  --enable-doxygen-docs --enable-xml-docs"
157         @echo "and ensure that man2html is installed."
158         @false
159 endif
160
161 CLEANFILES = \
162         $(man1_MANS) \
163         $(MAN_XML_FILES) \
164         $(XMLTO_HTML) \
165         $(NULL)
166
167 clean-local:
168         rm -f $(html_DATA)
169         rm -rf api
170         rm -rf dbus-docs dbus-docs.tmp
171         rm -f *.1.html
172         rm -f doxygen.stamp