Don't forget to pretend that `make -n -jN' makes the targets that it

says it pretends to make.

This bug was apparently harmless except for normal cases involving
.ORDER statements when it made debugging of -jN using -n very
confusing.  E.g., for:

.ORDER: beforedepend .depend
depend: beforedepend .depend

where beforedepend depends on something so that it is not initially
up to date, `make [-n] -j2 depend' causes `make' to wait for itself
to make beforedepend.  This works fine without -n.  The job to make
beforedepend has normally been started, and beforedepend is marked
as made when the job completes.  However, with -n, the pseudo-job
for making beforedepend has normally completed, and in any case
there was no chance of beforedepend being marked as made.  `make'
actually exited almost immediately with status 0 instead of waiting
forever.
This commit is contained in:
bde 1998-06-04 05:48:57 +00:00
parent 350f093ed2
commit 8c0f65d342

View File

@ -35,7 +35,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: job.c,v 1.7 1997/02/22 19:27:11 peter Exp $
* $Id: job.c,v 1.8 1998/04/28 05:08:10 imp Exp $
*/
#ifndef lint
@ -1851,6 +1851,7 @@ JobStart(gn, flags, previous)
JobSaveCommand,
(ClientData)job->node);
}
job->node->made = MADE;
Make_Update(job->node);
}
free((Address)job);