make/tests/scripts/variables/undefine

74 lines
955 B
Text
Raw Normal View History

2009-10-06 06:56:57 +00:00
# -*-perl-*-
$description = "Test variable undefine.";
$details = "";
# TEST 0: basic undefine functionality
run_make_test('
a = a
b := b
define c
c
endef
$(info $(flavor a) $(flavor b) $(flavor c))
n := b
undefine a
undefine $n
undefine c
$(info $(flavor a) $(flavor b) $(flavor c))
all: ;@:
',
'', "recursive simple recursive\nundefined undefined undefined");
# TEST 1: override
run_make_test('
undefine a
override undefine b
$(info $(flavor a) $(flavor b))
all: ;@:
',
'a=a b=b', "recursive undefined");
1;
# TEST 2: undefine in eval (make sure we undefine from the global var set)
run_make_test('
define undef
$(eval undefine $$1)
endef
a := a
$(call undef,a)
$(info $(flavor a))
all: ;@:
',
'', "undefined");
# TEST 3: Missing variable name
run_make_test('
a =
undefine $a
all: ;@echo ouch
',
'', "#MAKEFILE#:3: *** empty variable name. Stop.\n", 512);
1;