summaryrefslogtreecommitdiffstats
path: root/Source/cmake.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-04-04 19:20:12 (GMT)
committerBrad King <brad.king@kitware.com>2015-04-13 15:44:14 (GMT)
commita6b1ad1309d14668e572da7937a2a8dda9e1f669 (patch)
tree4c1c5a63d339975c0006347823ee6a9e7ab355b9 /Source/cmake.cxx
parentba404938a202b51bb82bff8692ed08e53b061ad4 (diff)
downloadCMake-a6b1ad1309d14668e572da7937a2a8dda9e1f669.zip
CMake-a6b1ad1309d14668e572da7937a2a8dda9e1f669.tar.gz
CMake-a6b1ad1309d14668e572da7937a2a8dda9e1f669.tar.bz2
Introduce cmState class.
At this point, it is an interface to the cache. It will be extended to be a universal interface for access to and manipulation of configuration-time data (defintions, properties on targets, directories, source files etc). This will allow porting all command implementations away from the cmMakefile and cmTarget classes, and result in something more-purely related to configuration-time processing of cmake commands. That should serve at least the following goals: * Split the CMake implementation more definitively into three stages: Configuration, computation and generation, and be able to implement each optimally for memory access patterns etc. * Make better IDE integration possible by making more configuration data available. * Make it possiblte to use a smaller library than CMakeLib.a in cpack and ctest, resulting in smaller executables. * Make it possible to run the configure step multiple times in the same CMake run (#14539). Manage its lifetime in the cmake class, and add a convenience accessor to cmMakefile.
Diffstat (limited to 'Source/cmake.cxx')
-rw-r--r--Source/cmake.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index 64b332c..c419edc 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -21,6 +21,7 @@
#include "cmTest.h"
#include "cmDocumentationFormatter.h"
#include "cmAlgorithms.h"
+#include "cmState.h"
#if defined(CMAKE_BUILD_WITH_CMAKE)
# include "cmGraphVizWriter.h"
@@ -133,6 +134,8 @@ cmake::cmake()
this->FileComparison = new cmFileTimeComparison;
this->Policies = new cmPolicies();
+ this->State = new cmState(this);
+
this->InitializeProperties();
#ifdef __APPLE__
@@ -171,6 +174,7 @@ cmake::~cmake()
{
delete this->CacheManager;
delete this->Policies;
+ delete this->State;
if (this->GlobalGenerator)
{
delete this->GlobalGenerator;