[Cmake-commits] CMake branch, next, updated. v3.8.0-rc3-586-gb645aac

Kitware Robot kwrobot at kitware.com
Mon Mar 27 13:55:03 EDT 2017


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
  discards  66839d5a04010d8b42eefdc5a9a1e349816d4c85 (commit)
  discards  c6653ec59f510af6ab550065e127e45cf2f4a457 (commit)
       via  b645aace61d04f73a26faa5496b3ae49f215e1b4 (commit)
       via  6eb609fd59d989fede93fadfc67b928ee7ab7fc2 (commit)
       via  cf784d9ff5555eda82d6790c359b6d6ea7f88345 (commit)
       via  082c0375d9f21ada36bdd8fd710720e553bcdbbb (commit)

This update added new revisions after undoing existing revisions.  That is
to say, the old revision is not a strict subset of the new revision.  This
situation occurs when you --force push a change and generate a repository
containing something like this:

 * -- * -- B -- O -- O -- O (66839d5a04010d8b42eefdc5a9a1e349816d4c85)
            \
             N -- N -- N (b645aace61d04f73a26faa5496b3ae49f215e1b4)

When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.

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 -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b645aace61d04f73a26faa5496b3ae49f215e1b4
commit b645aace61d04f73a26faa5496b3ae49f215e1b4
Merge: 89e2c92 6eb609f
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Mar 27 17:46:54 2017 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Mon Mar 27 13:47:08 2017 -0400

    Stage topic 'InstallRequiredSystemLibraries-vs2017'
    
    Topic-id: 23302
    Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/632


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6eb609fd59d989fede93fadfc67b928ee7ab7fc2
commit 6eb609fd59d989fede93fadfc67b928ee7ab7fc2
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Mar 27 11:42:48 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Mon Mar 27 11:43:01 2017 -0400

    InstallRequiredSystemLibraries: Find VS 2017 redist directory
    
    Use our undocumented `cmake_host_system_information` query to find the
    VS 2017 installation directory by asking the VS installer tool.  Then
    look relative to that for the redist directory.
    
    Fixes: #16737

diff --git a/Modules/InstallRequiredSystemLibraries.cmake b/Modules/InstallRequiredSystemLibraries.cmake
index 9750a06..a3478a3 100644
--- a/Modules/InstallRequiredSystemLibraries.cmake
+++ b/Modules/InstallRequiredSystemLibraries.cmake
@@ -196,6 +196,11 @@ if(MSVC)
     endif()
     if(NOT vs VERSION_LESS 15)
       set(_vs_redist_paths "")
+      cmake_host_system_information(RESULT _vs_dir QUERY VS_${vs}_DIR) # undocumented query
+      if(IS_DIRECTORY "${_vs_dir}")
+        file(GLOB _vs_redist_paths "${_vs_dir}/VC/Redist/MSVC/*")
+      endif()
+      unset(_vs_dir)
     else()
       get_filename_component(_vs_dir
         "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\${vs}.0;InstallDir]" ABSOLUTE)

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cf784d9ff5555eda82d6790c359b6d6ea7f88345
commit cf784d9ff5555eda82d6790c359b6d6ea7f88345
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Mar 27 11:21:22 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Mon Mar 27 11:43:01 2017 -0400

    Add undocumented CMake language means to find VS 2017
    
    Add a query to the `cmake_host_system_information` command to get
    the location of a VS 2017 installation.  Leave it undocumented and
    for internal use for now.

diff --git a/Source/cmCMakeHostSystemInformationCommand.cxx b/Source/cmCMakeHostSystemInformationCommand.cxx
index 7da93ac..e135ac6 100644
--- a/Source/cmCMakeHostSystemInformationCommand.cxx
+++ b/Source/cmCMakeHostSystemInformationCommand.cxx
@@ -7,6 +7,12 @@
 #include "cmMakefile.h"
 #include "cmsys/SystemInformation.hxx"
 
+#if defined(_WIN32)
+#include "cmSystemTools.h"
+#include "cmVSSetupHelper.h"
+#define HAVE_VS_SETUP_HELPER
+#endif
+
 class cmExecutionStatus;
 
 // cmCMakeHostSystemInformation
