[Cmake-commits] CMake branch, next, updated. v2.8.7-2390-g8c2f3c7

Brad King brad.king at kitware.com
Wed Feb 1 09:04:38 EST 2012


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  8c2f3c7ebd6225afe5d08043924f3dbf09eea701 (commit)
       via  de289462efc070d831bf5e49d63fb47e1de57769 (commit)
      from  49400d33dde2512de8c6249fa79f15dfcbd93747 (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=8c2f3c7ebd6225afe5d08043924f3dbf09eea701
commit 8c2f3c7ebd6225afe5d08043924f3dbf09eea701
Merge: 49400d3 de28946
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Feb 1 09:04:36 2012 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Feb 1 09:04:36 2012 -0500

    Merge topic 'find-vcexpress' into next
    
    de28946 Find VC Express during default generator selection (#12917)


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=de289462efc070d831bf5e49d63fb47e1de57769
commit de289462efc070d831bf5e49d63fb47e1de57769
Author:     Peter Kuemmel <syntheticpp at gmx.net>
AuthorDate: Sat Jan 28 13:59:19 2012 +0100
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Feb 1 09:04:27 2012 -0500

    Find VC Express during default generator selection (#12917)
    
    CMake doesn't find Visual C++ Express and uses "NMake Makefiles"
    generator by default when one calls cmake WITHOUT using the -G options.
    Teach CMake to find VC Express to use it as the default generator just
    like the commercial versions.

diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index d691f46..c0c73d6 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -2204,8 +2204,11 @@ int cmake::ActualConfigure()
       std::string installedCompiler;
       // Try to find the newest VS installed on the computer and
       // use that as a default if -G is not specified
-      std::string vsregBase =
-        "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\";
+      const std::string vsregBase =
+        "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\";
+      std::vector<std::string> vsVerions;
+      vsVerions.push_back("VisualStudio\\");
+      vsVerions.push_back("VCExpress\\");
       struct VSRegistryEntryName
       {
         const char* MSVersion;
@@ -2219,14 +2222,18 @@ int cmake::ActualConfigure()
         {"9.0", "Visual Studio 9 2008"},
         {"10.0", "Visual Studio 10"},
         {0, 0}};
-      for(int i =0; version[i].MSVersion != 0; i++)
+      for(size_t b=0; b < vsVerions.size() && installedCompiler.empty(); b++)
         {
-        std::string reg = vsregBase + version[i].MSVersion;
-        reg += ";InstallDir]";
-        cmSystemTools::ExpandRegistryValues(reg);
-        if (!(reg == "/registry"))
+        for(int i =0; version[i].MSVersion != 0; i++)
           {
-          installedCompiler = version[i].GeneratorName;
+          std::string reg = vsregBase + vsVerions[b] + version[i].MSVersion;
+          reg += ";InstallDir]";
+          cmSystemTools::ExpandRegistryValues(reg,
+                                              cmSystemTools::KeyWOW64_32);
+          if (!(reg == "/registry"))
+            {
+            installedCompiler = version[i].GeneratorName;
+            }
           }
         }
       cmGlobalGenerator* gen

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

Summary of changes:


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list