[Cmake-commits] CMake branch, next, updated. v2.8.11.2-3937-g6050e2d

Robert Maynard robert.maynard at kitware.com
Tue Aug 20 15:43:30 EDT 2013


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  6050e2d50dc11ac8a9528ae04b27b486b27d7794 (commit)
       via  066e47983dc9e162358d5876c4a74f3a2fd7adb2 (commit)
      from  5641e9c86eaa41d0c21c05f88631470a62f95048 (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=6050e2d50dc11ac8a9528ae04b27b486b27d7794
commit 6050e2d50dc11ac8a9528ae04b27b486b27d7794
Merge: 5641e9c 066e479
Author:     Robert Maynard <robert.maynard at kitware.com>
AuthorDate: Tue Aug 20 15:43:25 2013 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Aug 20 15:43:25 2013 -0400

    Merge topic 'vs2013_toolset_14369' into next
    
    066e479 VS: Each Visual Studio Generator has a tools version.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=066e47983dc9e162358d5876c4a74f3a2fd7adb2
commit 066e47983dc9e162358d5876c4a74f3a2fd7adb2
Author:     Robert Maynard <robert.maynard at kitware.com>
AuthorDate: Tue Aug 20 14:59:59 2013 -0400
Commit:     Robert Maynard <robert.maynard at kitware.com>
CommitDate: Tue Aug 20 15:06:18 2013 -0400

    VS: Each Visual Studio Generator has a tools version.
    
    The MSBuild version for each visual studio generator isn't 4.0. With Visual
    Studo 2013 the ToolsVersion moved from being tied to the .Net Generator and now
    has its own version number.

diff --git a/Source/cmGlobalVisualStudio10Generator.h b/Source/cmGlobalVisualStudio10Generator.h
index 0a95091..f58524b 100644
--- a/Source/cmGlobalVisualStudio10Generator.h
+++ b/Source/cmGlobalVisualStudio10Generator.h
@@ -83,6 +83,7 @@ public:
                    std::string const& sfRel);
 protected:
   virtual const char* GetIDEVersion() { return "10.0"; }
+  virtual const char* GetToolsVersion() { return "4.0"; }
 
   std::string PlatformToolset;
   bool ExpressEdition;
diff --git a/Source/cmGlobalVisualStudio12Generator.h b/Source/cmGlobalVisualStudio12Generator.h
index 064e310..c78c63c 100644
--- a/Source/cmGlobalVisualStudio12Generator.h
+++ b/Source/cmGlobalVisualStudio12Generator.h
@@ -33,6 +33,10 @@ public:
   virtual std::string GetUserMacrosDirectory() { return ""; }
 protected:
   virtual const char* GetIDEVersion() { return "12.0"; }
+  //in Visual Studio 2013 they detached the MSBuild tools version
+  //from the .Net Framework version and instead made it have it's own
+  //version number
+  virtual const char* GetToolsVersion() { return "12.0"; }
 private:
   class Factory;
 };
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index ea05347..532f417 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -216,12 +216,16 @@ void cmVisualStudio10TargetGenerator::Generate()
   // Write the encoding header into the file
   char magic[] = {0xEF,0xBB, 0xBF};
   this->BuildFileStream->write(magic, 3);
-  this->WriteString("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",0);
-  this->WriteString("<Project DefaultTargets=\"Build\" "
-                    "ToolsVersion=\"4.0\" "
-                    "xmlns=\"http://schemas.microsoft.com/"
-                    "developer/msbuild/2003\">\n",
-                    0);
+
+  //get the tools version to use
+  const std::string toolsVer(this->GlobalGenerator->GetToolsVersion());
+  const std::string project_defaults =
+    "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" +
+    "<Project DefaultTargets=\"Build\" ToolsVersion=\" " + toolsVer + "\" " +
+    "xmlns=\"http://schemas.microsoft.com/" +
+    "developer/msbuild/2003\">\n";
+  this->WriteString(project_defaults.c_str(),0);
+
   this->WriteProjectConfigurations();
   this->WriteString("<PropertyGroup Label=\"Globals\">\n", 1);
   this->WriteString("<ProjectGUID>", 2);
@@ -716,12 +720,16 @@ void cmVisualStudio10TargetGenerator::WriteGroups()
   fout.write(magic, 3);
   cmGeneratedFileStream* save = this->BuildFileStream;
   this->BuildFileStream = & fout;
-  this->WriteString("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
-                    "<Project "
-                    "ToolsVersion=\"4.0\" "
-                    "xmlns=\"http://schemas.microsoft.com/"
-                    "developer/msbuild/2003\">\n",
-                    0);
+
+  //get the tools version to use
+  const std::string toolsVer(this->GlobalGenerator->GetToolsVersion());
+  const std::string project_defaults =
+    "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" +
+    "<Project ToolsVersion=\" " + toolsVer + "\" " +
+    "xmlns=\"http://schemas.microsoft.com/" +
+    "developer/msbuild/2003\">\n";
+  this->WriteString(project_defaults.c_str(),0);
+
   for(ToolSourceMap::const_iterator ti = this->Tools.begin();
       ti != this->Tools.end(); ++ti)
     {

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

Summary of changes:
 Source/cmGlobalVisualStudio10Generator.h   |    1 +
 Source/cmGlobalVisualStudio12Generator.h   |    4 +++
 Source/cmVisualStudio10TargetGenerator.cxx |   32 +++++++++++++++++----------
 3 files changed, 25 insertions(+), 12 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list