[Cmake-commits] CMake branch, next, updated. v3.5.2-1089-ga7e7a045

Brad King brad.king at kitware.com
Tue Apr 26 08:32:32 EDT 2016


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  a7e7a045f88eaa2379e5b6126ce4e4b042739c92 (commit)
       via  571bedec2970df42b9f3666e17728a7511d32b47 (commit)
       via  0c58d2d0fdc518e12e6aa5a15012437c573a910c (commit)
      from  ad015d4750216ff4852b92852737363cdc525e18 (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 -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a7e7a045f88eaa2379e5b6126ce4e4b042739c92
commit a7e7a045f88eaa2379e5b6126ce4e4b042739c92
Merge: ad015d4 571bede
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Apr 26 08:32:30 2016 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Apr 26 08:32:30 2016 -0400

    Merge topic 'vs-old-express-no-folders' into next
    
    571bedec VS: Ignore USE_FOLDER property on VS versions that do not support it
    0c58d2d0 VS: Detect VS 8 and 9 Express editions


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=571bedec2970df42b9f3666e17728a7511d32b47
commit 571bedec2970df42b9f3666e17728a7511d32b47
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Apr 26 08:22:27 2016 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Apr 26 08:22:27 2016 -0400

    VS: Ignore USE_FOLDER property on VS versions that do not support it
    
    Solution folders are supported on VS 8 and above in the full versions
    and on VS 11 and above in the express versions.

diff --git a/Source/cmGlobalVisualStudio10Generator.cxx b/Source/cmGlobalVisualStudio10Generator.cxx
index c49008d..c24e7f5 100644
--- a/Source/cmGlobalVisualStudio10Generator.cxx
+++ b/Source/cmGlobalVisualStudio10Generator.cxx
@@ -609,12 +609,6 @@ void cmGlobalVisualStudio10Generator::PathTooLong(
 }
 
 //----------------------------------------------------------------------------
-bool cmGlobalVisualStudio10Generator::UseFolderProperty()
-{
-  return IsExpressEdition() ? false : cmGlobalGenerator::UseFolderProperty();
-}
-
-//----------------------------------------------------------------------------
 bool cmGlobalVisualStudio10Generator::IsNsightTegra() const
 {
   return !this->NsightTegraVersion.empty();
diff --git a/Source/cmGlobalVisualStudio10Generator.h b/Source/cmGlobalVisualStudio10Generator.h
index d4be329..8723fd1 100644
--- a/Source/cmGlobalVisualStudio10Generator.h
+++ b/Source/cmGlobalVisualStudio10Generator.h
@@ -127,8 +127,6 @@ protected:
   bool SystemIsWindowsPhone;
   bool SystemIsWindowsStore;
 
-  bool UseFolderProperty();
-
 private:
   class Factory;
   struct LongestSourcePath
diff --git a/Source/cmGlobalVisualStudio11Generator.cxx b/Source/cmGlobalVisualStudio11Generator.cxx
index 9522f6e..9b00357 100644
--- a/Source/cmGlobalVisualStudio11Generator.cxx
+++ b/Source/cmGlobalVisualStudio11Generator.cxx
@@ -239,10 +239,10 @@ void cmGlobalVisualStudio11Generator::WriteSLNHeader(std::ostream& fout)
 //----------------------------------------------------------------------------
 bool cmGlobalVisualStudio11Generator::UseFolderProperty()
 {
-  // Intentionally skip over the parent class implementation and call the
-  // grand-parent class's implementation. Folders are not supported by the
-  // Express editions in VS10 and earlier, but they are in VS11 Express.
-  return cmGlobalVisualStudio8Generator::UseFolderProperty();
+  // Intentionally skip up to the top-level class implementation.
+  // Folders are not supported by the Express editions in VS10 and earlier,
+  // but they are in VS11 Express and above.
+  return cmGlobalGenerator::UseFolderProperty();
 }
 
 //----------------------------------------------------------------------------
diff --git a/Source/cmGlobalVisualStudio71Generator.h b/Source/cmGlobalVisualStudio71Generator.h
index 5035fda..d20ffbc 100644
--- a/Source/cmGlobalVisualStudio71Generator.h
+++ b/Source/cmGlobalVisualStudio71Generator.h
@@ -75,6 +75,9 @@ protected:
                                     const std::set<std::string>& depends);
   virtual void WriteSLNHeader(std::ostream& fout);
 
+  // Folders are not supported by VS 7.1.
+  virtual bool UseFolderProperty() { return false; }
+
   std::string ProjectConfigurationSectionName;
 };
 #endif
diff --git a/Source/cmGlobalVisualStudio8Generator.cxx b/Source/cmGlobalVisualStudio8Generator.cxx
index 7e880fe..5c50530 100644
--- a/Source/cmGlobalVisualStudio8Generator.cxx
+++ b/Source/cmGlobalVisualStudio8Generator.cxx
@@ -194,6 +194,12 @@ void cmGlobalVisualStudio8Generator::Configure()
 }
 
 //----------------------------------------------------------------------------
+bool cmGlobalVisualStudio8Generator::UseFolderProperty()
+{
+  return IsExpressEdition() ? false : cmGlobalGenerator::UseFolderProperty();
+}
+
+//----------------------------------------------------------------------------
 std::string cmGlobalVisualStudio8Generator::GetUserMacrosDirectory()
 {
   // Some VS8 sp0 versions cannot run macros.
diff --git a/Source/cmGlobalVisualStudio8Generator.h b/Source/cmGlobalVisualStudio8Generator.h
index 93803c3..6eb8450 100644
--- a/Source/cmGlobalVisualStudio8Generator.h
+++ b/Source/cmGlobalVisualStudio8Generator.h
@@ -97,6 +97,8 @@ protected:
                                    const char* path,
                                    const cmGeneratorTarget *t);
 
