mirror of
https://salsa.debian.org/srivasta/make-dfsg.git
synced 2024-12-29 00:05:59 +00:00
Implemented dontcare flag inheritance when rebuilding makefiles.
This commit is contained in:
parent
341312cc57
commit
fb6410f435
4 changed files with 52 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
2004-09-28 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* remake.c (update_file_1): When rebuilding makefiles inherit
|
||||
dontcare flag from a target that triggered update.
|
||||
|
||||
2004-09-27 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* variable.c (initialize_file_variables): Mark pattern-specific
|
||||
|
|
31
remake.c
31
remake.c
|
@ -468,6 +468,7 @@ update_file_1 (struct file *file, unsigned int depth)
|
|||
{
|
||||
FILE_TIMESTAMP mtime;
|
||||
int maybe_make;
|
||||
int dontcare = 0;
|
||||
|
||||
check_renamed (d->file);
|
||||
|
||||
|
@ -491,7 +492,21 @@ update_file_1 (struct file *file, unsigned int depth)
|
|||
|
||||
d->file->parent = file;
|
||||
maybe_make = must_make;
|
||||
|
||||
/* Inherit dontcare flag from our parent. */
|
||||
if (rebuilding_makefiles)
|
||||
{
|
||||
dontcare = d->file->dontcare;
|
||||
d->file->dontcare = file->dontcare;
|
||||
}
|
||||
|
||||
|
||||
dep_status |= check_dep (d->file, depth, this_mtime, &maybe_make);
|
||||
|
||||
/* Restore original dontcare flag. */
|
||||
if (rebuilding_makefiles)
|
||||
d->file->dontcare = dontcare;
|
||||
|
||||
if (! d->ignore_mtime)
|
||||
must_make = maybe_make;
|
||||
|
||||
|
@ -528,10 +543,26 @@ update_file_1 (struct file *file, unsigned int depth)
|
|||
for (d = file->deps; d != 0; d = d->next)
|
||||
if (d->file->intermediate)
|
||||
{
|
||||
int dontcare = 0;
|
||||
|
||||
FILE_TIMESTAMP mtime = file_mtime (d->file);
|
||||
check_renamed (d->file);
|
||||
d->file->parent = file;
|
||||
|
||||
/* Inherit dontcare flag from our parent. */
|
||||
if (rebuilding_makefiles)
|
||||
{
|
||||
dontcare = d->file->dontcare;
|
||||
d->file->dontcare = file->dontcare;
|
||||
}
|
||||
|
||||
|
||||
dep_status |= update_file (d->file, depth);
|
||||
|
||||
/* Restore original dontcare flag. */
|
||||
if (rebuilding_makefiles)
|
||||
d->file->dontcare = dontcare;
|
||||
|
||||
check_renamed (d->file);
|
||||
|
||||
{
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2004-09-28 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* scripts/features/include: Test dontcare flag inheritance
|
||||
when rebuilding makefiles.
|
||||
|
||||
2004-09-27 Boris Kolpackov <boris@kolpackov.net>
|
||||
|
||||
* scripts/features/patspecific_vars: Test exported variables.
|
||||
|
|
|
@ -16,7 +16,7 @@ open(MAKEFILE,"> $makefile");
|
|||
|
||||
print MAKEFILE <<EOF;
|
||||
\#Extra space at the end of the following file name
|
||||
include $makefile2
|
||||
include $makefile2
|
||||
all: ; \@echo There should be no errors for this makefile.
|
||||
|
||||
-include nonexistent.mk
|
||||
|
@ -78,5 +78,15 @@ hello: ; @echo hello
|
|||
"hello\n"
|
||||
);
|
||||
|
||||
# Test inheritance of dontcare flag when rebuilding makefiles.
|
||||
#
|
||||
run_make_test('
|
||||
.PHONY: all
|
||||
all: ; @:
|
||||
|
||||
-include foo
|
||||
|
||||
foo: bar; @:
|
||||
', '', '');
|
||||
|
||||
1;
|
||||
|
|
Loading…
Reference in a new issue