summaryrefslogtreecommitdiff
path: root/remake.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>1995-04-08 18:52:42 +0000
committerRoland McGrath <roland@redhat.com>1995-04-08 18:52:42 +0000
commit07a45cd0af31ec8bc2fc7b7b4546ec5dcbb9a209 (patch)
treedb067564f944d924faf7f80b82b047c0485a9aea /remake.c
parent226a132e3131d309c1f112b01867fcd03f12ed71 (diff)
downloadgunmake-07a45cd0af31ec8bc2fc7b7b4546ec5dcbb9a209.tar.gz
(notice_finished_file): Set FILE->update_status to zero if it's -1.
Diffstat (limited to 'remake.c')
-rw-r--r--remake.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/remake.c b/remake.c
index 9a75434..6d1a450 100644
--- a/remake.c
+++ b/remake.c
@@ -593,7 +593,9 @@ update_file_1 (file, depth)
/* Set FILE's `updated' flag and re-check its mtime and the mtime's of all
files listed in its `also_make' member. Under -t, this function also
- touches FILE. */
+ touches FILE.
+
+ On return, FILE->update_status will no longer be -1 if it was. */
void
notice_finished_file (file)
@@ -668,6 +670,10 @@ notice_finished_file (file)
never be done because the target is already updated. */
(void) f_mtime (d->file, 0);
}
+ else if (file->update_status == -1)
+ /* Nothing was done for FILE, but it needed nothing done.
+ So mark it now as "succeeded". */
+ file->update_status = 0;
}
/* Check whether another file (whose mtime is THIS_MTIME)