On Sunday, September 18, 2011 02:15:54 PM David Demelier wrote: > Hello, > > I noticed that option() values are not checked when the option() command > is under a add_subdirectory() target. > > Example: > > > -- a's CMakeLists.txt -- > project(a C) > > set(BUILD_DEMOS OFF) > add_subdirectory(extern/b) > > -- extern/b's CMakeLists.txt -- > project(b C) > > option(BUILD_DEMOS "Enable the demos build" ON) > > if (BUILD_DEMOS) > ... > endif () > > Then when building the project a it will also enter the if BUILD_DEMOS > conditional. > > What can I do now? :)
The values of options are stored in the cache. In your toplevel file, OFF is put in the cache. Then, in the subdir, the variable of BUILD_DEMOS is already in the cache, so it is not overridden with ON, but keeps the value which is in the cache. Does that help ? Alex _______________________________________________ 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
