[CMake] Toggling a Preprocessor macro for targets within a single project
Michael Jackson
mike.jackson at bluequartz.net
Fri Feb 20 08:03:48 EST 2009
On Feb 20, 2009, at 4:59 AM, Eric Noulard wrote:
> 2009/2/20 Christian Ehrlicher <Ch.Ehrlicher at gmx.de>:
>>> Von: Andreas Pokorny
>>> Hello,
>>> Wow that was fast. Thanks a lot.
>
> Obviously I was too fast reading the doc :-)
>
>>>> [...]
>>>>
>>>> SET_TARGET_PROPERTIES(PlatformLib PROPERTIES
>>>> DEFINE_SYMBOL
>>>> USE_TRACER)
>>>>
>>>> Then you shouldn't have to ADD_DEFINITIONS and REMOVE_DEFINITIONS?
>>>
>>>
>>> I do not understand why.. but DEFINE_SYMBOL did not work, but
>>> COMPILE_FLAGS -DUSE_TRACER
>>> did. So SET_TARGET_PROPERTIES is the sledgehammer for getting it
>>> done :)
>>>
>> DEFINE_SYMBOL only works for shared libraries. see cmake
>> documentation: "DEFINE_SYMBOL sets the name of the preprocessor
>> symbol defined when compiling sources in a shared library."
>
> Thank you Christian
> ...for reading the doc more carefully than I do :-)
>
>
> --
> Erk
>
and I _think_ that DEFINE_SYMBOL only will work on windows as it is
there to facilitate the dllImport/dllexport functionality used by
windows for exporting/importing symbols from shared libraries.
I may be wrong on that as I am going on memory at this point.
Mike
More information about the CMake
mailing list