Issue #22394: Add a 'venv' command to Doc/Makefile.

This will create a venv using the interpreter specified by the PYTHON
variable for the Makefile that also install Sphinx. Typical usage is
expected to be:

  cd Doc
  make venv PYTHON=../python
  make html PYTHON=venv/bin/python3
This commit is contained in:
Brett Cannon 2014-12-05 15:17:31 -05:00
parent 1a7b8d1439
commit d5ea39d1b8
4 changed files with 13 additions and 8 deletions

6
.gitignore vendored
View File

@ -9,11 +9,7 @@
*~ *~
.gdb_history .gdb_history
Doc/build/ Doc/build/
Doc/tools/docutils/ Doc/venv/
Doc/tools/jinja/
Doc/tools/jinja2/
Doc/tools/pygments/
Doc/tools/sphinx/
Lib/lib2to3/*.pickle Lib/lib2to3/*.pickle
Lib/test/data/* Lib/test/data/*
Lib/_sysconfigdata.py Lib/_sysconfigdata.py

View File

@ -9,6 +9,7 @@ TAGS$
autom4te.cache$ autom4te.cache$
^build/ ^build/
^Doc/build/ ^Doc/build/
^Doc/venv/
buildno$ buildno$
config.cache config.cache
config.log config.log

View File

@ -15,11 +15,12 @@ ALLSPHINXOPTS = -b $(BUILDER) -d build/doctrees -D latex_paper_size=$(PAPER) \
.PHONY: help build html htmlhelp latex text changes linkcheck \ .PHONY: help build html htmlhelp latex text changes linkcheck \
suspicious coverage doctest pydoc-topics htmlview clean dist check serve \ suspicious coverage doctest pydoc-topics htmlview clean dist check serve \
autobuild-dev autobuild-stable autobuild-dev autobuild-stable venv
help: help:
@echo "Please use \`make <target>' where <target> is one of" @echo "Please use \`make <target>' where <target> is one of"
@echo " clean to remove build files" @echo " clean to remove build files"
@echo " venv to create a venv with necessary tools"
@echo " html to make standalone HTML files" @echo " html to make standalone HTML files"
@echo " htmlview to open the index page built by the html target in your browser" @echo " htmlview to open the index page built by the html target in your browser"
@echo " htmlhelp to make HTML files and a HTML help project" @echo " htmlhelp to make HTML files and a HTML help project"
@ -102,7 +103,11 @@ htmlview: html
$(PYTHON) -c "import webbrowser; webbrowser.open('build/html/index.html')" $(PYTHON) -c "import webbrowser; webbrowser.open('build/html/index.html')"
clean: clean:
-rm -rf build/* -rm -rf build/* venv/*
venv:
$(PYTHON) -m venv venv
./venv/bin/python3 -m pip install -U Sphinx
dist: dist:
rm -rf dist rm -rf dist
@ -172,4 +177,3 @@ autobuild-stable:
exit 1;; \ exit 1;; \
esac esac
@make autobuild-dev @make autobuild-dev

View File

@ -1348,6 +1348,10 @@ C API
Documentation Documentation
------------- -------------
- Issue #22394: Doc/Makefile now supports ``make venv PYTHON=../python`` to
create a venv for generating the documentation, e.g.,
``make html PYTHON=venv/bin/python3``.
- Issue #21514: The documentation of the json module now refers to new JSON RFC - Issue #21514: The documentation of the json module now refers to new JSON RFC
7159 instead of obsoleted RFC 4627. 7159 instead of obsoleted RFC 4627.