FEATURES AND ADVANTAGES 1. Everything is done with SHA1 signatures. No dates are used anywhere. 2. bld is REALLY simple to use. There are no arguments, no options(except -h), no environment variables and no rc files. The entire bld is controlled from the Bld(and Bld.gv file) file. Only a minimal knowledge of perl is needed - variable definitions and simple regular expressions. 3. bld is not hierarchical. A single Bld file controls the construction of a single target(a target is an executable or library(static or shared)). Complex multi-target projects use one Bld.gv(global values) file and many Bld files - one to a target. 4. Each source file will have three signatures associated with it - one for the source file, one for the corresponding object file and one for the cmds use to rebuild the source. A change in any of these will result in a rebuild. 5. If any files in the bld have the same signature this is warned about e.g. two header or source files of the same or different names. 6. Optionally, the signatures of dynamic libraries may be tracked. If a library signature changes the bld may warn or stop the rebuild. If dynamic libraries are added or deleted from the bld this can ignore/warn/fatal. 7. A change in the target signature will result in a rebuild. 8. Complex multi-target projects are built with a standard directory setup and a standard set of scripts - Directories: