myos/make/help.mk

40 lines
991 B
Makefile
Raw Normal View History

2021-02-09 17:05:00 +01:00
.DEFAULT_GOAL := help
COLOR_RESET ?= \033[0m
COLOR_GREEN ?= \033[32m
COLOR_BROWN ?= \033[33m
COLOR_BLUE ?= \033[36m
##
# HELP
.PHONY: help
help: usage blank1 target blank2 context ## This help
.PHONY: usage
usage:
printf "${COLOR_BROWN}Usage:${COLOR_RESET}\n"
printf "make [target]\n"
.PHONY: blank1 blank2
blank1 blank2:
printf "\n"
.PHONY: target
## Show available targets
target:
printf "${COLOR_BROWN}Targets:${COLOR_RESET}\n"
2021-05-25 14:55:16 +02:00
awk 'BEGIN {FS = ":.*?## "}; $$0 ~ /^[a-zA-Z_-]+:.*?## .*$$/ {printf "${COLOR_BLUE}%-31s${COLOR_RESET} %s\n", $$1, $$2}' $(MAKEFILE_LIST)
2021-02-09 17:05:00 +01:00
.PHONY: context
## Show current context
context:
printf "${COLOR_BROWN}Context:${COLOR_RESET}\n"
2021-05-31 20:52:49 +02:00
$(MAKE) $(foreach var,$(CONTEXT),$(if $($(var)),context-$(var)))
2021-02-09 17:05:00 +01:00
2021-05-31 20:52:49 +02:00
.PHONY: context-%
2021-05-25 14:55:16 +02:00
context-%:
2021-05-30 23:45:30 +02:00
printf "${COLOR_BLUE}%-31s${COLOR_RESET}" $*
printf "${COLOR_GREEN}"
$(call PRINTF,$($*))
printf "${COLOR_RESET}"