Fix manual documentation generation

The manual building was failing in make distcheck because it was being
built using the standard 'html' target.  That target needs the output
to not be rebuilt each time make install-html is called.  Which is not
easily possible for us.  So for now, the apidoc is being generated
using the html-doc target.  Also fix some other issues in the Makefile.

	* doc/manuals/Makefile.am: Trigger the manual generation from the
	html-doc target.  Add the source files to the distribution.  Fix
	the clean target.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
This commit is contained in:
Dodji Seketeli 2014-11-19 21:00:50 +01:00
parent 42474ecf70
commit 27e958dbba

View File

@ -1,11 +1,21 @@
# Makefile for Sphinx documentation # Makefile for Sphinx documentation
EXTRA_DIST = \
abidiff.rst \
abidw.rst \
abilint.rst \
conf.py \
index.rst \
libabigail-concepts.rst \
libabigail-overview.rst \
libabigail-tools.rst
# You can set these variables from the command line. # You can set these variables from the command line.
SPHINXOPTS = SPHINXOPTS =
SPHINXBUILD = sphinx-build SPHINXBUILD = sphinx-build
PAPER = PAPER =
BUILDDIR = $(builddir)/_build BUILDDIR = $(abs_builddir)
SOURCEDIR = $(srcdir) SOURCEDIR = $(abs_srcdir)
# Internal variables. # Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_a4 = -D latex_paper_size=a4
@ -14,11 +24,11 @@ ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) $(S
# the i18n builder cannot share the environment and doctrees with the others # the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext .PHONY: help clean html-local dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
help: help:
@echo "Please use \`make <target>' where <target> is one of" @echo "Please use \`make <target>' where <target> is one of"
@echo " html to make standalone HTML files" @echo " html-doc to make standalone HTML files"
@echo " dirhtml to make HTML files named index.html in directories" @echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file" @echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files" @echo " pickle to make pickle files"
@ -38,10 +48,7 @@ help:
@echo " linkcheck to check all external links for integrity" @echo " linkcheck to check all external links for integrity"
@echo " doctest to run all doctests embedded in the documentation (if enabled)" @echo " doctest to run all doctests embedded in the documentation (if enabled)"
clean: html-doc:
-rm -rf $(BUILDDIR)/*
html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(DESTDIR)$(BUILDDIR)/html $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(DESTDIR)$(BUILDDIR)/html
@echo @echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html." @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
@ -153,12 +160,14 @@ doctest:
"results in $(BUILDDIR)/doctest/output.txt." "results in $(BUILDDIR)/doctest/output.txt."
if ENABLE_MANUAL if ENABLE_MANUAL
install-html: html install-html-doc: html-doc
test -d "$(DESTDIR)$(docdir)" || $(mkinstalldirs) "$(DESTDIR)$(docdir)" test -d "$(DESTDIR)$(docdir)/manual" || $(mkinstalldirs) "$(DESTDIR)$(docdir)/manual"
test -d "$(DESTDIR)$(BUILDDIR)/html" && cp -r "$(DESTDIR)$(BUILDDIR)/html" "$(DESTDIR)$(docdir)/manuals/html" cp -r "$(DESTDIR)$(BUILDDIR)/html" "$(DESTDIR)$(docdir)/manual"
install-data-local: install-html
uninstall-local:
test -d "$(DESTDIR)$(docdir)/manuals/html" && rm -rf "$(DESTDIR)$(docdir)/manuals/html"
endif endif
clean-local:
-rm -rf $(BUILDDIR)/html
-rm -rf $(BUILDDIR)/doctrees
uninstall-local: clean-local
-rm -rf $(DESTDIR)$(docdir)/manual/html