[Cmake-commits] [cmake-commits] king committed cmake.cxx 1.388 1.389

cmake-commits at cmake.org cmake-commits at cmake.org
Thu Jul 3 13:55:35 EDT 2008


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

Modified Files:
	cmake.cxx 
Log Message:
ENH: Do not auto-create out-dated cache variables

  - We used to always put LIBRARY_OUTPUT_PATH and EXECUTABLE_OUTPUT_PATH
    in the cache if the project did not.
  - In CMake 2.6 these variables should no longer be used.
  - Now add them only if CMAKE_BACKWARDS_COMPATIBILITY is also cached.
  - This happens only when CMP0001 is set to OLD or WARN or if
    the user or project sets it.  In any case compatibility is needed.
  - Reported by Miguel A. Figueroa-Villanueva and Philip Lowman.


Index: cmake.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmake.cxx,v
retrieving revision 1.388
retrieving revision 1.389
diff -C 2 -d -r1.388 -r1.389
*** cmake.cxx	20 Jun 2008 20:25:02 -0000	1.388
--- cmake.cxx	3 Jul 2008 17:55:33 -0000	1.389
***************
*** 2092,2111 ****
    // if the project did not define one of the entries below, add them now
    // so users can edit the values in the cache:
!   // LIBRARY_OUTPUT_PATH
!   // EXECUTABLE_OUTPUT_PATH
!   if(!this->CacheManager->GetCacheValue("LIBRARY_OUTPUT_PATH"))
!     {
!     this->CacheManager->AddCacheEntry
!       ("LIBRARY_OUTPUT_PATH", "",
!        "Single output directory for building all libraries.",
!        cmCacheManager::PATH);
!     } 
!   if(!this->CacheManager->GetCacheValue("EXECUTABLE_OUTPUT_PATH"))
      {
!     this->CacheManager->AddCacheEntry
!       ("EXECUTABLE_OUTPUT_PATH", "",
!        "Single output directory for building all executables.",
!        cmCacheManager::PATH);
!     }  
    if(!this->CacheManager->GetCacheValue("CMAKE_USE_RELATIVE_PATHS"))
      {
--- 2092,2119 ----
    // if the project did not define one of the entries below, add them now
    // so users can edit the values in the cache:
! 
!   // We used to always present LIBRARY_OUTPUT_PATH and
!   // EXECUTABLE_OUTPUT_PATH.  They are now documented as old-style and
!   // should no longer be used.  Therefore we present them only if the
!   // project requires compatibility with CMake 2.4.  We detect this
!   // here by looking for the old CMAKE_BACKWARDS_COMPATABILITY
!   // variable created when CMP0001 is not set to NEW.
!   if(this->GetCacheManager()->GetCacheValue("CMAKE_BACKWARDS_COMPATIBILITY"))
      {
!     if(!this->CacheManager->GetCacheValue("LIBRARY_OUTPUT_PATH"))
!       {
!       this->CacheManager->AddCacheEntry
!         ("LIBRARY_OUTPUT_PATH", "",
!          "Single output directory for building all libraries.",
!          cmCacheManager::PATH);
!       }
!     if(!this->CacheManager->GetCacheValue("EXECUTABLE_OUTPUT_PATH"))
!       {
!       this->CacheManager->AddCacheEntry
!         ("EXECUTABLE_OUTPUT_PATH", "",
!          "Single output directory for building all executables.",
!          cmCacheManager::PATH);
!       }
!     }
    if(!this->CacheManager->GetCacheValue("CMAKE_USE_RELATIVE_PATHS"))
      {



More information about the Cmake-commits mailing list