On 8/10/07, Bill Hoffman <[EMAIL PROTECTED]> wrote: > Brandon Van Every wrote: > > > > > > It might be reasonable, however, to show OPTIONS resolved at the > > current scope. And to note whether conditional options exist, i.e. > > "Warning: conditional options detected. You are advised to run > > (CMakeSetup|CCMake) and resolve them iteravely." Or the opposite: > > "All options have been resolved." > > > There is no way to do this, because the code inside an if(FALSE) is > never run, so there > would be no way to know if an option command was being skipped.
Well, it's not strictly necessary to do the detection. There could be static Caveat Emptor text saying, "Warning, additional options may be available, you are advised to run CMake iteravely" or whatever the proper wordsmithing would be. You could take a count of the number of OPTION commands you've actually run, and compare that to the number of OPTION commands in all included files. If an OPTION is inside a loop or macro, you could automatically issue the warning that there *may* be more options available. I think realistically, a lot of CMakeScript.txt will have "flat" OPTION specifications and a counting compare will work. Proving that all options at this scope have been resolved may be more difficult, or non-doable in some cases. But in some cases it is doable. >From the Autoconf retraining standpoint, "Some OPTIONs detected in loops, you'll need to evaluate iteravely" is good geekery. It teaches the Autoconf user that OPTIONs are not static. On the other hand, static text saying "there may be conditional OPTIONs, there may be dynamic OPTIONs" accomplishes the training objective with no real work. Cheers, Brandon Van Every _______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake