From 0783a732f9ee2de28dc722d6cd87f04b2f264a48 Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Mon, 17 Jun 2019 15:35:31 +0100 Subject: [PATCH] docs: Build and install specs manual Now we have some rST format docs in the docs/specs/ manual, we should actually build and install it. Signed-off-by: Peter Maydell Acked-by: Aleksandar Markovic Message-id: 20190610152444.20859-3-peter.maydell@linaro.org --- Makefile | 7 ++++++- docs/specs/conf.py | 16 ++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 docs/specs/conf.py diff --git a/Makefile b/Makefile index 8e2fc6624c..cfb18f1525 100644 --- a/Makefile +++ b/Makefile @@ -731,6 +731,7 @@ distclean: clean rm -rf .doctrees $(call clean-manual,devel) $(call clean-manual,interop) + $(call clean-manual,specs) for d in $(TARGET_DIRS); do \ rm -rf $$d || exit 1 ; \ done @@ -781,6 +782,7 @@ endef .PHONY: install-sphinxdocs install-sphinxdocs: sphinxdocs $(call install-manual,interop) + $(call install-manual,specs) install-doc: $(DOCS) install-sphinxdocs $(INSTALL_DIR) "$(DESTDIR)$(qemu_docdir)" @@ -962,7 +964,7 @@ docs/version.texi: $(SRC_PATH)/VERSION config-host.mak # and handles "don't rebuild things unless necessary" itself. # The '.doctrees' files are cached information to speed this up. .PHONY: sphinxdocs -sphinxdocs: $(MANUAL_BUILDDIR)/devel/index.html $(MANUAL_BUILDDIR)/interop/index.html +sphinxdocs: $(MANUAL_BUILDDIR)/devel/index.html $(MANUAL_BUILDDIR)/interop/index.html $(MANUAL_BUILDDIR)/specs/index.html # Canned command to build a single manual build-manual = $(call quiet-command,sphinx-build $(if $(V),,-q) -W -n -b html -D version=$(VERSION) -D release="$(FULL_VERSION)" -d .doctrees/$1 $(SRC_PATH)/docs/$1 $(MANUAL_BUILDDIR)/$1 ,"SPHINX","$(MANUAL_BUILDDIR)/$1") @@ -975,6 +977,9 @@ $(MANUAL_BUILDDIR)/devel/index.html: $(call manual-deps,devel) $(MANUAL_BUILDDIR)/interop/index.html: $(call manual-deps,interop) $(call build-manual,interop) +$(MANUAL_BUILDDIR)/specs/index.html: $(call manual-deps,specs) + $(call build-manual,specs) + qemu-options.texi: $(SRC_PATH)/qemu-options.hx $(SRC_PATH)/scripts/hxtool $(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -t < $< > $@,"GEN","$@") diff --git a/docs/specs/conf.py b/docs/specs/conf.py new file mode 100644 index 0000000000..4d56f3ae13 --- /dev/null +++ b/docs/specs/conf.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +# +# QEMU documentation build configuration file for the 'specs' manual. +# +# This includes the top level conf file and then makes any necessary tweaks. +import sys +import os + +qemu_docdir = os.path.abspath("..") +parent_config = os.path.join(qemu_docdir, "conf.py") +exec(compile(open(parent_config, "rb").read(), parent_config, 'exec')) + +# This slightly misuses the 'description', but is the best way to get +# the manual title to appear in the sidebar. +html_theme_options['description'] = \ + u'System Emulation Guest Hardware Specifications'