Hi,

I set my project's CMAKE_CONFIGURATION_TYPES variable with some custom configurations (e.g. GuiDebug, GuiRelease, ConsoleDebug, ConsoleRelease). Each of them have their own compilation flags, which is great, especially for visual studio users that don't want to bother with a config.h.in file but prefer a nice, expressive configuration list. This works just fine.

Unfortunately, there is a showstopper : when it comes to linking, tell me if I am wrong, there is no way to express which configuration type should link against which library. In particular, all my configuration types end up linking against the release version of my 3rd party libraries.

1st possible solution :
Is there a way to specify libraries to link with, using a XX_<CONFIG>-style variable ?

2nd possible solution :
Is there a way to specify, for each configuration type I declare in CMAKE_CONFIGURATION_TYPES, if it is a "debug" or "optimized" configuration ? A quick look at cmake sources makes me think that the relation between a configuration type and its debug/optimized flavour is hardcoded so that only config types named Debug (or deBUg or DEbuG) are considered to be debug-flavoured configs. Which is embarrassing because GuiDebug and ConsoleDebug would love to link against Qt debug libraries for instance.

I would prefer to achieve the 2nd solution because it would be compatible with existing cmake modules.

Kind regards
Cyril
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to