When abuild starts up, it decides that it is running in an output directory if all of the following conditions hold:
The current directory does not contain an
Abuild.conf file
The parent directory does contain an
Abuild.conf file
The current directory name starts with abuild-
The current directory contains a file called
.abuild
If abuild is invoked in an output directory, it determines the
current platform from the name of the output directory (which is
always called
abuild-)
and the current build item from the
platformAbuild.conf in the parent directory. Then
it will run a build only for that specific platform on that
specific build item. In this mode, abuild explicitly prohibits
specification of a build set or clean set. It also, as a special
case, passes the clean target to the backend.
The main use for this feature would be in testing rules, but it
could also be useful in helping to track down some hard-to-trace
build problem that applies to only one of several platforms that
are being built for a specific build item. Most users will never
use this functionality.