3.2. Basic Terminology

Here are a few basic terms you'll need to get started:

build item

A build item is the most basic item that is built by abuild. It usually consists of a directory that contains files that are built. Any directory that contains an Abuild.conf file is a build item. We refer to the build item whose Abuild.conf resides in the current directory as the current build item.

build tree

A build tree is a collection of build items arranged hierarchically in the file system. All build items in a build tree may refer to each other by name. Each build item knows the locations of its children within the file system hierarchy and the names of the build items on which it depends.

build forest

A build forest is a collection of build trees. If there are multiple build trees in a forest, there may be one-way visibility relationships among the trees, which are declared similarly to dependency relationships among build items. We will return to this concept later in the documentation.


A target is some specific product to be built. The term “target” means exactly the same thing with abuild as it does with other build systems such as make or ant. In fact, with the exception of a small handful of “special” targets, abuild simply passes any targets given to it onto the backend build system for processing. The most common targets are all and clean. For a more complete discussion of targets, see Section 9.1, “Build Targets”. Be careful not to confuse target with target type, defined in Section 5.1, “Platform Structure”.

For a more complete description of build items, build trees, and build forests, please see Chapter 4, Build Items and Build Trees.