diff options
author | Brad King <brad.king@kitware.com> | 2009-03-13 14:53:47 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2009-03-13 14:53:47 (GMT) |
commit | 5e49dc4346c276ada7bea1376266e8fb2956b78c (patch) | |
tree | 6732a1dbe3c8042ccd6a08a82e1e4804056b27a6 /Source/cmCacheManager.cxx | |
parent | c6d0043e2a256d1785cb4b9f6497e578f7eaed19 (diff) | |
download | CMake-5e49dc4346c276ada7bea1376266e8fb2956b78c.zip CMake-5e49dc4346c276ada7bea1376266e8fb2956b78c.tar.gz CMake-5e49dc4346c276ada7bea1376266e8fb2956b78c.tar.bz2 |
BUG: Fix cache properties for CMAKE_STRICT build
All cmPropertyMap instances must have CMakeInstance set. This teaches
cmCacheManager to set it on cache entries.
Diffstat (limited to 'Source/cmCacheManager.cxx')
-rw-r--r-- | Source/cmCacheManager.cxx | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Source/cmCacheManager.cxx b/Source/cmCacheManager.cxx index a263bcf..c3e577c 100644 --- a/Source/cmCacheManager.cxx +++ b/Source/cmCacheManager.cxx @@ -42,10 +42,11 @@ const char* cmCacheManagerTypes[] = 0 }; -cmCacheManager::cmCacheManager() +cmCacheManager::cmCacheManager(cmake* cm) { this->CacheMajorVersion = 0; this->CacheMinorVersion = 0; + this->CMakeInstance = cm; } const char* cmCacheManager::TypeToString(cmCacheManager::CacheEntryType type) @@ -226,6 +227,7 @@ bool cmCacheManager::LoadCache(const char* path, // Format is key:type=value std::string helpString; CacheEntry e; + e.Properties.SetCMakeInstance(this->CMakeInstance); cmSystemTools::GetLineFromStream(fin, buffer); realbuffer = buffer.c_str(); while(*realbuffer != '0' && @@ -384,6 +386,7 @@ bool cmCacheManager::ReadPropertyEntry(std::string const& entryKey, { // Create an entry and store the property. CacheEntry& ne = this->Cache[key]; + ne.Properties.SetCMakeInstance(this->CMakeInstance); ne.Type = cmCacheManager::UNINITIALIZED; ne.SetProperty(*p, e.Value.c_str()); } @@ -724,6 +727,7 @@ void cmCacheManager::AddCacheEntry(const char* key, CacheEntryType type) { CacheEntry& e = this->Cache[key]; + e.Properties.SetCMakeInstance(this->CMakeInstance); if ( value ) { e.Value = value; |