[Cmake-commits] [cmake-commits] hoffman committed cmake.cxx 1.370 1.371 cmake.h 1.106 1.107

cmake-commits at cmake.org cmake-commits at cmake.org
Wed Mar 12 17:02:32 EDT 2008


Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv3936

Modified Files:
	cmake.cxx cmake.h 
Log Message:
ENH: make sure properties are re-set on each configure


Index: cmake.h
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmake.h,v
retrieving revision 1.106
retrieving revision 1.107
diff -C 2 -d -r1.106 -r1.107
*** cmake.h	12 Mar 2008 02:50:35 -0000	1.106
--- cmake.h	12 Mar 2008 21:02:30 -0000	1.107
***************
*** 350,353 ****
--- 350,354 ----
      }
  protected:
+   void InitializeProperties();
    int HandleDeleteCacheVariables(const char* var);
    cmPropertyMap Properties;

Index: cmake.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmake.cxx,v
retrieving revision 1.370
retrieving revision 1.371
diff -C 2 -d -r1.370 -r1.371
*** cmake.cxx	12 Mar 2008 02:50:35 -0000	1.370
--- cmake.cxx	12 Mar 2008 21:02:30 -0000	1.371
***************
*** 147,159 ****
  
    this->Policies = new cmPolicies();
! 
!   this->Properties.SetCMakeInstance(this);
! 
!   // initialize properties
!   cmSourceFile::DefineProperties(this);
!   cmTarget::DefineProperties(this);
!   cmMakefile::DefineProperties(this);
!   cmTest::DefineProperties(this);
!   cmake::DefineProperties(this);
  
  #ifdef __APPLE__
--- 147,151 ----
  
    this->Policies = new cmPolicies();
!   this->InitializeProperties();
  
  #ifdef __APPLE__
***************
*** 225,230 ****
--- 217,238 ----
  }
  
+ void cmake::InitializeProperties()
+ {
+   this->Properties.clear();
+   this->Properties.SetCMakeInstance(this);
+ 
+   // initialize properties
+   cmSourceFile::DefineProperties(this);
+   cmTarget::DefineProperties(this);
+   cmMakefile::DefineProperties(this);
+   cmTest::DefineProperties(this);
+   cmake::DefineProperties(this);
+   this->AccessedProperties.clear();
+   this->PropertyDefinitions.clear();
+ }
+ 
  void cmake::CleanupCommandsAndMacros()
  {
+   this->InitializeProperties();
    std::vector<cmCommand*> commands;
    for(RegisteredCommandsMap::iterator j = this->Commands.begin();



More information about the Cmake-commits mailing list