@@ -70,6 +76,13 @@ bool cmCMakeHostSystemInformationCommand::GetValue(
     value = this->ValueToString(info.GetTotalPhysicalMemory());
   } else if (key == "AVAILABLE_PHYSICAL_MEMORY") {
     value = this->ValueToString(info.GetAvailablePhysicalMemory());
+#ifdef HAVE_VS_SETUP_HELPER
+  } else if (key == "VS_15_DIR") {
+    cmVSSetupAPIHelper vsSetupAPIHelper;
+    if (vsSetupAPIHelper.GetVSInstanceInfo(value)) {
+      cmSystemTools::ConvertToUnixSlashes(value);
+    }
+#endif
   } else {
     std::string e = "does not recognize <key> " + key;
     this->SetError(e);

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=082c0375d9f21ada36bdd8fd710720e553bcdbbb
commit 082c0375d9f21ada36bdd8fd710720e553bcdbbb
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Mar 27 11:40:47 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Mon Mar 27 11:43:01 2017 -0400

    InstallRequiredSystemLibraries: Split VS 2017 search paths
    
    VS 2017 does not have the same registry entries or other paths we
    search for other VS versions.  Split the search code paths to treat
    it separately.

diff --git a/Modules/InstallRequiredSystemLibraries.cmake b/Modules/InstallRequiredSystemLibraries.cmake
index 1061da0..9750a06 100644
--- a/Modules/InstallRequiredSystemLibraries.cmake
+++ b/Modules/InstallRequiredSystemLibraries.cmake
@@ -191,19 +191,26 @@ if(MSVC)
     set(vs "${_MSVCRT_IDE_VERSION}")
 
     # Find the runtime library redistribution directory.
-    get_filename_component(msvc_install_dir
-      "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\${vs}.0;InstallDir]" ABSOLUTE)
-    set(programfilesx86 "ProgramFiles(x86)")
     if(vs VERSION_LESS 15 AND DEFINED MSVC${vs}_REDIST_DIR AND EXISTS "${MSVC${vs}_REDIST_DIR}")
       set(MSVC_REDIST_DIR "${MSVC${vs}_REDIST_DIR}") # use old cache entry
     endif()
-    find_path(MSVC_REDIST_DIR NAMES ${CMAKE_MSVC_ARCH}/Microsoft.VC${vs}0.CRT
-      PATHS
-        "${msvc_install_dir}/../../VC/redist"
+    if(NOT vs VERSION_LESS 15)
+      set(_vs_redist_paths "")
+    else()
+      get_filename_component(_vs_dir
+        "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\${vs}.0;InstallDir]" ABSOLUTE)
+      set(programfilesx86 "ProgramFiles(x86)")
+      set(_vs_redist_paths
+        "${_vs_dir}/../../VC/redist"
         "${base_dir}/VC/redist"
         "$ENV{ProgramFiles}/Microsoft Visual Studio ${vs}.0/VC/redist"
         "$ENV{${programfilesx86}}/Microsoft Visual Studio ${vs}.0/VC/redist"
-      )
+        )
+      unset(_vs_dir)
+      unset(programfilesx86)
+    endif()
+    find_path(MSVC_REDIST_DIR NAMES ${CMAKE_MSVC_ARCH}/Microsoft.VC${vs}0.CRT PATHS ${_vs_redist_paths})
+    unset(_vs_redist_paths)
     mark_as_advanced(MSVC_REDIST_DIR)
     set(MSVC_CRT_DIR "${MSVC_REDIST_DIR}/${CMAKE_MSVC_ARCH}/Microsoft.VC${vs}0.CRT")
 

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

Summary of changes:
 Modules/CPackRPM.cmake                         |   69 ++++++++++++++++--------
 Modules/InstallRequiredSystemLibraries.cmake   |   26 ++++++---
 Source/cmCMakeHostSystemInformationCommand.cxx |   13 +++++
 3 files changed, 79 insertions(+), 29 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list