[CMake] Source List Compilation Depending on Configuration
Jörg Kreuzberger
j.kreuzberger at procitec.de
Mon Jul 21 10:01:26 EDT 2014
ok, then it worked.
i got no warning on the policies, maybe i would have then detected it further. Can i "enable" them "globally"?
-----Ursprüngliche Nachricht-----
Von: Nils Gladitz <nilsgladitz at gmail.com>
Gesendet: Mo 21.07.2014 15:36
Betreff: Re: AW: [CMake] Source List Compilation Depending on Configuration
An: Jörg Kreuzberger <j.kreuzberger at procitec.de>;
CC: cmake at cmake.org;
> On 07/21/2014 03:19 PM, Jörg Kreuzberger wrote:
> > 1) i reset it with
> > set( CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS_INIT} )
> > set( CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE_INIT} )
> > set( CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG_INIT} )
> >
> > and then append my own custom compiler definitions. "-DNDEBUG" appears in
> flags.make, only in CXX_FLAGS, but not in CXX_DEFINES!
> >
> > and this is the issue i had with it: as long it appears only in CXX_FLAGS, it
> works for the code compilation but it does not work for qt4_wrapp_cpp (missing
> defines for moc).
> >
> >
> > 2) the point i want to change global compiler properties is in my toplevel
> CMakeLists.txt,
> > there i do
> > include( cmake/GlobalCompilerSettings.cmake)
> >
> > 3) following your example, it does not work for COMPILE_DEFINITIONS_RELEASE,
> but does work for COMPILE_DEFINITIONS.
> > (works means it appears in CXX_DEFINES)
> > using release cmake 3.0.0 version. Platform is ubuntu linux (makefile
> generator)
>
> I forgot that COMPILE_DEFINITIONS_<CONFIG> were deprecated.
> When you require 3.0 the property is ignored (Policy CMP0043).
>
> $<$<CONFIG:Release>:NDEBUG> in COMPILE_DEFINITIONS should work.
>
> Nils
>
>
>
Mannheim HRB 504702
Geschäftsführer: Dipl.-Ing. (FH) Michael Brenk (Vorsitzender), Dipl.-Ing. (FH) Dipl.-Inf. (FH) Jens Heyen
This e-mail may contain confidential and/or legally protected information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and delete this e-mail. Any unauthorized copying, disclosure or distribution of the material in this email is strictly forbidden.
Thank you!
More information about the CMake
mailing list