2021-06-08 19:11:26 -04:00
|
|
|
# Builds PEP files to HTML using docutils or sphinx
|
|
|
|
# Also contains testing targets
|
2000-09-06 21:29:32 -04:00
|
|
|
|
2009-01-27 15:05:05 -05:00
|
|
|
PEP2HTML=pep2html.py
|
|
|
|
|
2017-02-13 13:47:14 -05:00
|
|
|
PYTHON=python3
|
2000-09-06 21:29:32 -04:00
|
|
|
|
2021-01-13 20:40:00 -05:00
|
|
|
VENV_DIR=venv
|
|
|
|
|
2016-06-23 18:57:01 -04:00
|
|
|
.SUFFIXES: .txt .html .rst
|
2000-09-06 21:29:32 -04:00
|
|
|
|
|
|
|
.txt.html:
|
2009-09-17 05:42:09 -04:00
|
|
|
@$(PYTHON) $(PEP2HTML) $<
|
2000-09-06 21:29:32 -04:00
|
|
|
|
2016-06-23 18:57:01 -04:00
|
|
|
.rst.html:
|
|
|
|
@$(PYTHON) $(PEP2HTML) $<
|
|
|
|
|
2018-07-10 09:10:43 -04:00
|
|
|
TARGETS= $(patsubst %.rst,%.html,$(wildcard pep-????.rst)) $(patsubst %.txt,%.html,$(wildcard pep-????.txt)) pep-0000.html
|
2000-09-06 21:29:32 -04:00
|
|
|
|
2018-07-10 09:10:43 -04:00
|
|
|
all: pep-0000.rst $(TARGETS)
|
2000-11-03 10:42:20 -05:00
|
|
|
|
2002-05-28 11:30:29 -04:00
|
|
|
$(TARGETS): pep2html.py
|
|
|
|
|
2018-07-10 09:10:43 -04:00
|
|
|
pep-0000.rst: $(wildcard pep-????.txt) $(wildcard pep-????.rst) $(wildcard pep0/*.py) genpepindex.py
|
2009-01-27 15:05:05 -05:00
|
|
|
$(PYTHON) genpepindex.py .
|
2009-01-07 22:53:19 -05:00
|
|
|
|
2015-01-14 16:05:43 -05:00
|
|
|
rss:
|
|
|
|
$(PYTHON) pep2rss.py .
|
|
|
|
|
2000-11-03 10:42:20 -05:00
|
|
|
install:
|
2006-01-15 02:29:30 -05:00
|
|
|
echo "Installing is not necessary anymore. It will be done in post-commit."
|
2000-11-03 10:42:20 -05:00
|
|
|
|
|
|
|
clean:
|
2018-07-10 09:10:43 -04:00
|
|
|
-rm pep-0000.rst
|
2000-11-03 10:42:20 -05:00
|
|
|
-rm *.html
|
2019-02-23 13:02:57 -05:00
|
|
|
-rm -rf build
|
2000-11-06 10:30:47 -05:00
|
|
|
|
|
|
|
update:
|
2016-06-15 17:39:53 -04:00
|
|
|
git pull https://github.com/python/peps.git
|
2015-08-08 15:54:36 -04:00
|
|
|
|
|
|
|
venv:
|
2021-01-13 20:40:00 -05:00
|
|
|
$(PYTHON) -m venv $(VENV_DIR)
|
2021-06-08 19:11:26 -04:00
|
|
|
./$(VENV_DIR)/bin/python -m pip install -r requirements.txt
|
2019-02-23 13:02:57 -05:00
|
|
|
|
|
|
|
package: all rss
|
|
|
|
mkdir -p build/peps
|
2019-04-09 12:26:44 -04:00
|
|
|
cp pep-*.txt build/peps/
|
|
|
|
cp pep-*.rst build/peps/
|
2019-02-23 13:02:57 -05:00
|
|
|
cp *.html build/peps/
|
|
|
|
cp *.png build/peps/
|
|
|
|
cp *.rss build/peps/
|
|
|
|
tar -C build -czf build/peps.tar.gz peps
|
2021-02-08 10:20:51 -05:00
|
|
|
|
|
|
|
lint:
|
2022-02-21 19:03:58 -05:00
|
|
|
pre-commit --version > /dev/null || $(PYTHON) -m pip install pre-commit
|
2021-02-08 10:20:51 -05:00
|
|
|
pre-commit run --all-files
|
2021-06-08 19:11:26 -04:00
|
|
|
|
2022-01-24 18:40:15 -05:00
|
|
|
spellcheck:
|
2022-02-21 19:03:58 -05:00
|
|
|
pre-commit --version > /dev/null || $(PYTHON) -m pip install pre-commit
|
2022-01-24 18:40:15 -05:00
|
|
|
pre-commit run --all-files --hook-stage manual codespell
|
|
|
|
|
2021-06-08 19:11:26 -04:00
|
|
|
# New Sphinx targets:
|
|
|
|
|
|
|
|
SPHINX_JOBS=8
|
|
|
|
SPHINX_BUILD=$(PYTHON) build.py -j $(SPHINX_JOBS)
|
|
|
|
|
2021-06-15 18:22:39 -04:00
|
|
|
# TODO replace `rss:` with this when merged & tested
|
|
|
|
pep_rss:
|
2022-01-09 13:07:03 -05:00
|
|
|
$(PYTHON) generate_rss.py
|
2021-06-15 18:22:39 -04:00
|
|
|
|
|
|
|
pages: pep_rss
|
2022-01-16 17:33:05 -05:00
|
|
|
$(SPHINX_BUILD) --build-dirs
|
2021-06-08 19:11:26 -04:00
|
|
|
|
|
|
|
sphinx:
|
|
|
|
$(SPHINX_BUILD)
|
|
|
|
|
2021-06-09 09:02:16 -04:00
|
|
|
fail-warning:
|
2021-06-08 19:11:26 -04:00
|
|
|
$(SPHINX_BUILD) --fail-on-warning
|
|
|
|
|
2021-06-09 09:02:16 -04:00
|
|
|
check-links:
|
2021-06-08 19:11:26 -04:00
|
|
|
$(SPHINX_BUILD) --check-links
|