Infra: Add 'make help' (#2858)

This commit is contained in:
Hugo van Kemenade 2022-10-31 14:34:37 +02:00 committed by GitHub
parent 2e5e94ed44
commit 780ba199a2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 16 additions and 0 deletions

View File

@ -6,34 +6,42 @@ JOBS=8
OUTPUT_DIR=build
RENDER_COMMAND=$(VENVDIR)/bin/python3 build.py -j $(JOBS) -o $(OUTPUT_DIR)
## render to render PEPs to "pep-NNNN.html" files
.PHONY: render
render: venv
$(RENDER_COMMAND)
## pages to render PEPs to "index.html" files within "pep-NNNN" directories
.PHONY: pages
pages: venv rss
$(RENDER_COMMAND) --build-dirs
## fail-warning to render PEPs to "pep-NNNN.html" files and fail the Sphinx build on any warning
.PHONY: fail-warning
fail-warning: venv
$(RENDER_COMMAND) --fail-on-warning
## check-links to check validity of links within PEP sources
.PHONY: check-links
check-links: venv
$(RENDER_COMMAND) --check-links
## rss to generate the peps.rss file
.PHONY: rss
rss: venv
$(VENVDIR)/bin/python3 generate_rss.py
## clean to remove the venv and build files
.PHONY: clean
clean: clean-venv
-rm -rf build topic
## clean-venv to remove the venv
.PHONY: clean-venv
clean-venv:
rm -rf $(VENVDIR)
## venv to create a venv with necessary tools
.PHONY: venv
venv:
@if [ -d $(VENVDIR) ] ; then \
@ -46,16 +54,24 @@ venv:
echo "The venv has been created in the $(VENVDIR) directory"; \
fi
## lint to lint all the files
.PHONY: lint
lint: venv
$(VENVDIR)/bin/python3 -m pre_commit --version > /dev/null || $(VENVDIR)/bin/python3 -m pip install pre-commit
$(VENVDIR)/bin/python3 -m pre_commit run --all-files
## test to test the Sphinx extensions for PEPs
.PHONY: test
test: venv
$(VENVDIR)/bin/python3 -bb -X dev -W error -m pytest
## spellcheck to check spelling
.PHONY: spellcheck
spellcheck: venv
$(VENVDIR)/bin/python3 -m pre_commit --version > /dev/null || $(VENVDIR)/bin/python3 -m pip install pre-commit
$(VENVDIR)/bin/python3 -m pre_commit run --all-files --hook-stage manual codespell
.PHONY: help
help : Makefile
@echo "Please use \`make <target>' where <target> is one of"
@sed -n 's/^##//p' $<