Specifies the available build types (configurations) on multi-config generators (e.g. Visual Studio, Xcode, or Ninja Multi-Config). Typical values include Debug, Release, RelWithDebInfo and MinSizeRel, but custom build types can also be defined.

This variable is initialized by the first project() or enable_language() command called in a project when a new build tree is first created. If the CMAKE_CONFIGURATION_TYPES environment variable is set, its value is used. Otherwise, the default value is generator-specific.

Depending on the situation, the values in this variable may be treated case-sensitively or case-insensitively. See Build Configurations for discussion of this and other related topics.

For single-config generators, see CMAKE_BUILD_TYPE.