1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
#
# Makefile for Pygments
# ~~~~~~~~~~~~~~~~~~~~~
#
# Combines scripts for common tasks.
#
# :copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
# :license: BSD, see LICENSE for details.
#
PYTHON ?= python3
export PYTHONPATH = $(shell echo "$$PYTHONPATH"):$(shell python -c 'import os; print ":".join(os.path.abspath(line.strip()) for line in file("PYTHONPATH"))' 2>/dev/null)
.PHONY: all check clean clean-pyc docs mapfiles \
pylint reindent test test-coverage \
tox-test tox-test-coverage regexlint
all: clean-pyc check test
check:
@$(PYTHON) scripts/check_crlf.py pygments build external
@$(PYTHON) scripts/detect_missing_analyse_text.py --skip-no-aliases
@pyflakes pygments | grep -v 'but unused' || true
@$(PYTHON) scripts/check_sources.py -i build -i dist -i pygments/lexers/_mapping.py \
-i docs/build -i pygments/formatters/_mapping.py -i pygments/unistring.py \
-i tests/support/empty.py
@$(PYTHON) scripts/count_token_references.py --minfiles=1 --maxfiles=1 \
--minlines=1 --maxlines=3 --subtoken
clean: clean-pyc
-rm -rf doc/_build build Pygments.egg-info
-rm -f codetags.html
clean-pyc:
find . -name '__pycache__' -exec rm -rf {} +
docs:
make -C doc html
mapfiles:
$(PYTHON) scripts/gen_mapfiles.py
pylint:
@pylint --rcfile scripts/pylintrc pygments
reindent:
@$(PYTHON) scripts/reindent.py -r -B .
TEST = tests
test:
@$(PYTHON) -m pytest $(TEST)
test-coverage:
@$(PYTHON) -m pytest --cov --cov-report=html --cov-report=term $(TEST)
tox-test:
@tox -- $(TEST)
tox-test-coverage:
@tox -- --with-coverage --cover-package=pygments --cover-erase $(TEST)
RLMODULES = pygments.lexers
regexlint:
@if [ -z "$(REGEXLINT)" ]; then echo "Please set REGEXLINT=checkout path"; exit 1; fi
PYTHONPATH=`pwd`:$(REGEXLINT) $(PYTHON) $(REGEXLINT)/regexlint/cmdline.py $(RLMODULES)
|