mirror of
https://git.savannah.gnu.org/git/make.git
synced 2025-01-01 01:33:51 +00:00
107 lines
1.3 KiB
Text
107 lines
1.3 KiB
Text
|
# -*-perl-*-
|
||
|
$description = "Test second expansion in static pattern rules.";
|
||
|
|
||
|
$details = "";
|
||
|
|
||
|
# Test #1: automatic variables.
|
||
|
#
|
||
|
run_make_test('
|
||
|
.DEFAULT: ; @echo $@
|
||
|
|
||
|
foo.a foo.b: foo.%: bar.% baz.%
|
||
|
|
||
|
foo.a foo.b: foo.%: biz.% | buz.%
|
||
|
|
||
|
foo.a foo.b: foo.%: $$@.1 \
|
||
|
$$<.2 \
|
||
|
$$(addsuffix .3,$$^) \
|
||
|
$$(addsuffix .4,$$+) \
|
||
|
$$|.5 \
|
||
|
$$*.6
|
||
|
|
||
|
',
|
||
|
'',
|
||
|
'bar.a
|
||
|
baz.a
|
||
|
biz.a
|
||
|
buz.a
|
||
|
foo.a.1
|
||
|
bar.a.2
|
||
|
bar.a.3
|
||
|
baz.a.3
|
||
|
biz.a.3
|
||
|
bar.a.4
|
||
|
baz.a.4
|
||
|
biz.a.4
|
||
|
buz.a.5
|
||
|
a.6
|
||
|
');
|
||
|
|
||
|
|
||
|
# Test #2: target/pattern -specific variables.
|
||
|
#
|
||
|
run_make_test('
|
||
|
.DEFAULT: ; @echo $@
|
||
|
|
||
|
foo.x foo.y: foo.%: $$(%_a) $$($$*_b)
|
||
|
|
||
|
foo.x: x_a := bar
|
||
|
|
||
|
%.x: x_b := baz
|
||
|
|
||
|
|
||
|
',
|
||
|
'',
|
||
|
'bar
|
||
|
baz
|
||
|
');
|
||
|
|
||
|
|
||
|
# Test #3: order of prerequisites.
|
||
|
#
|
||
|
run_make_test('
|
||
|
.DEFAULT: ; @echo $@
|
||
|
|
||
|
all: foo.a bar.a baz.a
|
||
|
|
||
|
# Subtest #1
|
||
|
#
|
||
|
foo.a foo.b: foo.%: foo.%.1; @:
|
||
|
|
||
|
foo.a foo.b: foo.%: foo.%.2
|
||
|
|
||
|
foo.a foo.b: foo.%: foo.%.3
|
||
|
|
||
|
|
||
|
# Subtest #2
|
||
|
#
|
||
|
bar.a bar.b: bar.%: bar.%.2
|
||
|
|
||
|
bar.a bar.b: bar.%: bar.%.1; @:
|
||
|
|
||
|
bar.a bar.b: bar.%: bar.%.3
|
||
|
|
||
|
|
||
|
# Subtest #3
|
||
|
#
|
||
|
baz.a baz.b: baz.%: baz.%.1
|
||
|
|
||
|
baz.a baz.b: baz.%: baz.%.2
|
||
|
|
||
|
baz.a baz.b: ; @:
|
||
|
|
||
|
',
|
||
|
'',
|
||
|
'foo.a.1
|
||
|
foo.a.2
|
||
|
foo.a.3
|
||
|
bar.a.1
|
||
|
bar.a.2
|
||
|
bar.a.3
|
||
|
baz.a.1
|
||
|
baz.a.2
|
||
|
');
|
||
|
|
||
|
# This tells the test driver that the perl test script executed properly.
|
||
|
1;
|