mirror of
https://github.com/mirror/make.git
synced 2025-02-04 08:40:27 +08:00
Fixed Savannah bug #16140.
This commit is contained in:
parent
94aead216e
commit
367a49591e
@ -1,3 +1,9 @@
|
||||
2006-03-22 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* implicit.c (pattern_search): Call set_file_variables only
|
||||
if we have prerequisites that need second expansion. Fixes
|
||||
Savannah bug #16140.
|
||||
|
||||
2006-03-19 Paul D. Smith <psmith@gnu.org>
|
||||
|
||||
* remake.c (update_file): Add alloca(0) to clean up alloca'd
|
||||
|
14
implicit.c
14
implicit.c
@ -442,6 +442,7 @@ pattern_search (struct file *file, int archive,
|
||||
struct file *f;
|
||||
unsigned int failed = 0;
|
||||
int check_lastslash;
|
||||
int file_variables_set = 0;
|
||||
|
||||
rule = tryrules[i];
|
||||
|
||||
@ -479,9 +480,9 @@ pattern_search (struct file *file, int archive,
|
||||
strncpy (stem_str, stem, stemlen);
|
||||
stem_str[stemlen] = '\0';
|
||||
|
||||
/* Temporary assign STEM to file->stem and set file variables. */
|
||||
/* Temporary assign STEM to file->stem (needed to set file
|
||||
variables below). */
|
||||
file->stem = stem_str;
|
||||
set_file_variables (file);
|
||||
|
||||
/* Try each dependency; see if it "exists". */
|
||||
|
||||
@ -550,6 +551,15 @@ pattern_search (struct file *file, int archive,
|
||||
depname[len] = '\0';
|
||||
}
|
||||
|
||||
/* Set file variables. Note that we cannot do it once
|
||||
at the beginning of the function because of the stem
|
||||
value. */
|
||||
if (!file_variables_set)
|
||||
{
|
||||
set_file_variables (file);
|
||||
file_variables_set = 1;
|
||||
}
|
||||
|
||||
p2 = variable_expand_for_file (depname, file);
|
||||
}
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user