List all commands in a help output
If using make as a task runner it’s a good idea to document all individual tasks and make it easy to get that documentation.
That can be done with using a task itself that parses the file and looks for ## comments
.PHONY: help
help:
@grep -E '^[0-9a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | \
sort | \
awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
.PHONY: build
build: ## Build
echo build steps
.PHONY: run
run: ## Run the code app
echo run my code