summaryrefslogtreecommitdiff
path: root/tests/scripts/options/dash-B
blob: 32992b3c6c1b0c875eab0f64029a8fd92c93b9bb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#                                                                    -*-perl-*-

$description = "Test make -B (always remake) option.\n";

$details = "\
Construct a simple makefile that builds a target.
Invoke make once, so it builds everything.  Invoke it again and verify
that nothing is built.  Then invoke it with -B and verify that everything
is built again.";

open(MAKEFILE,"> $makefile");

print MAKEFILE <<'EOF';
.SUFFIXES:

.PHONY: all
all: foo

foo: bar.x
	@echo cp $< $@
	@echo "" > $@
EOF

close(MAKEFILE);


&touch('bar.x');

&run_make_with_options($makefile, '', &get_logfile);
$answer = "cp bar.x foo\n";
&compare_output($answer, &get_logfile(1));

&run_make_with_options($makefile, '', &get_logfile);
$answer = "$make_name: Nothing to be done for `all'.\n";
&compare_output($answer, &get_logfile(1));

&run_make_with_options($makefile, '-B', &get_logfile);
$answer = "cp bar.x foo\n";
&compare_output($answer, &get_logfile(1));

unlink('bar.x', 'foo') unless $keep;

1;