Makefile.am 5.44 KB
Newer Older
Daniel Salzman's avatar
Daniel Salzman committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
MANPAGES_IN = \
	man/knot.conf.5in	\
	man/knotc.8in		\
	man/knotd.8in		\
	man/keymgr.8in		\
	man/pykeymgr.8in	\
	man/kdig.1in		\
	man/khost.1in		\
	man/kjournalprint.1in	\
	man/knsupdate.1in	\
	man/knsec3hash.1in	\
	man/kzonecheck.1in

MANPAGES_RST = \
	man_knotc.rst		\
	man_knotd.rst		\
	man_keymgr.rst		\
	man_pykeymgr.rst	\
	man_kdig.rst		\
	man_khost.rst		\
	man_kjournalprint.rst	\
	man_knsupdate.rst	\
	man_knsec3hash.rst	\
	man_kzonecheck.rst
25

26
EXTRA_DIST = \
Daniel Salzman's avatar
Daniel Salzman committed
27
	conf.py			\
28
	\
29
	appendices.rst		\
30 31 32 33 34
	configuration.rst	\
	index.rst		\
	installation.rst	\
	introduction.rst	\
	migration.rst		\
35
	modules.rst.in		\
Jan Včelák's avatar
Jan Včelák committed
36
	operation.rst		\
37 38
	reference.rst		\
	requirements.rst	\
39
	troubleshooting.rst	\
40 41
	utilities.rst		\
	\
42
	$(MANPAGES_IN)		\
43
	$(MANPAGES_RST)		\
44
	\
Jan Včelák's avatar
Jan Včelák committed
45
	logo.eps		\
46
	logo.png
47

48 49 50
SPHINX_V = $(SPHINX_V_@AM_V@)
SPHINX_V_ = $(SPHINX_V_@AM_DEFAULT_V@)
SPHINX_V_0 = -q
51
SPHINX_V_1 = -n
52 53 54

AM_V_SPHINX = $(AM_V_SPHINX_@AM_V@)
AM_V_SPHINX_ = $(AM_V_SPHINX_@AM_DEFAULT_V@)
55
AM_V_SPHINX_0 = @echo "  SPHINX   $@";
56

57
AM_V_ECHO = @sh -c 'if $(AM_V_P); then echo $$1; fi' --
58

59
SPHINXBUILDDIR = $(builddir)/_build
60 61

_SPHINXOPTS    = -c $(srcdir) \
62
	         -a \
63
	         $(SPHINX_V)
64 65 66 67 68 69 70 71 72

ALLSPHINXOPTS  = $(_SPHINXOPTS) \
	         -D version="$(VERSION)" \
	         -D today="$(RELEASE_DATE)" \
	         -D release="$(VERSION)" \
	         $(SPHINXOPTS) \
	         $(srcdir)

man_SPHINXOPTS = $(_SPHINXOPTS) \
73 74
	         -D version="@""VERSION@" \
	         -D today="@""RELEASE_DATE@" \
75
	         -D release="@""VERSION@" \
76 77
	         $(SPHINXOPTS) \
	         $(srcdir)
78

79
.PHONY: html-local singlehtml pdf-local info-local man install-html-local install-singlehtml install-pdf-local install-info-local
80

81
man_MANS =
82 83

if HAVE_DAEMON
Daniel Salzman's avatar
Daniel Salzman committed
84 85 86
man_MANS += \
	man/knot.conf.5		\
	man/knotc.8		\
87
	man/knotd.8
88 89 90
endif # HAVE_DAEMON

if HAVE_UTILS
Daniel Salzman's avatar
Daniel Salzman committed
91 92 93 94 95 96 97 98 99 100 101 102 103
if HAVE_DAEMON
man_MANS += \
	man/keymgr.8		\
	man/pykeymgr.8		\
	man/kjournalprint.1	\
	man/kzonecheck.1
endif # HAVE_DAEMON

man_MANS += \
	man/kdig.1		\
	man/khost.1		\
	man/knsupdate.1		\
	man/knsec3hash.1
104 105
endif # HAVE_UTILS

Daniel Salzman's avatar
Daniel Salzman committed
106 107 108 109 110 111 112 113 114 115 116
man/knot.conf.5:	man/knot.conf.5in
man/knotc.8:		man/knotc.8in
man/knotd.8:		man/knotd.8in
man/keymgr.8:		man/keymgr.8in
man/pykeymgr.8:		man/pykeymgr.8in
man/kdig.1:		man/kdig.1in
man/khost.1:		man/khost.1in
man/kjournalprint.1:	man/kjournalprint.1in
man/knsupdate.1:	man/knsupdate.1in
man/knsec3hash.1:	man/knsec3hash.1in
man/kzonecheck.1:	man/kzonecheck.1in
117

118
man_SUBST = $(AM_V_GEN)mkdir -p man; sed -e 's,[@]VERSION@,$(VERSION),' -e 's,[@]RELEASE_DATE@,$(RELEASE_DATE),' $< > $@
119 120 121 122 123 124 125 126 127 128

.1in.1:
	$(man_SUBST)

.5in.5:
	$(man_SUBST)

.8in.8:
	$(man_SUBST)

129 130
if HAVE_DOCS

