فهرست منبع

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;