NetBSD/usr.bin/make
dsl b5e3384b9c A rather large rototil in the way the parallel make code schedules jobs.
This gives a considerable speedup in the processing of .WAIT and .ORDER.
Both .WAIT and .ORDER stop both the commands of the node, and its dependant
nodes being built until the LH nodes are complete.
.WAIT only applies to the dependency line on which it appears, whereas
.ORDER applies globally between the two nodes.
In both cases dependant nodes can be built because other targets need them.
make now processes the target list left to right, scheduling child nodes
as they are needed to make other nodes (instead of attempting to generate
a bottom-up dependency graph at the start).  This means that 'make -j1'
will tend to build in the same order as a non-parallel make.
Note that:
    all: x y
    x: a .WAIT b
    y: b .WAIT a
does not generate a dependency loop.
But
    x: y
    .ORDER y x
does (unless something elswhere causes 'y' to be built).
2006-11-17 22:07:39 +00:00
..
lst.lib Return the non-zero value that caused the Lst_ForEach[From] call to 2006-11-11 21:23:36 +00:00
PSD.doc Fit ASCII output onto an 80-column terminal. From FreeBSD. 2004-06-27 19:12:33 +00:00
unit-tests Remove the modterm case from moderrs, the syntax errors 2006-05-11 18:48:33 +00:00
arch.c Since 'ClientData' is 'void *', nuke almost all the (ClientData) casts. 2006-10-27 21:00:18 +00:00
buf.c From Max Okumoto: 2005-08-08 16:42:54 +00:00
buf.h
compat.c A rather large rototil in the way the parallel make code schedules jobs. 2006-11-17 22:07:39 +00:00
cond.c Since 'ClientData' is 'void *', nuke almost all the (ClientData) casts. 2006-10-27 21:00:18 +00:00
config.h Allow make(1) to be built with something other than "sh" as the 2006-10-09 20:44:35 +00:00
dir.c Since 'ClientData' is 'void *', nuke almost all the (ClientData) casts. 2006-10-27 21:00:18 +00:00
dir.h
for.c Since 'ClientData' is 'void *', nuke almost all the (ClientData) casts. 2006-10-27 21:00:18 +00:00
hash.c remove unnecessary casts to void * functions (Max Okumoto) 2005-08-04 00:20:12 +00:00
hash.h
job.c Since 'ClientData' is 'void *', nuke almost all the (ClientData) casts. 2006-10-27 21:00:18 +00:00
job.h There is no need to resize the pollfd array, it can only ever have 2+maxJobs 2006-10-11 07:01:44 +00:00
lst.h Return the non-zero value that caused the Lst_ForEach[From] call to 2006-11-11 21:23:36 +00:00
main.c A rather large rototil in the way the parallel make code schedules jobs. 2006-11-17 22:07:39 +00:00
make.1 Fixed the bug reported in PR 33866, which is that the :Q operator does not 2006-06-29 22:01:17 +00:00
make.c A rather large rototil in the way the parallel make code schedules jobs. 2006-11-17 22:07:39 +00:00
make.h A rather large rototil in the way the parallel make code schedules jobs. 2006-11-17 22:07:39 +00:00
Makefile Use of libutil to provide emalloc et al, should be predicated on 2006-11-01 23:48:20 +00:00
Makefile.boot
nonints.h A rather large rototil in the way the parallel make code schedules jobs. 2006-11-17 22:07:39 +00:00
parse.c A rather large rototil in the way the parallel make code schedules jobs. 2006-11-17 22:07:39 +00:00
pathnames.h revert previous for now 2005-06-24 04:33:25 +00:00
sprite.h More KNF cleanups from Max Okumoto 2005-08-05 00:53:18 +00:00
str.c If a word is "" eat the last quote since we ate the first. 2006-08-11 19:11:00 +00:00
suff.c A rather large rototil in the way the parallel make code schedules jobs. 2006-11-17 22:07:39 +00:00
targ.c A rather large rototil in the way the parallel make code schedules jobs. 2006-11-17 22:07:39 +00:00
trace.c Expunge last references to jobTokensFree 2006-01-04 21:35:44 +00:00
trace.h Fix enum for better portability 2006-02-18 01:28:48 +00:00
util.c From Max Okumoto: 2005-08-08 16:42:54 +00:00
var.c Since 'ClientData' is 'void *', nuke almost all the (ClientData) casts. 2006-10-27 21:00:18 +00:00