diff options
| author | Egor Tensin <egor@tensin.name> | 2026-10-14 18:20:35 +0500 |
|---|---|---|
| committer | Egor Tensin <egor@tensin.name> | 2026-10-14 18:23:27 +0500 |
| commit | e871d2c6805e8e7e1bdb6f83d29fc0307d4395d7 (patch) | |
| tree | bf639e1ccd6548d5e8953c6f2ef8d559dadf13c4 /prelude.mk | |
| parent | test: migrate to test-harness (diff) | |
| download | vk-scripts-e871d2c6805e8e7e1bdb6f83d29fc0307d4395d7.tar.gz vk-scripts-e871d2c6805e8e7e1bdb6f83d29fc0307d4395d7.zip | |
allow running Docker tests locally
Diffstat (limited to 'prelude.mk')
| -rw-r--r-- | prelude.mk | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/prelude.mk b/prelude.mk new file mode 100644 index 0000000..e0862a5 --- /dev/null +++ b/prelude.mk @@ -0,0 +1,29 @@ +# Please see https://tensin.name/blog/notes/makefile.html + +MAKEFLAGS += --no-builtin-rules --no-builtin-variables --warn-undefined-variables +unexport MAKEFLAGS +.DEFAULT_GOAL := all +.DELETE_ON_ERROR: +.SUFFIXES: +SHELL := bash +.SHELLFLAGS := -eu -o pipefail -c + +escape = $(subst ','\'',$(1)) + +define noexpand +ifeq ($$(origin $(1)),environment) + $(1) := $$(value $(1)) +endif +ifeq ($$(origin $(1)),environment override) + $(1) := $$(value $(1)) +endif +ifeq ($$(origin $(1)),command line) + override $(1) := $$(value $(1)) +endif +endef + +# A helper target to force execution of pattern rules (works like .PHONY for +# them): https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html +# +.PHONY: DO +DO: |