131
if HAVE_SPHINXBUILD
132
html-local:
133
	$(AM_V_SPHINX)$(SPHINXBUILD) -b html -d $(SPHINXBUILDDIR)/doctrees $(ALLSPHINXOPTS) $(SPHINXBUILDDIR)/html
134 135
	$(AM_V_ECHO)
	$(AM_V_ECHO) "Build finished. The HTML pages are in $(SPHINXBUILDDIR)/html/."
136

137 138 139 140 141 142
install-html-local:
	$(INSTALL) -d $(DESTDIR)/$(docdir) $(DESTDIR)/$(docdir)/_static $(DESTDIR)/$(docdir)/_sources
	$(INSTALL) -D $(SPHINXBUILDDIR)/html/*.html $(DESTDIR)/$(docdir)/
	$(INSTALL_DATA) $(SPHINXBUILDDIR)/html/_sources/* $(DESTDIR)/$(docdir)/_sources/
	$(INSTALL_DATA) $(SPHINXBUILDDIR)/html/_static/* $(DESTDIR)/$(docdir)/_static/

143
singlehtml:
144
	$(AM_V_SPHINX)$(SPHINXBUILD) -b singlehtml -d $(SPHINXBUILDDIR)/doctrees $(ALLSPHINXOPTS) $(SPHINXBUILDDIR)/singlehtml
145 146
	$(AM_V_ECHO)
	$(AM_V_ECHO) "Build finished. The HTML page is in $(SPHINXBUILDDIR)/singlehtml/."
147

148
install-singlehtml: singlehtml
149 150 151 152
	$(INSTALL) -d $(DESTDIR)/$(docdir) $(DESTDIR)/$(docdir)/_static
	$(INSTALL_DATA) $(SPHINXBUILDDIR)/singlehtml/*.html $(DESTDIR)/$(docdir)/
	$(INSTALL_DATA) $(SPHINXBUILDDIR)/singlehtml/_static/* $(DESTDIR)/$(docdir)/_static/

153
if HAVE_PDFLATEX
154
pdf-local:
155
	$(AM_V_SPHINX)$(SPHINXBUILD) -b latex -d $(SPHINXBUILDDIR)/doctrees $(ALLSPHINXOPTS) $(SPHINXBUILDDIR)/latex
156
	$(MAKE) -C $(SPHINXBUILDDIR)/latex all-pdf
157 158
	$(AM_V_ECHO)
	$(AM_V_ECHO) "Build finished. The PDF file is in $(SPHINXBUILDDIR)/latex/."
159 160 161

install-pdf-local:
	$(INSTALL) -d $(DESTDIR)/$(docdir)
162
	$(INSTALL_DATA) $(SPHINXBUILDDIR)/latex/knot.pdf $(DESTDIR)/$(docdir)/
163

164
else
165
pdf-local install-pdf-local:
166 167
	$(AM_V_ECHO) "You need to install pdflatex and re-run configure to be"
	$(AM_V_ECHO) "able to generate PDF documentation."
168 169 170
endif

if HAVE_MAKEINFO
171
info-local:
172
	$(AM_V_SPHINX)$(SPHINXBUILD) -b texinfo -d $(SPHINXBUILDDIR)/doctrees $(ALLSPHINXOPTS) $(SPHINXBUILDDIR)/texinfo
173
	$(MAKE) -C $(SPHINXBUILDDIR)/texinfo info
174 175
	$(AM_V_ECHO)
	$(AM_V_ECHO) "Build finished. The Info file is in $(SPHINXBUILDDIR)/texinfo/."
176 177 178

install-info-local:
	$(INSTALL) -d $(DESTDIR)/$(infodir)
179
	$(INSTALL_DATA) $(SPHINXBUILDDIR)/texinfo/knot.info $(DESTDIR)/$(infodir)/
180

181
else
182
info-local install-info-local:
183 184
	$(AM_V_ECHO) "You need to install GNU Texinfo and re-run configure to be"
	$(AM_V_ECHO) "able to generate info pages."
185 186
endif

187
.NOTPARALLEL: man
188 189
man: $(man_MANS)
$(MANPAGES_IN): $(MANPAGES_RST)
190
	$(AM_V_SPHINX)$(SPHINXBUILD) -b man -d $(SPHINXBUILDDIR)/doctrees $(man_SPHINXOPTS) $(SPHINXBUILDDIR)/man
191 192
	@mkdir -p $(srcdir)/man
	@for f in $(SPHINXBUILDDIR)/man/*; do \
193
	  sed -e '/^\.TP$$/ {' -e 'n' -e 's/^\.B //' -e '}' "$$f" > "$(srcdir)/man/$$(basename $$f)in"; \
194
	done
195 196
	$(AM_V_ECHO)
	$(AM_V_ECHO) "Build finished. The man pages are in man/."
197

198
else
199
html-local singlehtml pdf-local info-local man install-html-local install-singlehtml install-pdf-local install-info-local:
200
	$(AM_V_ECHO) "Please install sphinx (python-sphinx) to generate Knot DNS documentation."
201
endif # HAVE_SPHINXBUILD
Daniel Salzman's avatar
Daniel Salzman committed
202

203 204
endif # HAVE_DOCS

Daniel Salzman's avatar
Daniel Salzman committed
205
clean-local:
206
	-rm -rf $(SPHINXBUILDDIR)
207
	-rm -f man/*.1 man/*.5 man/*.8