[CMake] IF(string) is false. Why?

Brandon Van Every bvanevery at gmail.com
Tue Oct 30 20:28:24 EDT 2007


On 10/30/07, Brandon Van Every <bvanevery at gmail.com> wrote:
> On 10/30/07, David Cole <david.cole at kitware.com> wrote:
> > Because "WHATEVER" is not empty...
>
> Then it should be true.

I say the following should set the result to "valid".

> MACRO(NOQUOTES_ALONE literal_string result)
>   IF(${literal_string})
>     SET(result "valid")
>   ELSE(${literal_string})
>     MESSAGE(SEND_ERROR "I don't like the input!")
>   ENDIF(${literal_string})
> ENDMACRO(NOQUOTES_ALONE)
> NOQUOTES_ALONE("WHATEVER" out)

> MACRO(NOQUOTES_STREQUAL literal_string result)
>   IF(${literal_string} STREQUAL "")
>     SET(result "valid")
>   ELSE(${literal_string} STREQUAL "")
>     MESSAGE(SEND_ERROR "I don't like the input!")
>   ENDIF(${literal_string} STREQUAL "")
> ENDMACRO(NOQUOTES_STREQUAL)
> NOQUOTES_STREQUAL("WHATEVER" out)
>
> MACRO(QUOTES_STREQUAL literal_string result)
>   IF("${literal_string}" STREQUAL "")
>     SET(result "valid")
>   ELSE("${literal_string}" STREQUAL "")
>     MESSAGE(SEND_ERROR "I don't like the input!")
>   ENDIF("${literal_string}" STREQUAL "")
> ENDMACRO(QUOTES_STREQUAL)
> QUOTES_STREQUAL("WHATEVER" out)

Bah.  Inverted my conditionals on these 2.  Ignore these.


Cheers,
Brandon Van Every


More information about the CMake mailing list