mirror of
https://git.savannah.gnu.org/git/make.git
synced 2024-12-27 06:27:51 +00:00
Fixed Savannah bug #12202.
This commit is contained in:
parent
28078b517a
commit
2860d3b247
4 changed files with 41 additions and 3 deletions
|
@ -1,3 +1,8 @@
|
|||
2005-03-04 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* imlicit.c (pattern_search): Mark files for which an implicit
|
||||
rule has been found as targets. Fixes Savannah bug #12202.
|
||||
|
||||
2005-03-04 Paul D. Smith <psmith@gnu.org>
|
||||
|
||||
* AUTHORS: Update.
|
||||
|
|
|
@ -803,6 +803,7 @@ pattern_search (struct file *file, int archive,
|
|||
f->cmds = imf->cmds;
|
||||
f->stem = imf->stem;
|
||||
f->also_make = imf->also_make;
|
||||
f->is_target = 1;
|
||||
imf = lookup_file (d->intermediate_pattern);
|
||||
if (imf != 0 && imf->precious)
|
||||
f->precious = 1;
|
||||
|
@ -881,6 +882,7 @@ pattern_search (struct file *file, int archive,
|
|||
}
|
||||
|
||||
file->cmds = rule->cmds;
|
||||
file->is_target = 1;
|
||||
|
||||
/* If this rule builds other targets, too, put the others into FILE's
|
||||
`also_make' member. */
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
2005-03-04 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* features/patternrules: Add a test fo Savannah bug #12202.
|
||||
|
||||
2005-03-03 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* scripts/features/se_implicit: Add a test for stem
|
||||
|
|
|
@ -4,8 +4,10 @@ $description = "Test pattern rules.";
|
|||
|
||||
$details = "";
|
||||
|
||||
# Make sure that multiple patterns where the same target can be built are
|
||||
# searched even if the first one fails to match properly.
|
||||
# TEST #1: Make sure that multiple patterns where the same target
|
||||
# can be built are searched even if the first one fails
|
||||
# to match properly.
|
||||
#
|
||||
|
||||
run_make_test('
|
||||
.PHONY: all
|
||||
|
@ -33,7 +35,32 @@ a: void
|
|||
@true
|
||||
|
||||
3.implicit-phony:
|
||||
', '', '');
|
||||
',
|
||||
'',
|
||||
'');
|
||||
|
||||
# TEST #2: make sure files that are built via implicit rules are marked
|
||||
# as targets (Savannah bug #12202).
|
||||
#
|
||||
run_make_test('
|
||||
TARGETS := foo foo.out
|
||||
|
||||
.PHONY: all foo.in
|
||||
|
||||
all: $(TARGETS)
|
||||
|
||||
%: %.in
|
||||
@echo $@
|
||||
|
||||
%.out: %
|
||||
@echo $@
|
||||
|
||||
foo.in: ; @:
|
||||
|
||||
',
|
||||
'',
|
||||
'foo
|
||||
foo.out');
|
||||
|
||||
|
||||
# This tells the test driver that the perl test script executed properly.
|
||||
|
|
Loading…
Reference in a new issue