@@ -14,15 +14,15 @@ PAPER =
1414SOURCES =
1515DISTVERSION = $(shell $(PYTHON ) tools/extensions/patchlevel.py)
1616REQUIREMENTS = requirements.txt
17- SPHINXERRORHANDLING = -W
17+ SPHINXERRORHANDLING = --fail-on-warning
1818
1919# Internal variables.
20- PAPEROPT_a4 = -D latex_elements.papersize=a4paper
21- PAPEROPT_letter = -D latex_elements.papersize=letterpaper
20+ PAPEROPT_a4 = --define latex_elements.papersize=a4paper
21+ PAPEROPT_letter = --define latex_elements.papersize=letterpaper
2222
23- ALLSPHINXOPTS = -b $(BUILDER ) \
24- -d build/doctrees \
25- -j $(JOBS ) \
23+ ALLSPHINXOPTS = --builder $(BUILDER ) \
24+ --doctree-dir build/doctrees \
25+ --jobs $(JOBS ) \
2626 $(PAPEROPT_$(PAPER ) ) \
2727 $(SPHINXOPTS ) $(SPHINXERRORHANDLING ) \
2828 . build/$(BUILDER ) $(SOURCES )
@@ -144,7 +144,7 @@ pydoc-topics: build
144144
145145.PHONY : gettext
146146gettext : BUILDER = gettext
147- gettext : override SPHINXOPTS := -d build/doctrees-gettext $(SPHINXOPTS )
147+ gettext : override SPHINXOPTS := --doctree-dir build/doctrees-gettext $(SPHINXOPTS )
148148gettext : build
149149
150150.PHONY : htmlview
@@ -172,7 +172,7 @@ venv:
172172 else \
173173 echo " Creating venv in $( VENVDIR) " ; \
174174 if $( UV) --version > /dev/null 2>&1 ; then \
175- $(UV ) venv $(VENVDIR ) ; \
175+ $(UV ) venv --python= $( PYTHON ) $(VENVDIR ) ; \
176176 VIRTUAL_ENV=$(VENVDIR ) $(UV ) pip install -r $(REQUIREMENTS ) ; \
177177 else \
178178 $(PYTHON ) -m venv $(VENVDIR ) ; \
@@ -300,20 +300,20 @@ serve:
300300# By default, Sphinx only rebuilds pages where the page content has changed.
301301# This means it doesn't always pick up changes to preferred link targets, etc
302302# To ensure such changes are picked up, we build the published docs with
303- # `-E` (to ignore the cached environment) and `-a` (to ignore already existing
304- # output files)
303+ # ``--fresh-env`` (to ignore the cached environment) and ``--write-all``
304+ # (to ignore already existing output files)
305305
306306# for development releases: always build
307307.PHONY : autobuild-dev
308308autobuild-dev : DISTVERSION = $(shell $(PYTHON ) tools/extensions/patchlevel.py --short)
309309autobuild-dev :
310- $(MAKE ) dist-no-html SPHINXOPTS=' $(SPHINXOPTS) -Ea -A daily=1' DISTVERSION=$(DISTVERSION )
310+ $(MAKE ) dist-no-html SPHINXOPTS=' $(SPHINXOPTS) --fresh-env --write-all --html-define daily=1' DISTVERSION=$(DISTVERSION )
311311
312312# for HTML-only rebuilds
313313.PHONY : autobuild-dev-html
314314autobuild-dev-html : DISTVERSION = $(shell $(PYTHON ) tools/extensions/patchlevel.py --short)
315315autobuild-dev-html :
316- $(MAKE ) dist-html SPHINXOPTS=' $(SPHINXOPTS) -Ea -A daily=1' DISTVERSION=$(DISTVERSION )
316+ $(MAKE ) dist-html SPHINXOPTS=' $(SPHINXOPTS) --fresh-env --write-all --html-define daily=1' DISTVERSION=$(DISTVERSION )
317317
318318# for stable releases: only build if not in pre-release stage (alpha, beta)
319319# release candidate downloads are okay, since the stable tree can be in that stage
0 commit comments