[CMake] What changes to the cache file, if any, will trigger a rerun?of CMake?

Tyler Roscoe tyler at cryptio.net
Wed Sep 23 19:20:58 EDT 2009


On Wed, Sep 23, 2009 at 10:28:04PM +0200, Marcel Loose wrote:
> Well, I created a macro (inspired by the KDE macro in kdelibs, 
> "macro_optional_add_subdirectory") that will only do add_subdirectory() if the 
> directory actually exists (useful to do partial builds of large projects). 
> Inside the conditional part of that macro is the option() command to define a 
> new build option. So, in that case, a new option is added to the cache 
> *during* a CMake run. I wasn't sure if these changes would always trigger a 
> re-run of CMake, cause my (few) experiments were a bit inconclusive.
> 
> But, if each change to CMakeCache.txt triggers a CMake re-run, then I should 
> be safe.

As with any advice you get from me, you should double-check it before
you use it :). I'm not guaranteeing that changing the cache during a
build will trigger a CMake rebuild. Note also that doing a multi-thread
compile (make -j) may cause your CMake rebuild to happen at inconsistent
times.

tyler


More information about the CMake mailing list