From e871d2c6805e8e7e1bdb6f83d29fc0307d4395d7 Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Wed, 14 Oct 2026 18:20:35 +0500 Subject: allow running Docker tests locally --- prelude.mk | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 prelude.mk (limited to 'prelude.mk') 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: -- cgit v1.3