summaryrefslogtreecommitdiff
path: root/tests/scripts/variables/flavors
diff options
context:
space:
mode:
Diffstat (limited to 'tests/scripts/variables/flavors')
-rw-r--r--tests/scripts/variables/flavors68
1 files changed, 68 insertions, 0 deletions
diff --git a/tests/scripts/variables/flavors b/tests/scripts/variables/flavors
new file mode 100644
index 0000000..7642636
--- /dev/null
+++ b/tests/scripts/variables/flavors
@@ -0,0 +1,68 @@
+# -*-perl-*-
+
+$description = "Test various flavors of make variable setting.";
+
+$details = "";
+
+open(MAKEFILE, "> $makefile");
+
+# The Contents of the MAKEFILE ...
+
+print MAKEFILE <<'EOF';
+foo = $(bar)
+bar = ${ugh}
+ugh = Hello
+
+all: multi ; @echo $(foo)
+
+multi: ; $(multi)
+
+x := foo
+y := $(x) bar
+x := later
+
+nullstring :=
+space := $(nullstring) $(nullstring)
+
+next: ; @echo $x$(space)$y
+
+define multi
+@echo hi
+@echo there
+endef
+
+ifdef BOGUS
+define
+@echo error
+endef
+endif
+
+EOF
+
+# END of Contents of MAKEFILE
+
+close(MAKEFILE);
+
+# TEST #1
+# -------
+
+&run_make_with_options($makefile, "", &get_logfile);
+$answer = "hi\nthere\nHello\n";
+&compare_output($answer, &get_logfile(1));
+
+# TEST #2
+# -------
+
+&run_make_with_options($makefile, "next", &get_logfile);
+$answer = "later foo bar\n";
+&compare_output($answer, &get_logfile(1));
+
+# TEST #3
+# -------
+
+&run_make_with_options($makefile, "BOGUS=true", &get_logfile, 512);
+$answer = "$makefile:23: *** empty variable name. Stop.\n";
+&compare_output($answer, &get_logfile(1));
+
+
+1;