[CMake] Re: function and raise_scope commands (+ unset bug)

Alexander Neundorf a.neundorf-work at gmx.net
Sat Feb 16 15:48:57 EST 2008


On Saturday 16 February 2008, Sebastien BARRE wrote:
Hi Sebastian, 

...
> Hey guys,
...
> Obviously foo is not set, since it is now set in SET_VAR2 scope. Bummer.
> So now I have to do things like this:
>
> FUNCTION(SET_VAR2 varname)
>    SET_VAR1(varname_proxy)
>    SET(${varname} ${varname_proxy} PARENT_SCOPE)
> ENDFUNCTION(SET_VAR2)
>
> Which I guess I could live with, except that it gets *old* as the
> number of parameters grows, and it kinda goes against my goal of
> sticking with small "understandable" macros...

Would 
RAISE_SCOPE(var1 var2 ... varN)
be better ?
Why was the syntax changed from that to 
RAISE_SCOPE(varname value) ?
(which was basically a set() and that's why converted to 
set(... PARENT_SCOPE)  )

...
> I know about PROPERTIES, but I'm still not convinced, since they
> don't behave like variables. For a simple thing like working on a

Yes, I don't think they would be appropriate here.

Any opinion whether RAISE_SCOPE/PARENT_SCOPE should propagate to the parent 
directory if it's used outside a function ?

Alex


More information about the CMake mailing list