[CMake] Re: [cmake 2.5 CVS] CMAKE_${LANG}_FLAGS is initialized
with space
Brandon Van Every
bvanevery at gmail.com
Fri Dec 14 14:50:02 EST 2007
On Dec 14, 2007 7:43 AM, Rodolfo Lima <rodolfo at rodsoft.org> wrote:
>
> I think there is... another proof:
>
> if(${CMAKE_CXX_FLAGS} STREQUAL " ")
> MESSAGE("equal!")
> else(${CMAKE_CXX_FLAGS} STREQUAL " ")
> MESSAGE("not equal!")
> endif(${CMAKE_CXX_FLAGS} STREQUAL " ")
>
> This returns "equal!" in my system...
If CMAKE_CXX_FLAGS is actually null, then your script should terminate
with an error. Correct syntax is either plain CMAKE_CXX_FLAGS or
"${CMAKE_CXX_FLAGS}". What you've written would work only if the
variable evaluates to a single variable name, or a single string
constant.
A cmake -P script has no cache. On my Windows Vista machine, your
code gives me:
C:\devel\moz>cmake -P flags.cmake
CMake Error: Error in cmake code at
C:/devel/moz/flags.cmake:1:
if had incorrect arguments: ${CMAKE_CXX_FLAGS} STREQUAL " " (Unknown arguments s
pecified).
Called from: [1] C:/devel/moz/flags.cmake
Cheers,
Brandon Van Every
More information about the CMake
mailing list