Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorAaron Carlisle <carlisle.b3d@gmail.com>2020-10-07 17:25:06 +0300
committerAaron Carlisle <carlisle.b3d@gmail.com>2020-10-07 17:25:46 +0300
commit2f1a0f6f0eabe090d3ea95c4f508ef72454369a2 (patch)
tree0dc806cbe09985b6c555b7212c2b23087d83abc7 /doc
parente748abda92cf71852db29150f4f2524e3a17b156 (diff)
PyDoc: Multithread sphinx-build
Compile times went from over 5min to under 2 on my laptop.
Diffstat (limited to 'doc')
-rwxr-xr-xdoc/python_api/sphinx_doc_gen.sh20
1 files changed, 18 insertions, 2 deletions
diff --git a/doc/python_api/sphinx_doc_gen.sh b/doc/python_api/sphinx_doc_gen.sh
index be11a10d053..0dcb8ce04a8 100755
--- a/doc/python_api/sphinx_doc_gen.sh
+++ b/doc/python_api/sphinx_doc_gen.sh
@@ -27,6 +27,22 @@ else
fi
+# -----------------------------------------------------------------------------
+# Get the number of cores for threaded build
+ifndef NPROCS
+ NPROCS:=1
+ ifeq ($(OS), Linux)
+ NPROCS:=$(shell nproc)
+ endif
+ ifeq ($(OS), NetBSD)
+ NPROCS:=$(shell getconf NPROCESSORS_ONLN)
+ endif
+ ifneq (,$(filter $(OS),Darwin FreeBSD))
+ NPROCS:=$(shell sysctl -n hw.ncpu)
+ endif
+endif
+
+
# ----------------------------------------------------------------------------
# Blender Version & Info
@@ -76,7 +92,7 @@ fi
# Generate HTML (sphinx)
if $DO_OUT_HTML ; then
- sphinx-build -b html $SPHINX_WORKDIR/sphinx-in $SPHINX_WORKDIR/sphinx-out
+ sphinx-build -b html -j $(NPROCS) $SPHINX_WORKDIR/sphinx-in $SPHINX_WORKDIR/sphinx-out
# XXX, saves space on upload and zip, should move HTML outside
# and zip up there, for now this is OK
@@ -103,7 +119,7 @@ fi
# Generate PDF (sphinx/laytex)
if $DO_OUT_PDF ; then
- sphinx-build -n -b latex $SPHINX_WORKDIR/sphinx-in $SPHINX_WORKDIR/sphinx-out
+ sphinx-build -n -b latex -j $(NPROCS) $SPHINX_WORKDIR/sphinx-in $SPHINX_WORKDIR/sphinx-out
make -C $SPHINX_WORKDIR/sphinx-out
mv $SPHINX_WORKDIR/sphinx-out/contents.pdf \
$SPHINX_WORKDIR/sphinx-out/blender_python_reference_$BLENDER_VERSION.pdf