PYTHON ?= $(shell command -v python3 python|head -n1) .PHONY: default default: help define PRINT_HELP_PYSCRIPT import re, sys print("Usage: make ") cmds = {} for line in sys.stdin: match = re.match(r'^([a-zA-Z_-]+):.*?## (.*)$$', line) if match: target, help = match.groups() cmds.update({target: help}) for cmd in sorted(cmds): print(" * '%s' - %s" % (cmd, cmds[cmd])) endef export PRINT_HELP_PYSCRIPT .PHONY: help help: @$(PYTHON) -c "$$PRINT_HELP_PYSCRIPT" < $(MAKEFILE_LIST)