On Nov 2, 2007 2:26 PM, Ken Martin <[EMAIL PROTECTED]> wrote: > > the macro command is like a cpp macro so scoping does not make a lot of > sense for it. What would/could make sense is a function command that creates > a function. (think of the difference in a macro versus a function in c, > macros have no inherent scope they are just string replacements, functions > do have scope built in). With a function command we could probably figure > out some way to create variables that are scoped to the function only. Most > of the places we are using macros really could/should be functions.
Yes please! 95% of MACROs I've written are really trying to be functions. > My main > question would be if we had a function, how would you want variables > handled. > > 1) all set commands create "local" variables to the function (a mess for > functions that do an include of other cmake code) > 2) a special set command or signature that creates a local variable scoped > to the current function SET and SETLOCAL is one possibility. I could live with it. SET and SETGLOBAL is another possibility. It would require breaking backwards compatibility. > 3) a mode to switch the behavior of set (yuck) No. For stability of developing a build system, that's completely ridiculous. Cheers, Brandon Van Every _______________________________________________ CMake mailing list [email protected] http://www.cmake.org/mailman/listinfo/cmake
