On Mon, May 11, 2009 at 09:03:37AM -0700, Denis Scherbakov wrote:
> MACRO(MYTEST argTemp)
>   LIST(LENGTH argTemp varLen)
>   MESSAGE("Len: ${varLen}")
>   
>   SET (argTemp "${argTemp}")
>   
>   LIST(LENGTH argTemp varLen)
>   MESSAGE("Len: ${varLen}")
> ENDMACRO ()
> 
> MYTEST("something;new")
> 
> # prints: 0, 2
> 
> Am I referring variables in MACRO correctly? Why second version prints 
> correct length and the first - not?

Not entirely sure, but perhaps this is because (from the macro() docs):

"Note that the parameters to a macro and values such as ARGN are not
variables in the usual CMake sense. They are string replacements much
like the c preprocessor would do with a macro. If you want true CMake
variables you should look at the function command."

tyler
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to