Modify Settings per Build using a Configuration File

You can override some Incredibuild settings for individual builds. This is done by creating sets of Incredibuild settings inside a configuration file. You can then reference these files when running builds.

You can create and use multiple configuration files to support different use cases.

This is currently supported for the Visual Studio integration, and when running builds from the command line.

Available Settings

Parameter Description Accepted Value
/freecompletedtasks Use with big projects to improve memory performance on|off
/maxconcurrentpdbs Incredibuild limits the number of files belonging to the same project that can be built concurrently. This results in a smaller number of PDB files and a speedup in link times. More details. Integer

/maxfilesyncthreads

The max number of threads that will be used for a single file transfer between and Initiator and a Helper.

Integer

/maxparallellinktargets Max number of CPU Cores for parallel linking Integer
/forceenglishmsbuildoutput* Displays information in the Build Monitor's output tab in English. on|off
/usemsbuild* Forces the usage of a version of MSBuild (32 or 64 bit). 32|64
/avoidlocal Overrides the Avoid task execution on local machine when possible option in the Agent Settings. on|off
/maxcpus

Overrides global maximum CPUs/Cores in build setting.

Integer

/pemode*

Overrides and Agent's predictive execution setting.

0|1|2

0=disabled

1=build

2=rebuild

/buildcacheremoteserver

Defines the server to use for remote/shared Build Cache.

IP:port

/buildcachelocal

Enable Build Cache to use local cache.

on|off

*These parameters are only supported when using Incredibuild's buildconsole command to run your builds.

Creating a Configuration File

The configuration files differ slightly depending on what Incredibuild command you use to run your builds (buildconsole or ibconsole). We recommend starting with our sample file: C:\Program Files (x86)\Incredibuild\ConfigFiles\Sample.ib_config.rsp.

Note: This sample assumes you are using buildconsole. If you are using ibconsole, remove /usemsbuild, /pemode, /predictedexecution32bitfallback, and /ForceEnglishMSBuildOutput.

Copy
/freecompletedtasks=off
/maxconcurrentpdbs=12
/multithreadedfilesyncthreads=8
/maxparallellinktargets=1
/predictedexecution32bitfallback=off
/ForceEnglishMSBuildOutput=off
/usemsbuild=64
/avoidlocal=off
/maxcpus=0
/pemode=2
/buildcacheremoteserver=127.0.0.1:50222  
/buildcachelocal=on

All parameters are included in the sample file for your convenience, but you do not need to include every parameter in the config file. Edit the file as desired based on the table above.

Using the Configuration File During a Build

The configuration files are used automatically if they are named correctly and copied to the right location:

When running builds in the command line: 

  • You can put the config file in the same location as the project or solution file.

  • If you place the file in the same location as the solution file, it will be used by all projects in that solution.

  • Rename the config file to have the same name as the project or solution (with the .ib_config.rsp extension)

When running builds in the Visual Studio IDE:

  • Put the config file in the same location as the solution file. It will be used by all projects in that solution.

  • Rename the config file to have the same name as the solution (with the .ib_config.rsp extension)