@@ -23,26 +23,20 @@ SPHINX_FLAGS:=-n -W --keep-going -E
2323SPHINX_HTML_OUTDIR: =../dist-newstyle/doc/users-guide
2424USERGUIDE_STAMP: =$(SPHINX_HTML_OUTDIR ) /index.html
2525
26- # Users guide
27- # #############################################################################
28-
29- users-guide : $(USERGUIDE_STAMP )
26+ users-guide : $(USERGUIDE_STAMP ) # # Build the users guide with Sphinx.
3027$(USERGUIDE_STAMP ) : * .rst
3128 mkdir -p $(SPHINX_HTML_OUTDIR ) \
3229 && uv sync \
3330 && uv run sphinx-build $(SPHINX_FLAGS ) . $(SPHINX_HTML_OUTDIR )
3431
35- # Requirements
36- # #############################################################################
37-
3832requirements.txt :
3933 uv export --frozen --format requirements.txt > requirements.txt
4034
4135# Check requirements.txt for security violations via skjold,
4236# configured in pyproject.toml.
4337# See: https://pythonawesome.com/security-audit-python-project-dependencies-against-security-advisory-databases/
4438.PHONY : check-requirements
45- check-requirements :
39+ check-requirements : # # Audit requirements.txt for vulnerabilities with skjold.
4640 @if [ -z " $$ {SKJOLD_GITHUB_API_TOKEN}" ] \
4741 ; then \
4842 echo " WARNING: Neither SKJOLD_GITHUB_API_TOKEN nor GITHUB_TOKEN is set." \
@@ -51,8 +45,7 @@ check-requirements:
5145 uvx skjold -c pyproject.toml config \
5246 && uv pip list --format freeze | uvx skjold -c pyproject.toml audit
5347
54- # Debug print environment variables
55- debug :
48+ debug : # # Print the GitHub token environment variables.
5649 @echo " GITHUB_TOKEN = ${GITHUB_TOKEN} "
5750 @echo " SKJOLD_GITHUB_API_TOKEN = $$ {SKJOLD_GITHUB_API_TOKEN}"
5851 @echo " Is SKJOLD_GITHUB_API_TOKEN set? $$ {SKJOLD_GITHUB_API_TOKEN:+yes}"
@@ -133,7 +126,7 @@ SETUP_COMMANDS := \
133126# logs of freshly built dependencies (process, resolv, network, ...) into
134127# the captured stdout and pollute the generated .txt files.
135128.PHONY : cmd-help-build
136- cmd-help-build :
129+ cmd-help-build : # # Build the cabal executable before dumping help output.
137130 @cabal build -v0 cabal-install:exe:cabal > /dev/null 2>&1
138131
139132cmd-v1-help/% .txt : | cmd-help-build
@@ -166,18 +159,21 @@ setup-help/help.txt: | cmd-help-build
166159 @cabal run -v0 cabal-install:exe:cabal -- act-as-setup -- --help > $@ 2> /dev/null
167160
168161.PHONY : cmd-v1-help
169- cmd-v1-help : $(addsuffix .txt,$(addprefix cmd-v1-help/,$(CABAL_V1_COMMANDS ) ) )
162+ cmd-v1-help : $(addsuffix .txt,$(addprefix cmd-v1-help/,$(CABAL_V1_COMMANDS ) ) ) # # Dump v1 commands' help.
170163
171164.PHONY : cmd-v2-help
172- cmd-v2-help : cmd-v2-help/help.txt $(addsuffix .txt,$(addprefix cmd-v2-help/,$(CABAL_COMMANDS ) ) )
165+ cmd-v2-help : cmd-v2-help/help.txt $(addsuffix .txt,$(addprefix cmd-v2-help/,$(CABAL_COMMANDS ) ) ) # # Dump v2 commands' help.
173166
174167.PHONY : cmd-v2-hidden-help
175- cmd-v2-hidden-help : $(addsuffix .txt,$(addprefix cmd-v2-hidden-help/,$(CABAL_HIDDEN_COMMANDS ) ) )
168+ cmd-v2-hidden-help : $(addsuffix .txt,$(addprefix cmd-v2-hidden-help/,$(CABAL_HIDDEN_COMMANDS ) ) ) # # Dump hidden commands' help.
176169
177170.PHONY : setup-help
178- setup-help : setup-help/help.txt $(addsuffix .txt,$(addprefix setup-help/,$(SETUP_COMMANDS ) ) )
171+ setup-help : setup-help/help.txt $(addsuffix .txt,$(addprefix setup-help/,$(SETUP_COMMANDS ) ) ) # # Dump Setup commands' help.
179172
180173.PHONY : cmd-help
181- cmd-help : cmd-v2-help cmd-v1-help cmd-v2-hidden-help setup-help
174+ cmd-help : cmd-v2-help cmd-v1-help cmd-v2-hidden-help setup-help # # Dump all commands' help.
182175
183- # EOF
176+ .PHONY : help
177+ help : # # Show the commented targets.
178+ @grep -E ' ^[a-zA-Z0-9_-]+:.*## .*$$' $(MAKEFILE_LIST ) | \
179+ sort | awk ' BEGIN {FS = ":.*## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
0 commit comments