summaryrefslogtreecommitdiffstats
path: root/make/make-3.81/tests/scripts/functions/eval
diff options
context:
space:
mode:
Diffstat (limited to 'make/make-3.81/tests/scripts/functions/eval')
-rw-r--r--make/make-3.81/tests/scripts/functions/eval169
1 files changed, 0 insertions, 169 deletions
diff --git a/make/make-3.81/tests/scripts/functions/eval b/make/make-3.81/tests/scripts/functions/eval
deleted file mode 100644
index 6f02a7a..0000000
--- a/make/make-3.81/tests/scripts/functions/eval
+++ /dev/null
@@ -1,169 +0,0 @@
-# -*-perl-*-
-
-$description = "Test the eval function.";
-
-$details = "This is a test of the eval function in GNU make.
-This function will evaluate inline makefile syntax and incorporate the
-results into its internal database.\n";
-
-open(MAKEFILE,"> $makefile");
-
-print MAKEFILE <<'EOF';
-define Y
- all:: ; @echo $AA
- A = B
-endef
-
-X = $(eval $(value Y))
-
-$(eval $(shell echo A = A))
-$(eval $(Y))
-$(eval A = C)
-$(eval $(X))
-EOF
-
-close(MAKEFILE);
-
-&run_make_with_options($makefile, "", &get_logfile);
-
-# Create the answer to what should be produced by this Makefile
-$answer = "AA\nBA\n";
-
-&compare_output($answer,&get_logfile(1));
-
-# Test to make sure defining variables when we have extra scope pushed works
-# as expected.
-
-$makefile2 = &get_tmpfile;
-
-open(MAKEFILE,"> $makefile2");
-
-print MAKEFILE <<'EOF';
-VARS = A B
-
-VARSET = $(1) = $(2)
-
-$(foreach v,$(VARS),$(eval $(call VARSET,$v,$v)))
-
-all: ; @echo A = $(A) B = $(B)
-EOF
-
-close(MAKEFILE);
-
-&run_make_with_options($makefile2, "", &get_logfile);
-
-# Create the answer to what should be produced by this Makefile
-$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));
-
-
-# TEST very recursive invocation of eval
-
-$makefile3 = &get_tmpfile;
-
-open(MAKEFILE,"> $makefile3");
-
-print MAKEFILE <<'EOF';
-..9 := 0 1 2 3 4 5 6 7 8 9
-rev=$(eval res:=)$(foreach word,$1,$(eval res:=${word} ${res}))${res}
-a:=$(call rev,${..9})
-all: ; @echo '[$(a)]'
-
-EOF
-
-close(MAKEFILE);
-
-&run_make_with_options($makefile3, "", &get_logfile);
-$answer = "[ 9 8 7 6 5 4 3 2 1 0 ]\n";
-&compare_output($answer,&get_logfile(1));
-
-
-# TEST eval with no filename context.
-# The trick here is that because EVAR is taken from the environment, it must
-# be evaluated before every command is invoked. Make sure that works, when
-# we have no file context for reading_file (bug # 6195)
-
-$makefile4 = &get_tmpfile;
-
-open(MAKEFILE,"> $makefile4");
-
-print MAKEFILE <<'EOF';
-EVAR = $(eval FOBAR = 1)
-all: ; @echo "OK"
-
-EOF
-
-close(MAKEFILE);
-
-$extraENV{EVAR} = '1';
-&run_make_with_options($makefile4, "", &get_logfile);
-$answer = "OK\n";
-&compare_output($answer,&get_logfile(1));
-
-
-# Clean out previous information to allow new run_make_test() interface.
-# If we ever convert all the above to run_make_test() we can remove this line.
-$makefile = undef;
-
-# Test handling of backslashes in strings to be evaled.
-
-run_make_test('
-define FOO
-all: ; @echo hello \
-world
-endef
-$(eval $(FOO))
-', '', 'hello world');
-
-run_make_test('
-define FOO
-all: ; @echo '."'".'he\llo'."'".'
- @echo world
-endef
-$(eval $(FOO))
-', '', 'he\llo
-world');
-
-
-# We don't allow new target/prerequisite relationships to be defined within a
-# command script, because these are evaluated after snap_deps() and that
-# causes lots of problems (like core dumps!)
-# See Savannah bug # 12124.
-
-run_make_test('deps: ; $(eval deps: foo)', '',
- '#MAKEFILE#:1: *** prerequisites cannot be defined in command scripts. Stop.',
- 512);
-
-1;