33.2. Starting Abuild in an Output Directory

When abuild starts up, it decides that it is running in an output directory if all of the following conditions hold:

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-platform) and the current build item from the Abuild.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 and does not build dependencies, as if --no-deps were specified. In this mode, the clean target recursively removes all files only in the current output directory (except that it leaves the empty .abuild file behind). 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.