No empty .Rs/.Re
[netbsd-mini2440.git] / gnu / dist / gmake / tests / scripts / features / conditionals
blob9aad1d197517ed1f045a93e2688436d211f8d267
1 #                                                                    -*-perl-*-
2 $description = "Check GNU make conditionals.";
4 $details = "Attempt various different flavors of GNU make conditionals.";
6 open(MAKEFILE,"> $makefile");
8 # The Contents of the MAKEFILE ...
10 print MAKEFILE <<'EOMAKE';
11 objects = foo.obj
12 arg1 = first
13 arg2 = second
14 arg3 = third
15 arg4 = cc
16 arg5 = second
18 all:
19 ifeq ($(arg1),$(arg2))
20         @echo arg1 equals arg2
21 else
22         @echo arg1 NOT equal arg2
23 endif
25 ifeq '$(arg2)' "$(arg5)"
26         @echo arg2 equals arg5
27 else
28         @echo arg2 NOT equal arg5
29 endif
31 ifneq '$(arg3)' '$(arg4)'
32         @echo arg3 NOT equal arg4
33 else
34         @echo arg3 equal arg4
35 endif
37 ifndef undefined
38         @echo variable is undefined
39 else
40         @echo variable undefined is defined
41 endif
42 ifdef arg4
43         @echo arg4 is defined
44 else
45         @echo arg4 is NOT defined
46 endif
48 EOMAKE
50 close(MAKEFILE);
52 &run_make_with_options($makefile,"",&get_logfile,0);
54 $answer = "arg1 NOT equal arg2
55 arg2 equals arg5
56 arg3 NOT equal arg4
57 variable is undefined
58 arg4 is defined
61 &compare_output($answer,&get_logfile(1));
64 # Test expansion of variables inside ifdef.
66 $makefile2 = &get_tmpfile;
68 open(MAKEFILE, "> $makefile2");
70 print MAKEFILE <<'EOF';
72 foo = 1
74 FOO = foo
75 F = f
77 DEF = no
78 DEF2 = no
80 ifdef $(FOO)
81 DEF = yes
82 endif
84 ifdef $(F)oo
85 DEF2 = yes
86 endif
88 all:; @echo DEF=$(DEF) DEF2=$(DEF2)
90 EOF
92 close(MAKEFILE)
94 &run_make_with_options($makefile2,"",&get_logfile,0);
95 $answer = "DEF=yes DEF2=yes\n";
96 &compare_output($answer,&get_logfile(1));
99 # This tells the test driver that the perl test script executed properly.