diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2020-05-24 00:08:54 +0000 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2020-05-24 00:17:29 +0000 |
commit | f3fdf2321708b04ec1a84f99e80852151a78242d (patch) | |
tree | b37a817671f5cc306b7af2d74a47e5bac8a46824 /makefile_escaping/env_vars.mk | |
parent | makefile_escaping: set up CI (diff) | |
download | blog-f3fdf2321708b04ec1a84f99e80852151a78242d.tar.gz blog-f3fdf2321708b04ec1a84f99e80852151a78242d.zip |
makefile_escaping: fix inclusions in other variables
Diffstat (limited to 'makefile_escaping/env_vars.mk')
-rw-r--r-- | makefile_escaping/env_vars.mk | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/makefile_escaping/env_vars.mk b/makefile_escaping/env_vars.mk index 47c1647..7fdc087 100644 --- a/makefile_escaping/env_vars.mk +++ b/makefile_escaping/env_vars.mk @@ -1,15 +1,22 @@ escape = $(subst ','\'',$(1)) -escape_var = $(call escape,$(value $(1))) test_var ?= This is safe. +test_var := $(value test_var) export test_var -echo_test_var := printf '%s\n' '$(call escape_var,test_var)' -bash_test_var := bash -c '$(call escape_var,echo_test_var)' +inner_var := Inner variable +outer_var := Outer variable - $(inner_var) - $(test_var) + +echo_test_var := printf '%s\n' '$(call escape,$(test_var))' +bash_test_var := bash -c '$(call escape,$(echo_test_var))' + +echo_outer_var := printf '%s\n' '$(call escape,$(outer_var))' .PHONY: test test: - @printf '%s\n' '$(call escape_var,test_var)' + @printf '%s\n' '$(call escape,$(test_var))' @printf '%s\n' "$$test_var" - @bash -c '$(call escape_var,echo_test_var)' - @bash -c '$(call escape_var,bash_test_var)' + @bash -c '$(call escape,$(echo_test_var))' + @bash -c '$(call escape,$(bash_test_var))' + @printf '%s\n' '$(call escape,$(outer_var))' + @bash -c '$(call escape,$(echo_outer_var))' |