瀏覽代碼

added method to puch cache into makefile defines

Ken Martin 24 年之前
父節點
當前提交
ed4f14fb42
共有 2 個文件被更改,包括 19 次插入0 次删除
  1. 16 0
      Source/cmCacheManager.cxx
  2. 3 0
      Source/cmCacheManager.h

+ 16 - 0
Source/cmCacheManager.cxx

@@ -136,6 +136,22 @@ bool cmCacheManager::LoadCache(const char* path)
   return true;
 }
 
+void cmCacheManager::DefineCache(cmMakefile *mf)
+{
+  if (!mf)
+    {
+    return;
+    }
+  
+  // add definition to the makefile
+  for( std::map<std::string, CacheEntry>::const_iterator i = m_Cache.begin();
+       i != m_Cache.end(); ++i)
+    {
+    const CacheEntry& ce = (*i).second;
+    mf->AddDefinition((*i).first.c_str(), ce.m_Value.c_str());
+    }
+}
+
 bool cmCacheManager::SaveCache(cmMakefile* mf) const
 {
   return this->SaveCache(mf->GetHomeOutputDirectory());

+ 3 - 0
Source/cmCacheManager.h

@@ -78,6 +78,9 @@ public:
   bool LoadCache(cmMakefile*); 
   //! Load a cache for given makefile.  Loads from path/CMakeCache.txt.
   bool LoadCache(const char* path);
+
+  //! Put cache definitions into makefile
+  void DefineCache(cmMakefile*); 
   
   //! Save cache for given makefile.  Saves to ouput home CMakeCache.txt.
   bool SaveCache(cmMakefile*) const;