Formerly remake.c.~40~
authorRoland McGrath <roland@redhat.com>
Tue, 22 Dec 1992 21:22:05 +0000 (21:22 +0000)
committerRoland McGrath <roland@redhat.com>
Tue, 22 Dec 1992 21:22:05 +0000 (21:22 +0000)
remake.c

index d7716c0..b222e3e 100644 (file)
--- a/remake.c
+++ b/remake.c
@@ -250,7 +250,7 @@ update_file_1 (file, depth)
   int noexist, must_make, deps_changed;
   int dep_status = 0;
   register struct dep *d, *lastd;
-  char running = 0;
+  int running = 0;
 
   DEBUGPR ("Considering target file `%s'.\n");
 
@@ -676,6 +676,13 @@ check_dep (file, depth, this_mtime, must_make_ptr)
          if (dep_status != 0 && !keep_going_flag)
            break;
 
+         if (d->file->command_state == cs_running
+             || d->file->command_state == cs_deps_running)
+           /* Record that some of FILE's dependencies are still being made.
+              This tells the upper levels to wait on processing it until
+              the commands are finished.  */
+           file->command_state = cs_deps_running;
+
          lastd = d;
          d = d->next;
        }