By creating a hierarchical view of all your programs, libraries, source files, headers, and other project files, you can define the file dependencies of your software project.
As you define your file dependencies, you need to add a build file (*.bld) for every program in your project. Also, add a build file for libraries that you want to rebuild with your project. In addition, you may optionally add subprojects to group source files into modules. These build files:
When defining your project hierarchy, be aware that files inherit compiler options from parent build files. For example, suppose a program, masterfoo.bld, contains a subproject, subfoo.bld. In this scenario, subfoo.bld is the child that inherits options from the parent, masterfoo.bld. Now suppose that subfoo.bld contains a source file, foo.c. In this scenario, foo.c inherits options from masterfoo.bld AND subfoo.bld.