[CMake] Why does CMAKE_DEBUG_POSTFIX not apply to executables?

Brad King brad.king at kitware.com
Tue Jan 31 09:37:32 EST 2006


Ian.Appru at ubs.com wrote:
> However I believe the cvs version has fixed this now.

It is almost fixed in the development version, see below.

> does anyone know, why the CMAKE_DEBUG_POSTFIX is not applied to
> executables?
> I want to add a suffix (or postfix) "d" to debug-libs and -executables
> to be able to have debug _and_ release versions in one directory. In
> cmTarget::GetFullNameInternal(...) the CMAKE_DEBUG_POSTFIX is not
> applied to cmTarget::EXECUTABLEs...
> 
> Is there a legal way to do this (without modifying existing CMake-code)?

There is no way to do this currently, though you can use the OUTPUT_NAME 
target property to change the name for a specific build.

Everything needed to implement debug postfix for executables is done, 
but there is one temporary line that was intentionally added to stop 
this from working.  The fix was part of a sweeping set of changes to 
make all the name-tweaking target properties like PREFIX, OUTPUT_NAME, 
and SUFFIX work properly everywhere.  In order to get everything back to 
where it was after the sweep I had to disable the feature until a few 
problems with the tests could be fixed (because the tests were written 
assuming the debug postfix did not work for executables).

Fixing the tests and re-enabling the feature has been on my todo list.

-Brad


More information about the CMake mailing list