mirror of
https://github.com/mirror/make.git
synced 2025-01-27 04:40:33 +08:00
Fixed Savannah bug #13881.
This commit is contained in:
parent
b237dff775
commit
e437226241
@ -1,3 +1,9 @@
|
||||
2005-08-10 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* read.c (record_files): Move code that sets stem for static
|
||||
pattern rules out of the if (!two_colon) condition so it is
|
||||
also executed for two-colon rules. Fixes Savannah bug #13881.
|
||||
|
||||
2005-08-07 Paul D. Smith <psmith@gnu.org>
|
||||
|
||||
* w32/pathstuff.c (getcwd_fs): Fix warning about assignment in a
|
||||
|
24
read.c
24
read.c
@ -2106,18 +2106,6 @@ record_files (struct nameseq *filenames, char *pattern, char *pattern_percent,
|
||||
if (cmds != 0)
|
||||
f->updating = 1;
|
||||
}
|
||||
|
||||
/* If this is a static pattern rule, set the file's stem to
|
||||
the part of its name that matched the `%' in the pattern,
|
||||
so you can use $* in the commands. */
|
||||
if (pattern != 0)
|
||||
{
|
||||
static char *percent = "%";
|
||||
char *buffer = variable_expand ("");
|
||||
char *o = patsubst_expand (buffer, name, pattern, percent,
|
||||
pattern_percent+1, percent+1);
|
||||
f->stem = savestring (buffer, o - buffer);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -2143,6 +2131,18 @@ record_files (struct nameseq *filenames, char *pattern, char *pattern_percent,
|
||||
f->cmds = cmds;
|
||||
}
|
||||
|
||||
/* If this is a static pattern rule, set the file's stem to
|
||||
the part of its name that matched the `%' in the pattern,
|
||||
so you can use $* in the commands. */
|
||||
if (pattern != 0)
|
||||
{
|
||||
static char *percent = "%";
|
||||
char *buffer = variable_expand ("");
|
||||
char *o = patsubst_expand (buffer, name, pattern, percent,
|
||||
pattern_percent+1, percent+1);
|
||||
f->stem = savestring (buffer, o - buffer);
|
||||
}
|
||||
|
||||
/* Free name if not needed further. */
|
||||
if (f != 0 && name != f->name
|
||||
&& (name < f->name || name > f->name + strlen (f->name)))
|
||||
|
@ -1,3 +1,7 @@
|
||||
2005-08-10 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* scripts/features/statipattrules: Add a test for Savannah bug #13881.
|
||||
|
||||
2005-08-07 Paul D. Smith <psmith@gnu.org>
|
||||
|
||||
* scripts/features/parallelism: Add a test for a bug reported by
|
||||
|
@ -73,4 +73,15 @@ foo.x bar.x: %.x : ; @echo $@
|
||||
'foo.x
|
||||
');
|
||||
|
||||
|
||||
# TEST #6 -- bug #13881: double colon static pattern rule does not
|
||||
# substitute %.
|
||||
#
|
||||
run_make_test('
|
||||
foo.bar:: %.bar: %.baz
|
||||
foo.baz: ;@:
|
||||
',
|
||||
'',
|
||||
'');
|
||||
|
||||
1;
|
||||
|
Loading…
Reference in New Issue
Block a user