-
Notifications
You must be signed in to change notification settings - Fork 0
FastBuild: Global Settings
Currently you can replace, extend or update the following global FastBuild variables used by IBT.
^BuildPipelines = PipelineDefinition[]^ConfigurationList = ConfigDefinition[]^GlobalRules = GlobalRuleDefinition[]^SolutionItems = String[]
Pipelines define a list of steps and tasks to do for each target that was defined in the workspace. Pipelines can be defined for totally separate tasks and subset of sources.
For example, you can have the following two pipelines:
- C++ pipeline to build executables.
- ShaderCompiler pipeline to compile shader sources (for ex.: .glsl) to SPIR-V.
Both can co-exist and even be run together or separately. There are currently two default pipelines available to be used, modified or extended uppon.
.Pipeline_Windows_x64.Pipeline_Linux_x64
More on this can be found under build pipelines.
The configuration list is used to combine arbitrary project configurations like 'Debug', 'Develop', 'Profile' or 'Debug_Static', etc. with a specific Conan profile.
This allows us to determine which libraries and dependencies should be linked in which configuration. This is especially helpful if a project defines more than the default two 'Debug' and 'Release' configurations.
Note: Currently there might be issues when defining configurations specialized for a specific compiler. For example 'Debug_Clang' might still be defined for a MSVC pipeline, even though it will never properly be linked. This will be addressed in the next minor version.
IBT allows you to change various compiler options using a list of rules that will be applied if a matching build stage and target is calculated. With this you can easily setup your compiler options and setup everything to your liking.
The only thing you need to know is your compilers command line, as IBT does not provide abstraction over most compiler options.
More on this can be found under build rules.