diff options
Diffstat (limited to 'tests/scripts')
-rw-r--r-- | tests/scripts/functions/eval | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/scripts/functions/eval b/tests/scripts/functions/eval index 0d5e3b8..174767d 100644 --- a/tests/scripts/functions/eval +++ b/tests/scripts/functions/eval @@ -57,4 +57,35 @@ $answer = "A = A B = B\n"; &compare_output($answer,&get_logfile(1)); +# Test to make sure eval'ing inside conditionals works properly + +$makefile3 = &get_tmpfile; + +open(MAKEFILE,"> $makefile3"); + +print MAKEFILE <<'EOF'; +FOO = foo + +all:: ; @echo it + +define Y + all:: ; @echo worked +endef + +ifdef BAR +$(eval $(Y)) +endif + +EOF + +close(MAKEFILE); + +&run_make_with_options($makefile3, "", &get_logfile); +$answer = "it\n"; +&compare_output($answer,&get_logfile(1)); + +&run_make_with_options($makefile3, "BAR=1", &get_logfile); +$answer = "it\nworked\n"; +&compare_output($answer,&get_logfile(1)); + 1; |