+  bool UseFolderProperty();
+
   std::string Name;
   std::string WindowsCEVersion;
   bool ExpressEdition;
diff --git a/Source/cmGlobalVisualStudioGenerator.cxx b/Source/cmGlobalVisualStudioGenerator.cxx
index 04146fb..9817b09 100644
--- a/Source/cmGlobalVisualStudioGenerator.cxx
+++ b/Source/cmGlobalVisualStudioGenerator.cxx
@@ -92,7 +92,7 @@ void cmGlobalVisualStudioGenerator::AddExtraIDETargets()
       //
       // Organize in the "predefined targets" folder:
       //
-      if (this->UseFolderProperty() && this->GetVersion() > VS71)
+      if (this->UseFolderProperty())
         {
         allBuild->SetProperty("FOLDER", this->GetPredefinedTargetsFolder());
         }

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0c58d2d0fdc518e12e6aa5a15012437c573a910c
commit 0c58d2d0fdc518e12e6aa5a15012437c573a910c
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Apr 26 08:16:19 2016 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Apr 26 08:16:19 2016 -0400

    VS: Detect VS 8 and 9 Express editions

diff --git a/Source/cmGlobalVisualStudio10Generator.h b/Source/cmGlobalVisualStudio10Generator.h
index 6bf4740..d4be329 100644
--- a/Source/cmGlobalVisualStudio10Generator.h
+++ b/Source/cmGlobalVisualStudio10Generator.h
@@ -56,9 +56,6 @@ public:
                               cmMakefile *, bool optional);
   virtual void WriteSLNHeader(std::ostream& fout);
 
-  /** Is the installed VS an Express edition?  */
-  bool IsExpressEdition() const { return this->ExpressEdition; }
-
   /** Generating for Nsight Tegra VS plugin?  */
   bool IsNsightTegra() const;
   std::string GetNsightTegraVersion() const;
@@ -129,7 +126,6 @@ protected:
   bool SystemIsWindowsCE;
   bool SystemIsWindowsPhone;
   bool SystemIsWindowsStore;
-  bool ExpressEdition;
 
   bool UseFolderProperty();
 
diff --git a/Source/cmGlobalVisualStudio8Generator.cxx b/Source/cmGlobalVisualStudio8Generator.cxx
index 3abff6c..7e880fe 100644
--- a/Source/cmGlobalVisualStudio8Generator.cxx
+++ b/Source/cmGlobalVisualStudio8Generator.cxx
@@ -103,6 +103,10 @@ cmGlobalVisualStudio8Generator::cmGlobalVisualStudio8Generator(cmake* cm,
   this->Name = name;
   this->ExtraFlagTable = this->GetExtraFlagTableVS8();
   this->Version = VS8;
+  std::string vc8Express;
+  this->ExpressEdition = cmSystemTools::ReadRegistryValue(
+    "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\8.0\\Setup\\VC;"
+    "ProductDir", vc8Express, cmSystemTools::KeyWOW64_32);
 }
 
 //----------------------------------------------------------------------------
diff --git a/Source/cmGlobalVisualStudio8Generator.h b/Source/cmGlobalVisualStudio8Generator.h
index b3093cc..93803c3 100644
--- a/Source/cmGlobalVisualStudio8Generator.h
+++ b/Source/cmGlobalVisualStudio8Generator.h
@@ -66,6 +66,9 @@ public:
   virtual bool TargetsWindowsCE() const {
     return !this->WindowsCEVersion.empty(); }
 
+  /** Is the installed VS an Express edition?  */
+  bool IsExpressEdition() const { return this->ExpressEdition; }
+
 protected:
   virtual void AddExtraIDETargets();
   virtual const char* GetIDEVersion() { return "8.0"; }
@@ -96,6 +99,7 @@ protected:
 
   std::string Name;
   std::string WindowsCEVersion;
+  bool ExpressEdition;
 
 private:
   class Factory;
diff --git a/Source/cmGlobalVisualStudio9Generator.cxx b/Source/cmGlobalVisualStudio9Generator.cxx
index 884f754..da6ffae 100644
--- a/Source/cmGlobalVisualStudio9Generator.cxx
+++ b/Source/cmGlobalVisualStudio9Generator.cxx
@@ -104,6 +104,10 @@ cmGlobalVisualStudio9Generator::cmGlobalVisualStudio9Generator(cmake* cm,
   : cmGlobalVisualStudio8Generator(cm, name, platformName)
 {
   this->Version = VS9;
+  std::string vc9Express;
+  this->ExpressEdition = cmSystemTools::ReadRegistryValue(
+    "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\9.0\\Setup\\VC;"
+    "ProductDir", vc9Express, cmSystemTools::KeyWOW64_32);
 }
 
 //----------------------------------------------------------------------------

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

Summary of changes:
 Source/cmGlobalVisualStudio10Generator.cxx |    6 ------
 Source/cmGlobalVisualStudio10Generator.h   |    6 ------
 Source/cmGlobalVisualStudio11Generator.cxx |    8 ++++----
 Source/cmGlobalVisualStudio71Generator.h   |    3 +++
 Source/cmGlobalVisualStudio8Generator.cxx  |   10 ++++++++++
 Source/cmGlobalVisualStudio8Generator.h    |    6 ++++++
 Source/cmGlobalVisualStudio9Generator.cxx  |    4 ++++
 Source/cmGlobalVisualStudioGenerator.cxx   |    2 +-
 8 files changed, 28 insertions(+), 17 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list