From 1c5a4e839cf68c45d7b2a15bd5f64290d2154118 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 1 Jun 2016 16:14:57 -0400 Subject: (systemd) Be a little tougher with --no-builtin-variables --- build-aux/no-builtin-variables.mk | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 build-aux/no-builtin-variables.mk (limited to 'build-aux') diff --git a/build-aux/no-builtin-variables.mk b/build-aux/no-builtin-variables.mk new file mode 100644 index 0000000..c3aef58 --- /dev/null +++ b/build-aux/no-builtin-variables.mk @@ -0,0 +1,15 @@ +MAKEFLAGS += --no-builtin-variables + +# This version is more correct, but is slower: +# $(foreach v,$(shell bash -c 'comm -23 <(env -i $(MAKE) -f - <<<"\$$(info \$$(.VARIABLES))all:"|sed "s/ /\n/g"|sort) <(env -i $(MAKE) -R -f - <<<"\$$(info \$$(.VARIABLES))all:"|sed "s/ /\n/g"|sort)'), +# $(if $(filter default,$(origin $v)),$(eval undefine $v))) + +_default_variables = $(foreach v,$(.VARIABLES),$(if $(filter default,$(origin $v)),$v)) +$(foreach v,$(filter-out .% MAKE% SUFFIXES,$(_default_variables))\ + $(filter .LIBPATTERNS MAKEINFO,$(_default_variables)),\ + $(eval undefine $v)) +undefine _default_variables + +# Because Make uses .LIBPATTERNS internally, it should always be +# defined in case --warn-undefined-variables +.LIBPATTERNS ?= -- cgit v1.2.2