xref: /netbsd-src/external/gpl2/gmake/dist/tests/scripts/functions/filter-out (revision 69606e3f5c9388e52aed8c120ad63c049ca45d8f)
1#                                                                    -*-perl-*-
2
3$description = "Test the filter-out function.";
4
5$details = "The makefile created in this test has two variables.  The
6filter-out function is first used to discard names ending in
7.o with a single simple pattern.  The second filter-out function
8augments the simple pattern with three literal names, which are
9also added to the text argument.  This tests an internal hash table
10which is only used if there are multiple literals present in both
11the pattern and text arguments.  The result of both filter-out
12functions is the same single .elc name.\n";
13
14open(MAKEFILE,"> $makefile");
15
16print MAKEFILE <<'EOF';
17files1 := $(filter-out %.o, foo.elc bar.o lose.o)
18files2 := $(filter-out foo.i bar.i lose.i %.o, foo.i bar.i lose.i foo.elc bar.o lose.o)
19all: ; @echo $(files1) $(files2)
20EOF
21
22close(MAKEFILE);
23
24&run_make_with_options($makefile, "", &get_logfile, 0);
25$answer = "foo.elc foo.elc\n";
26&compare_output($answer,&get_logfile(1));
27
281;
29