Christophe, the original patch worked as follows: if the next dependency in chain is marked as 'waiting', the rest of the dependency chain was skipped until next pass. However, this doesn't prevent make from considering other dependency chains (which, of course, may contain the same goal as well).
This information can be stored in the 'struct file' instead. But this will lead to other problems, rooted at the fact that GNU make does not know a priori which targets are going to be made. Regards, Alexey. On Friday 21 April 2006 19:49, Christophe LYON wrote: > Alexey, > > You wrote: > > > > Therefore, the patch I suggested uses another approach. If the next > > dependency has the "wait" flag set, make does not consider it and the > > dependencies further in the list until the jobs already running > > complete. > > > and then > > > For example, the following Makefile: > > <<<< > > a: x1 .WAIT x2 > > b: x2 .WAIT x3 > > <<<< > > > > when run with "make -j a b", starts the targets in the following > > order: x1 and x3 simultaneously, then, as both them are finished, x2. > > Indeed, the ordering information cannot be stored only in the > > dependency chain. > > So, if "x2" is in the "wait" state, why is make considering "x3" ? > > Christophe. > > > _______________________________________________ > Help-make mailing list > [email protected] > http://lists.gnu.org/mailman/listinfo/help-make > -- For mundane material concerns, seek the help of the one-eyed beings. -- Pkunks, SC2 _______________________________________________ Help-make mailing list [email protected] http://lists.gnu.org/mailman/listinfo/help-make
