summaryrefslogtreecommitdiffstats
path: root/Source/cmake.h
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-04-04 22:07:04 (GMT)
committerStephen Kelly <steveire@gmail.com>2015-04-07 21:25:39 (GMT)
commit14973054a2f3954111789cda5e54c2e2e2175521 (patch)
tree1cd2c4b592a726aba70682b3a495d49c418313b2 /Source/cmake.h
parent1f2c12ebd196f3d23aa40d85c965654dbc36d0ad (diff)
downloadCMake-14973054a2f3954111789cda5e54c2e2e2175521.zip
CMake-14973054a2f3954111789cda5e54c2e2e2175521.tar.gz
CMake-14973054a2f3954111789cda5e54c2e2e2175521.tar.bz2
Add API for cache loading, deleting and saving to the cmake class.
Migrate existing users of the CacheManager API to use the new API. The CacheManager will be going away soon.
Diffstat (limited to 'Source/cmake.h')
-rw-r--r--Source/cmake.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/Source/cmake.h b/Source/cmake.h
index c22b329..3acf4a8 100644
--- a/Source/cmake.h
+++ b/Source/cmake.h
@@ -18,11 +18,11 @@
#include "cmPropertyDefinitionMap.h"
#include "cmPropertyMap.h"
#include "cmInstalledFile.h"
+#include "cmCacheManager.h"
class cmGlobalGeneratorFactory;
class cmGlobalGenerator;
class cmLocalGenerator;
-class cmCacheManager;
class cmMakefile;
class cmCommand;
class cmVariableWatch;
@@ -173,7 +173,19 @@ class cmake
int Configure();
int ActualConfigure();
+ ///! Break up a line like VAR:type="value" into var, type and value
+ static bool ParseCacheEntry(const std::string& entry,
+ std::string& var,
+ std::string& value,
+ cmCacheManager::CacheEntryType& type);
+
int LoadCache();
+ bool LoadCache(const std::string& path);
+ bool LoadCache(const std::string& path, bool internal,
+ std::set<std::string>& excludes,
+ std::set<std::string>& includes);
+ bool SaveCache(const std::string& path);
+ bool DeleteCache(const std::string& path);
void PreLoadCMakeFiles();
///! Create a GlobalGenerator