qemu-e2k/docs/system
Peter Maydell b93f4fbdc4 docs: Build and install all the docs in a single manual
When we first converted our documentation to Sphinx, we split it into
multiple manuals (system, interop, tools, etc), which are all built
separately.  The primary driver for this was wanting to be able to
avoid shipping the 'devel' manual to end-users.  However, this is
working against the grain of the way Sphinx wants to be used and
causes some annoyances:
 * Cross-references between documents become much harder or
   possibly impossible
 * There is no single index to the whole documentation
 * Within one manual there's no links or table-of-contents info
   that lets you easily navigate to the others
 * The devel manual doesn't get published on the QEMU website
   (it would be nice to able to refer to it there)

Merely hiding our developer documentation from end users seems like
it's not enough benefit for these costs.  Combine all the
documentation into a single manual (the same way that the readthedocs
site builds it) and install the whole thing.  The previous manual
divisions remain as the new top level sections in the manual.

 * The per-manual conf.py files are no longer needed
 * The man_pages[] specifications previously in each per-manual
   conf.py move to the top level conf.py
 * docs/meson.build logic is simplified as we now only need to run
   Sphinx once for the HTML and then once for the manpages5B
 * The old index.html.in that produced the top-level page with
   links to each manual is no longer needed

Unfortunately this means that we now have to build the HTML
documentation into docs/manual in the build tree rather than directly
into docs/; otherwise it is too awkward to ensure we install only the
built manual and not also the dependency info, stamp file, etc.  The
manual still ends up in the same place in the final installed
directory, but anybody who was consulting documentation from within
the build tree will have to adjust where they're looking.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Message-id: 20210115154449.4801-1-peter.maydell@linaro.org
2021-01-19 15:45:14 +00:00
..
_templates docs: add "page source" link to sphinx documentation 2020-11-10 08:51:30 +01:00
arm target/arm: Add cpu properties to control pauth 2021-01-19 14:38:51 +00:00
i386 docs: Move microvm.rst into the system manual 2020-11-23 11:10:04 +00:00
s390x docs/system/s390x: Add a chapter about s390x boot devices 2020-08-27 12:37:03 +02:00
build-platforms.rst docs/system: Fix grammar in documentation 2020-09-01 12:09:30 +02:00
cpu-hotplug.rst docs: Move cpu-hotplug.rst into the system manual 2020-11-23 11:07:41 +00:00
cpu-models-mips.rst.inc docs/system: Update MIPS CPU documentation 2020-10-17 13:59:40 +02:00
cpu-models-x86.rst.inc qemu-cpu-models.rst: Document -noTSX, mds-no, taa-no, and tsx-ctrl 2020-03-16 23:02:25 +01:00
deprecated.rst docs/system: Remove deprecated 'fulong2e' machine alias 2021-01-14 17:13:54 +01:00
device-url-syntax.rst.inc manual: escape backslashes in "parsed-literal" blocks 2020-09-16 10:52:34 +02:00
gdb.rst docs: Get rid of the weird _005f links in the man page 2020-11-20 13:19:08 +01:00
images.rst docs: Get rid of the weird _005f links in the man page 2020-11-20 13:19:08 +01:00
index.rst docs/system: Move the list of removed features to a separate file 2020-12-15 12:52:02 -05:00
invocation.rst docs: Split out sections for the manpage into .rst.inc files 2020-03-06 11:06:55 +00:00
ivshmem.rst docs/system: convert Texinfo documentation to rST 2020-03-06 10:05:12 +00:00
keys.rst docs: Split out sections for the manpage into .rst.inc files 2020-03-06 11:06:55 +00:00
keys.rst.inc docs: Split out sections for the manpage into .rst.inc files 2020-03-06 11:06:55 +00:00
license.rst docs/system: convert Texinfo documentation to rST 2020-03-06 10:05:12 +00:00
linuxboot.rst docs/system: convert Texinfo documentation to rST 2020-03-06 10:05:12 +00:00
managed-startup.rst docs/system: convert managed startup to rST. 2020-03-06 10:05:12 +00:00
monitor.rst docs: Get rid of the weird _005f links in the man page 2020-11-20 13:19:08 +01:00
mux-chardev.rst docs: Get rid of the weird _005f links in the man page 2020-11-20 13:19:08 +01:00
mux-chardev.rst.inc docs: Split out sections for the manpage into .rst.inc files 2020-03-06 11:06:55 +00:00
net.rst docs/system: convert Texinfo documentation to rST 2020-03-06 10:05:12 +00:00
pr-manager.rst docs/system/pr-manager.rst: Fix minor docs nits 2020-11-23 11:10:04 +00:00
qemu-block-drivers.rst docs: Create defs.rst.inc as a place to define substitutions 2020-03-06 10:04:58 +00:00
qemu-block-drivers.rst.inc block: introduce preallocate filter 2020-12-18 12:35:55 +01:00
qemu-cpu-models.rst docs/system: Convert qemu-cpu-models.texi to rST 2020-03-06 10:05:12 +00:00
qemu-manpage.rst docs: Generate qemu.1 manpage with Sphinx 2020-03-06 11:06:55 +00:00
quickstart.rst docs/system: convert Texinfo documentation to rST 2020-03-06 10:05:12 +00:00
removed-features.rst docs/system: Remove deprecated 'fulong2e' machine alias 2021-01-14 17:13:54 +01:00
security.rst docs/system: Convert security.texi to rST format 2020-03-06 10:05:12 +00:00
target-arm.rst docs/system: arm: Add sabrelite board description 2021-01-08 15:13:39 +00:00
target-avr.rst docs/: fix some comment spelling errors 2020-09-17 20:37:13 +02:00
target-i386-desc.rst.inc pcspk: update docs/system/target-i386-desc.rst.inc 2020-07-06 17:01:11 +02:00
target-i386.rst docs: Move microvm.rst into the system manual 2020-11-23 11:10:04 +00:00
target-m68k.rst docs: Roll semihosting option information into qemu-options.hx 2020-03-06 10:05:12 +00:00
target-mips.rst docs/system: Update MIPS machine documentation 2021-01-04 23:36:03 +01:00
target-ppc.rst docs: Roll -prom-env and -g target-specific info into qemu-options.hx 2020-03-06 10:05:18 +00:00
target-rx.rst docs: Document the RX target 2020-06-22 18:37:12 +02:00
target-s390x.rst docs/system/s390x: Add a chapter about s390x boot devices 2020-08-27 12:37:03 +02:00
target-sparc.rst docs: Roll -prom-env and -g target-specific info into qemu-options.hx 2020-03-06 10:05:18 +00:00
target-sparc64.rst docs: Roll -prom-env and -g target-specific info into qemu-options.hx 2020-03-06 10:05:18 +00:00
target-xtensa.rst docs: Roll semihosting option information into qemu-options.hx 2020-03-06 10:05:12 +00:00
targets.rst target/avr: Add section into QEMU documentation 2020-07-11 11:02:05 +02:00
tls.rst docs/system: convert Texinfo documentation to rST 2020-03-06 10:05:12 +00:00
usb.rst docs: Get rid of the weird _005f links in the man page 2020-11-20 13:19:08 +01:00
virtio-net-failover.rst docs: Move virtio-net-failover.rst into the system manual 2020-11-23 11:07:41 +00:00
virtio-pmem.rst docs/system/virtio-pmem.rst: Fix minor style issues 2020-11-23 11:07:41 +00:00
vnc-security.rst docs: Get rid of the weird _005f links in the man page 2020-11-20 13:19:08 +01:00