aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/makefile_escaping/escaping_env_vars.mk
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2020-05-30 21:43:15 +0000
committerEgor Tensin <Egor.Tensin@gmail.com>2020-05-30 21:47:09 +0000
commit3fc78d2fabb5c613f10c9e94d8a1a4c1a548648f (patch)
treece1b2d56eaed7836d116ef8fbd3a0cdf92f0f664 /makefile_escaping/escaping_env_vars.mk
parentmakefile_escaping: fix variable overrides (diff)
downloadblog-3fc78d2fabb5c613f10c9e94d8a1a4c1a548648f.tar.gz
blog-3fc78d2fabb5c613f10c9e94d8a1a4c1a548648f.zip
makefile_escaping: more concise test cases
Diffstat (limited to 'makefile_escaping/escaping_env_vars.mk')
-rw-r--r--makefile_escaping/escaping_env_vars.mk23
1 files changed, 3 insertions, 20 deletions
diff --git a/makefile_escaping/escaping_env_vars.mk b/makefile_escaping/escaping_env_vars.mk
index 421c4b6..f2e7a2d 100644
--- a/makefile_escaping/escaping_env_vars.mk
+++ b/makefile_escaping/escaping_env_vars.mk
@@ -7,7 +7,7 @@ SHELL := bash
escape = $(subst ','\'',$(1))
-define escape_arg
+define escape_env
ifeq ($$(origin $(1)),environment)
$(1) := $$(value $(1))
endif
@@ -19,32 +19,15 @@ override $(1) := $$(value $(1))
endif
endef
-# Simple variable.
simple_var := Simple value
-test_var ?= $(simple_var)
-export test_var
-
-$(eval $(call escape_arg,test_var))
+test_var ?= $(simple_var) (in test_var)
+$(eval $(call escape_env,test_var))
simple_var := New simple value
-
-# printf $test_var
-echo_test_var := printf '%s\n' '$(call escape,$(test_var))'
-# bash -c 'printf $test_var'
-bash_test_var := bash -c '$(call escape,$(echo_test_var))'
-
-# Composite variable, includes both $simple_var and $test_var.
composite_var := Composite value - $(simple_var) - $(test_var)
-# printf $composite_var
-echo_composite_var := printf '%s\n' '$(call escape,$(composite_var))'
-
.PHONY: test
test:
@printf '%s\n' '$(call escape,$(test_var))'
- @printf '%s\n' "$$test_var"
- @bash -c '$(call escape,$(echo_test_var))'
- @bash -c '$(call escape,$(bash_test_var))'
@printf '%s\n' '$(call escape,$(composite_var))'
- @bash -c '$(call escape,$(echo_composite_var))'