8.6. Tour of the Source Tree

8.6.1. Makefile Overview

Currently, the make system is a single Makefile that includes make snippets from other places in the tree. This setup allows you to easily depend on other make rules but also means all rules must exist in a flat namespace. Notice that the rules and variables in each .rul file use a common prefix. For example, every rule in the parted.rul file begins with "parted_", and every variable begins with "PARTED_". Another thing to keep in mind when working within this system is that all paths are relevant to the toplevel. We may change to a recursive make style build system at some point.

8.6.2. Third Party Software

The SystemImager build system builds a mini Linux distribution called BOEL that runs on clients during an autoinstall (See "Additional Installation Information" in Chapter 3 for more information on BOEL). The initrd.img file contains a subset of BOEL that is small enough to allow a fast startup of the clients After the client has booted and brought up networking, it receives the boel_binaries.tar.gz file and extracts it over the root of the filesystem, providing an additional set of commands, libraries, and kernel modules that may be needed during the installation.