aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorDavid Bremner <david@tethera.net>2019-03-02 23:30:59 -0400
committerDavid Bremner <david@tethera.net>2019-03-05 21:46:41 -0400
commitdcf7fca2d9f87fc4d412dbbba8e441d9ff204ffc (patch)
treea635f4f5fdfc9211517ed1f976539ada01f85564 /doc
parente88297c072e6bfbeaedc1287ec695ca37537255e (diff)
doc: sequentialize calls to sphinx-build
In certain conditions the parallel calls to sphinx-build could collide, yielding a crash like Exception occurred: File "/usr/lib/python3/dist-packages/sphinx/environment.py", line 1261, in get_doctree doctree = pickle.load(f) EOFError: Ran out of input
Diffstat (limited to 'doc')
-rw-r--r--doc/Makefile.local8
1 files changed, 8 insertions, 0 deletions
diff --git a/doc/Makefile.local b/doc/Makefile.local
index 16459e35..cb0f1f64 100644
--- a/doc/Makefile.local
+++ b/doc/Makefile.local
@@ -37,6 +37,14 @@ INFO_INFO_FILES := $(INFO_TEXI_FILES:.texi=.info)
%.gz: %
rm -f $@ && gzip --stdout $^ > $@
+# Sequentialize the calls to sphinx-build to avoid races with
+# reading/writing cached state. This uses GNU make specific
+# "order-only" prerequisites.
+
+sphinx-html: | $(DOCBUILDDIR)/.roff.stamp
+sphinx-texinfo: | sphinx-html
+sphinx-info: | sphinx-texinfo
+
sphinx-html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(DOCBUILDDIR)/html