[CMake] CMAKE_CONFIGURATION_TYPES

Jesper Eskilson jesper at eskilson.se
Mon Apr 7 07:35:26 EDT 2008


I've found a weird behavior which appears when trying to redefine the 
CMAKE_CONFIGURATION_TYPES variable under the following conditions:

- The cmake.exe frontend is used
- A Visual Studio generator is used
- CMake 2.6 RC5, probably previous versions as well

Given the following CMakeLists.txt (with a trivial foo.c):

> project(foo)
> set(CMAKE_CONFIGURATION_TYPES "Debug;Release;FooBar" CACHE STRING "" FORCE)
> add_executable(foo foo.c)

I would have expected it to generate a solution with a configuration 
named "FooBar", but it doesn't. However, the configuration appears when 
I rerun cmake. The difference is that the second time the value is in 
the cache when cmake starts.

Running cmake like this also works:

   cmake -DCMAKE_CONFIGURATION_TYPES=Debug;Release;FooBar

I would characterize this as a bug, since it isn't possible to run 
cmake.exe once and have the CMakeLists.txt set the variable properly.

--
/Jesper




More information about the CMake mailing list