|
10 | 10 |
|
11 | 11 | # We need this Makefile to be executed serially. Below, we list all
|
12 | 12 | # the man pages as the targets of the rule that invokes Sphinx for
|
13 |
| -# dependency/generation reasons. But a *single* execution of Sphinx |
14 |
| -# will generate *all* of the man pages and HTML files. Hence, when |
15 |
| -# "make" determines that none of the man page files exist, it should |
16 |
| -# execute the Sphinx-invocation rule once, and then it will realize |
17 |
| -# that all the man pages files exist. More specifically: if someone |
18 |
| -# invokes "make -j N", we need make to not execute the |
| 13 | +# dependency/generation reasons. But a *single* execution of the make |
| 14 | +# target will generate *all* of the man pages and HTML files. Hence, |
| 15 | +# when "make" determines that none of the man page files exist, it |
| 16 | +# should execute the Sphinx-invocation rule once, and then it will |
| 17 | +# realize that all the man pages files exist. More specifically: if |
| 18 | +# someone invokes "make -j N", we need make to not execute the |
19 | 19 | # Sphinx-invocation rule multiple times simultaneously. Both GNU Make
|
20 | 20 | # and BSD Make will honor the .NOTPARALLEL target to disable all
|
21 | 21 | # parallel invocation in this Makefile[.am].
|
| 22 | +# |
| 23 | +# Note that even though we explicitly disable make's parallelism, |
| 24 | +# we'll use Sphinx's internal parallelism via "-j auto" -- see |
| 25 | +# SPHINX_OPTS. |
22 | 26 | .NOTPARALLEL:
|
23 | 27 |
|
24 | 28 | OUTDIR = _build
|
25 | 29 | SPHINX_CONFIG = conf.py
|
26 |
| -SPHINX_OPTS ?= -W --keep-going |
| 30 | +SPHINX_OPTS ?= -W --keep-going -j auto |
27 | 31 |
|
28 | 32 | # Note: it is significantly more convenient to list all the source
|
29 | 33 | # files here using wildcards (vs. listing every single .rst file).
|
|
0 commit comments