| Class DependencyGraph |
make is organized around a dependency graph. The nodes are labeled by targets.
| Details |
| Constructor |
for version 0, just break on spaces
| Methods: |
add_dependency(source, target)
if \targets[target] then {
Target already exists. Under some circumstances this ought to
be an error/fail/warning, but by default we replace silently.
write(&errout, "replacing ", image(target))
}
add_node(target, dependencies, buildrules)
Add a new target to the graph. Example call:
ufiles := ""
every targ := !targets do {
if targ.target[-2:0]==".u" then ufiles ||:= targ[target]
}
dg.add_node("clean", [], ["rm "|| ufiles ||" uniclass.*"])
first, check for matching extensions instantiate the generic rule last, try a global
produce a dependency graph node corresponding to a named file
| Fields: |