-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMakefile
More file actions
40 lines (22 loc) · 1005 Bytes
/
Makefile
File metadata and controls
40 lines (22 loc) · 1005 Bytes
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
SHELL := /usr/bin/env bash
CHECKMAKE=go run github.com/checkmake/checkmake/cmd/checkmake@latest
.PHONY: all
all: help ## default target (invokes help)
.PHONY: test
test: check ## perform tests (checks/linting).
.PHONY: shellcheck
shellcheck: ## lint shell scripts
shellcheck --severity=warning --format=gcc --shell=bash $(shell find . -type f -name '*.sh')
.PHONY: check
check: checkmake shellcheck ## perform checks and linting
.PHONY: makeckmake
checkmake: ## lint the Makefile with checkmake.
@$(CHECKMAKE) Makefile
.PHONY: clean
clean: ## clean the working directory (currently vain).
@echo "Note: no generated files. not cleaning. use git to clean."
.PHONY: help
help: ## Show usage info for the Makefile targets.
@echo "Usage: make [OPTION1=value OPTION2=value ...] [TARGET ...]"
@echo " Available targets:"
@grep --no-filename -E '^[a-zA-Z0-9_%-. ]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'