[Cmake-commits] CMake branch, next, updated. v3.0.0-4495-g3a60ea4

Brad King brad.king at kitware.com
Thu Jul 24 13:41:18 EDT 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  3a60ea462359e6ef58a914d89cef3226229b43d0 (commit)
       via  8981513a810a97d10e299407e12c46aabe68f00a (commit)
       via  731427a646cd0ca81aa392872d18d125e917bf47 (commit)
      from  a79082165eb56ae51dddb7d9a68b45fd9dea1184 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3a60ea462359e6ef58a914d89cef3226229b43d0
commit 3a60ea462359e6ef58a914d89cef3226229b43d0
Merge: a790821 8981513
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Thu Jul 24 13:41:17 2014 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Jul 24 13:41:17 2014 -0400

    Merge topic 'fix-re-cmake-with-compiler' into next
    
    8981513a CMakeDetermineCompiler: Simplify CMAKE_<LANG>_COMPILER default force-cache
    731427a6 cmGlobalGenerator: Do not re-add CMAKE_<LANG>_COMPILER


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8981513a810a97d10e299407e12c46aabe68f00a
commit 8981513a810a97d10e299407e12c46aabe68f00a
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Thu Jul 24 13:10:05 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Thu Jul 24 13:37:07 2014 -0400

    CMakeDetermineCompiler: Simplify CMAKE_<LANG>_COMPILER default force-cache
    
    If find_program does not find CMAKE_<LANG>_COMPILER, use set_property()
    to force the value to be that of CMAKE_<LANG>_COMPILER_INIT instead of
    set().  This allows us to set the value without re-specifying the type
    and documentation, thus preserving what find_program set.

diff --git a/Modules/CMakeDetermineCompiler.cmake b/Modules/CMakeDetermineCompiler.cmake
index cd0f8b8..0ab3af6 100644
--- a/Modules/CMakeDetermineCompiler.cmake
+++ b/Modules/CMakeDetermineCompiler.cmake
@@ -65,7 +65,7 @@ macro(_cmake_find_compiler lang)
   endif()
   find_program(CMAKE_${lang}_COMPILER NAMES ${CMAKE_${lang}_COMPILER_LIST} DOC "${lang} compiler")
   if(CMAKE_${lang}_COMPILER_INIT AND NOT CMAKE_${lang}_COMPILER)
-    set(CMAKE_${lang}_COMPILER "${CMAKE_${lang}_COMPILER_INIT}" CACHE FILEPATH "${lang} compiler" FORCE)
+    set_property(CACHE CMAKE_${lang}_COMPILER PROPERTY VALUE "${CMAKE_${lang}_COMPILER_INIT}")
   endif()
   unset(_${lang}_COMPILER_HINTS)
   unset(_languages)

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=731427a646cd0ca81aa392872d18d125e917bf47
commit 731427a646cd0ca81aa392872d18d125e917bf47
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Thu Jul 24 12:44:05 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Thu Jul 24 13:31:14 2014 -0400

    cmGlobalGenerator: Do not re-add CMAKE_<LANG>_COMPILER
    
    The cmGlobalGenerator::ResolveLanguageCompiler method, invoked only by
    Makefile generators, contains code originally added by commit v2.4.0~796
    (..., add new generators for msys and mingw, 2005-12-22) to compute the
    full path to the compiler and save the result back into the cache value.
    Since then the CMakeDetermine*Compiler modules have learned to resolve
    the full path to the compiler and save it in CMake*Compiler.cmake files
    configured in the build tree.  The value of CMAKE_<LANG>_COMPILER in the
    cache is now only for reference of what the user originally specified.
    The full path is now available in a normal variable of the same name,
    and this is used by project code and the generators.
    
    When the user specifies -DCMAKE_<LANG>_COMPILER=name on the command-line
    of an existing build tree that uses a Makefile generator, it is first
    stored in the cache with an uninitialized type.  Then later when
    ResolveLanguageCompiler updates the cache entry and sets the type to
    FILEPATH, cmMakefile::AddCacheDefinition does CollapseFullPath on the
    "name" and ends up with something like "$PWD/name" which is unlikely to
    be correct.  Furthermore, cmMakefile::AddCacheDefinition proceeds to
    remove the normal variable of the same name, so the value originally
    saved in CMake<LANG>Compiler.cmake is ignored and the generators use the
    wrong path to the compiler.
    
    Resolve this by dropping the code from ResolveLanguageCompiler that
    touches the cache value of CMAKE_<LANG>_COMPILER.  As explained above it
    is no longer needed anyway.

diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx
index ae6861e..249373c 100644
--- a/Source/cmGlobalGenerator.cxx
+++ b/Source/cmGlobalGenerator.cxx
@@ -148,8 +148,6 @@ void cmGlobalGenerator::ResolveLanguageCompiler(const std::string &lang,
     {
     return;
     }
-  std::string doc = lang;
-  doc += " compiler.";
   const char* cname = this->GetCMakeInstance()->
     GetCacheManager()->GetCacheValue(langComp);
   std::string changeVars;
@@ -186,8 +184,6 @@ void cmGlobalGenerator::ResolveLanguageCompiler(const std::string &lang,
         changeVars.c_str());
       }
     }
-  mf->AddCacheDefinition(langComp, path.c_str(),
-                         doc.c_str(), cmCacheManager::FILEPATH);
 }
 
 void cmGlobalGenerator::AddBuildExportSet(cmExportBuildFileGenerator* gen)

-----------------------------------------------------------------------

Summary of changes:
 Modules/CMakeDetermineCompiler.cmake |    2 +-
 Source/cmGlobalGenerator.cxx         |    4 ----
 2 files changed, 1 insertion(+), 5 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list