Deriving class dependencies

clearmake stores or records the derived class dependencies.

clearmake stores dependencies it derives in .class.dep files. Each .class target which produces .class DOs has a .class.dep file. For example, for a target named A.class, clearmake creates an A.class.dep file. clearmake reads .class.dep files when evaluating a target to augment its makefile-declared dependencies.

clearmake derives class dependencies as follows:

  • clearmake records only direct dependencies in .class.dep files.

    If class A uses B uses C, then clearmake records in A.class.dep that A.class depends on B.class, and in B.class.dep that B.class depends on C.class. The transitive dependency of A.class on C.class is implicit in that pair of dependencies and is not explicitly stated in any .class.dep file.