On Thursday, December 10, 2015 15:26:54 Brad King wrote: > On 12/10/2015 03:20 PM, Alexander Neundorf wrote: > >> set(var ON) > >> option(var "description" OFF) > >> message("var: ${var}") > > > > I.e. on the first run it would be OFF (since that's the default value > > of the option), and all later runs it would have the value which is in the > > cache. > This is calling for the opposite change than Ben's proposal. Ben > suggests never unsetting the local value to expose the cached value. > Alex is suggesting always doing so, even if the cache option is > not created by the command. > > Alternatively the option() or set(CACHE) commands could also set > a local variable to the same value as the cache entry. > > This is pretty fundamental behavior so if we are going to mess with > it through a policy we better get it right.
Yes. :-) My motivation: if the option() would just set/get the cache variable, and leave the local variable untouched, it would be a NOOP in the example above, and this is not obvious from seeing that code. Alex
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers