Option | Summary |
---|---|
-cache[read|write] | Use the build cache. |
-clean | Force a clean build. |
-config [path] | Explicity specify the config file to use. |
-dist | [BETA] Enable distributed compilation. |
-fixuperrorpaths | Reformat GCC/SNC/Clang error messages in Visual Studio format. |
-help | Show usage help. |
-jX | Explicitly set worker thread count. |
-nooutputbuffering | Don't buffer output written to stdout. |
-noprogress | Don't show the progress bar while building. |
-report | Output a report at build termination. |
-summary | Show a summary at the end of the build. |
-verbose | Show detailed diagnostic information for debugging. |
-version | Print version and exit. |
-vs | VisualStudio mode. |
-wrapper | [BETA] Wrapper mode for Visual Studio. |
Enable usage of the build cache. The cache options need to be configured in the build configuration file.
The cache can be enabled as read only or write only with '-cacheread' or '-cachewrite'. This can be useful for automated build systems, where you might like one machine to populate the cache for read-only use by other users.
Use of '-cache' is equivalent to '-cachread' and '-cachewrite' together.
Force a clean build. The build configuration file is re-parsed and all exsiting dependency information is discarded. A build is performed as if building for the first time with no built files present.
Explicity specify the config file to use. By default, FASTBuild looks for "fbuild.bff" in the current directory. This options allows a file to be explicitly specified instead.
Enable distributed compilation. Requires some build configuration.
Enables re-formatting of warnings, errors and notes for GCC/SNC & Clang to Visual Studio format. Additionally, relative paths are expanded to full paths. This allows these errors to be double-clickable inside Visual Studio.
Enabled automatically when '-vs' is used.
Prints command line usage information, as per the summary at the top of this page.
Overrides the number of tasks which can be built in parallel, which by default is controlled by the standard NUMBER_OF_PROCESSORS windows environment variable.
A value of 0 for X indicates that no additional threads should be spawned, and build graph processing and compilation should occur on the same thread. This can be useful for buid process debugging, especially when combined with the '-verbose' option.
Positive values can be used to exactly set the number of tasks which can be performed in parallel. This can be used to limit CPU usage on a machine that needs to perform other work while compilation is in progress. Values greater than the number of physical processors are accepted, but will almost certainly result in degraded performance.
Generally, this option should be omitted for optimal compilation performance, but it's possible that on some systems, tweaking this might yield improved performance.
Don't buffer output written to stdout.
This should be used when targetting compilation from within Visual Studio or another IDE. (or use -vs)
Suppresses the progress bar that is normally shown while compiling.
This should be used when targetting compilation from within Visual Studio or another IDE. (or use -vs)
Ouput a detailed report at the end of the build. The report is written to report.html in the current directory.
The build report contains details of:
NOTE: This option will lengthen the total build time, depending on the complexity of the build.
Displays a summary upon build completion.
Show detailed diagnostic information for debugging.
This can be used to provide more information when debugging a build configuration problem. It will display detailed information as the build configuration is parsed, as well as detailed information during the build, including full command line arguments passed to external executables.
It is usually useful to combine this flag with -j0 to serialize the build process and output (avoiding the output of different threads being mixed together).
Prints executable version information and exits. No configuration parsing or building is performed.
VisualStudio mode. Same as '-nooutputbuffering', '-noprogress' and '-fixuperrorpaths'.
Spawns FASTBuild via an intermediate sub-process to be able to cleanly terminate a build from Visual Studio.
When cancelling a build in Visual Studio, the FASTBuild process will be killed, with no opportunity to save the build database, resulting in lost compilation work. Specifying this option spawns an orpaphaned child process to do the actual work. When the parent process is terminated by Visual Studio, the child process detects this and cleanly shuts down.
Is a subsequent "wrapper mode" build is initiated before the first terminates, FASTBuild will wait for this first process to complete.