[Cmake-commits] CMake branch, next, updated. v3.0.0-4617-gab5ffdf

Brad King brad.king at kitware.com
Tue Jul 29 15:10:21 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  ab5ffdfbbdfdc25736a4193b070819225eac23c8 (commit)
       via  0ac28adc01c68bb9c11a34af122bac0071733965 (commit)
       via  58bb14d4ac64686923d69bf515e8700f095c4ff5 (commit)
       via  972cf1d7afd1476c550ca0503d75ec93bd764124 (commit)
       via  15fb102278c1cf9141e42174d89bbfe5ef26f634 (commit)
       via  c2ef6d238a5e30234756a38943436e326b986b58 (commit)
       via  2df389115e7636756cd1f1d6c422651b4899522d (commit)
       via  143b40051a71c2f53e487be69069f1932ccc25d1 (commit)
      from  4f99c0343b748cac444f74f0a11bde10ced32222 (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=ab5ffdfbbdfdc25736a4193b070819225eac23c8
commit ab5ffdfbbdfdc25736a4193b070819225eac23c8
Merge: 4f99c03 0ac28ad
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 29 15:10:21 2014 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Jul 29 15:10:21 2014 -0400

    Merge topic 'vs-refactor-source-tools' into next
    
    0ac28adc VS: Map .jpg and .png sources to Image tool
    58bb14d4 VS: Map .xml to XML tool
    972cf1d7 VS: Map .appxmanifest sources to AppxManifest tool
    15fb1022 VS: Refactor handling of resx headers
    c2ef6d23 VS: Refactor handling of "header" sources in VS >= 10
    2df38911 VS: Refactor handling of "extra" sources in VS >= 10
    143b4005 VS: Convert 'WriteSource' tool argument to std::string


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0ac28adc01c68bb9c11a34af122bac0071733965
commit 0ac28adc01c68bb9c11a34af122bac0071733965
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 29 13:52:42 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 29 15:06:37 2014 -0400

    VS: Map .jpg and .png sources to Image tool
    
    Inspired-by: Gilles Khouzam <gillesk at microsoft.com>

diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index b294e68..d9013e0 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -1019,6 +1019,11 @@ void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf)
     {
     tool = "AppxManifest";
     }
+  else if(ext == "jpg" ||
+          ext == "png")
+    {
+    tool = "Image";
+    }
   else if(ext == "xml")
     {
     tool = "XML";

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=58bb14d4ac64686923d69bf515e8700f095c4ff5
commit 58bb14d4ac64686923d69bf515e8700f095c4ff5
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 29 13:45:23 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 29 15:06:35 2014 -0400

    VS: Map .xml to XML tool
    
    Inspired-by: Gilles Khouzam <gillesk at microsoft.com>

diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index 50c303f..b294e68 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -1019,6 +1019,10 @@ void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf)
     {
     tool = "AppxManifest";
     }
+  else if(ext == "xml")
+    {
+    tool = "XML";
+    }
   this->WriteSource(tool, sf);
 }
 

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=972cf1d7afd1476c550ca0503d75ec93bd764124
commit 972cf1d7afd1476c550ca0503d75ec93bd764124
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 29 13:43:35 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 29 15:06:32 2014 -0400

    VS: Map .appxmanifest sources to AppxManifest tool
    
    Inspired-by: Minmin Gong <minmin.gong at gmail.com>

diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index 872f187..50c303f 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -1013,7 +1013,13 @@ void cmVisualStudio10TargetGenerator::WriteHeaderSource(cmSourceFile const* sf)
 
 void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf)
 {
-  this->WriteSource("None", sf);
+  std::string tool = "None";
+  std::string const& ext = sf->GetExtension();
+  if(ext == "appxmanifest")
+    {
+    tool = "AppxManifest";
+    }
+  this->WriteSource(tool, sf);
 }
 
 void cmVisualStudio10TargetGenerator::WriteSource(

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=15fb102278c1cf9141e42174d89bbfe5ef26f634
commit 15fb102278c1cf9141e42174d89bbfe5ef26f634
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 29 13:41:17 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 29 15:06:30 2014 -0400

    VS: Refactor handling of resx headers
    
    Move generation of the ClInclude element to WriteHeaderSource.

diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index 22e2461..872f187 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -999,7 +999,16 @@ WriteGroupSources(const char* name,
 
 void cmVisualStudio10TargetGenerator::WriteHeaderSource(cmSourceFile const* sf)
 {
-  this->WriteSource("ClInclude", sf);
+  if(this->IsResxHeader(sf->GetFullPath()))
+    {
+    this->WriteSource("ClInclude", sf, ">\n");
+    this->WriteString("<FileType>CppForm</FileType>\n", 3);
+    this->WriteString("</ClInclude>\n", 2);
+    }
+  else
+    {
+    this->WriteSource("ClInclude", sf);
+    }
 }
 
 void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf)
@@ -1046,19 +1055,8 @@ void cmVisualStudio10TargetGenerator::WriteSource(
   this->ConvertToWindowsSlash(sourceFile);
   this->WriteString("<", 2);
   (*this->BuildFileStream ) << tool << " Include=\""
-                            << cmVS10EscapeXML(sourceFile) << "\"";
-
-  if(sf->GetExtension() == "h" &&
-    this->IsResxHeader(sf->GetFullPath()))
-    {
-      (*this->BuildFileStream ) << ">\n";
-      this->WriteString("<FileType>CppForm</FileType>\n", 3);
-      this->WriteString("</ClInclude>\n", 2);
-    }
-  else
-    {
-      (*this->BuildFileStream ) << (end? end : " />\n");
-    }
+                            << cmVS10EscapeXML(sourceFile) << "\""
+                            << (end? end : " />\n");
 
   ToolSource toolSource = {sf, forceRelative};
   this->Tools[tool].push_back(toolSource);

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c2ef6d238a5e30234756a38943436e326b986b58
commit c2ef6d238a5e30234756a38943436e326b986b58
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 29 13:36:53 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 29 15:06:28 2014 -0400

    VS: Refactor handling of "header" sources in VS >= 10
    
    Create a WriteHeaderSource method to handle writing of sources
    classified by cmGeneratorTarget as header files.  This will be
    useful to add special VS-specific handling for some headers.

diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index d50bdde..22e2461 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -997,6 +997,11 @@ WriteGroupSources(const char* name,
   this->WriteString("</ItemGroup>\n", 1);
 }
 
+void cmVisualStudio10TargetGenerator::WriteHeaderSource(cmSourceFile const* sf)
+{
+  this->WriteSource("ClInclude", sf);
+}
+
 void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf)
 {
   this->WriteSource("None", sf);
@@ -1079,7 +1084,11 @@ void cmVisualStudio10TargetGenerator::WriteAllSources()
 
   std::vector<cmSourceFile const*> headerSources;
   this->GeneratorTarget->GetHeaderSources(headerSources, "");
-  this->WriteSources("ClInclude", headerSources);
+  for(std::vector<cmSourceFile const*>::const_iterator
+        si = headerSources.begin(); si != headerSources.end(); ++si)
+    {
+    this->WriteHeaderSource(*si);
+    }
   std::vector<cmSourceFile const*> idlSources;
   this->GeneratorTarget->GetIDLSources(idlSources, "");
   this->WriteSources("Midl", idlSources);
diff --git a/Source/cmVisualStudio10TargetGenerator.h b/Source/cmVisualStudio10TargetGenerator.h
index 8966f93..7436372 100644
--- a/Source/cmVisualStudio10TargetGenerator.h
+++ b/Source/cmVisualStudio10TargetGenerator.h
@@ -57,6 +57,7 @@ private:
   void WriteProjectConfigurations();
   void WriteProjectConfigurationValues();
   void WriteMSToolConfigurationValues(std::string const& config);
+  void WriteHeaderSource(cmSourceFile const* sf);
   void WriteExtraSource(cmSourceFile const* sf);
   void WriteSource(std::string const& tool, cmSourceFile const* sf,
                    const char* end = 0);

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2df389115e7636756cd1f1d6c422651b4899522d
commit 2df389115e7636756cd1f1d6c422651b4899522d
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 29 13:32:22 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 29 15:06:26 2014 -0400

    VS: Refactor handling of "extra" sources in VS >= 10
    
    Create a WriteExtraSource method to handle writing of sources not
    classified by cmGeneratorTarget for any particular purpose.  This
    will be useful to add special VS-specific handling for some sources.

diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index ca6c41e..d50bdde 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -997,6 +997,11 @@ WriteGroupSources(const char* name,
   this->WriteString("</ItemGroup>\n", 1);
 }
 
+void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf)
+{
+  this->WriteSource("None", sf);
+}
+
 void cmVisualStudio10TargetGenerator::WriteSource(
   std::string const& tool, cmSourceFile const* sf, const char* end)
 {
@@ -1157,7 +1162,11 @@ void cmVisualStudio10TargetGenerator::WriteAllSources()
 
   std::vector<cmSourceFile const*> extraSources;
   this->GeneratorTarget->GetExtraSources(extraSources, "");
-  this->WriteSources("None", extraSources);
+  for(std::vector<cmSourceFile const*>::const_iterator
+        si = extraSources.begin(); si != extraSources.end(); ++si)
+    {
+    this->WriteExtraSource(*si);
+    }
 
   // Add object library contents as external objects.
   std::vector<std::string> objs;
diff --git a/Source/cmVisualStudio10TargetGenerator.h b/Source/cmVisualStudio10TargetGenerator.h
index 23d86da..8966f93 100644
--- a/Source/cmVisualStudio10TargetGenerator.h
+++ b/Source/cmVisualStudio10TargetGenerator.h
@@ -57,6 +57,7 @@ private:
   void WriteProjectConfigurations();
   void WriteProjectConfigurationValues();
   void WriteMSToolConfigurationValues(std::string const& config);
+  void WriteExtraSource(cmSourceFile const* sf);
   void WriteSource(std::string const& tool, cmSourceFile const* sf,
                    const char* end = 0);
   void WriteSources(std::string const& tool,

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=143b40051a71c2f53e487be69069f1932ccc25d1
commit 143b40051a71c2f53e487be69069f1932ccc25d1
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 29 13:26:19 2014 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 29 15:06:24 2014 -0400

    VS: Convert 'WriteSource' tool argument to std::string

diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index 5674317..ca6c41e 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -998,7 +998,7 @@ WriteGroupSources(const char* name,
 }
 
 void cmVisualStudio10TargetGenerator::WriteSource(
-  const char* tool, cmSourceFile const* sf, const char* end)
+  std::string const& tool, cmSourceFile const* sf, const char* end)
 {
   // Visual Studio tools append relative paths to the current dir, as in:
   //
@@ -1055,7 +1055,7 @@ void cmVisualStudio10TargetGenerator::WriteSource(
 }
 
 void cmVisualStudio10TargetGenerator::WriteSources(
-  const char* tool, std::vector<cmSourceFile const*> const& sources)
+  std::string const& tool, std::vector<cmSourceFile const*> const& sources)
 {
   for(std::vector<cmSourceFile const*>::const_iterator
         si = sources.begin(); si != sources.end(); ++si)
@@ -1086,7 +1086,7 @@ void cmVisualStudio10TargetGenerator::WriteAllSources()
       si != objectSources.end(); ++si)
     {
     const std::string& lang = (*si)->GetLanguage();
-    const char* tool = NULL;
+    std::string tool;
     if (lang == "C"|| lang == "CXX")
       {
       tool = "ClCompile";
@@ -1101,7 +1101,7 @@ void cmVisualStudio10TargetGenerator::WriteAllSources()
       tool = "ResourceCompile";
       }
 
-    if (tool)
+    if (!tool.empty())
       {
       this->WriteSource(tool, *si, " ");
       if (this->OutputSourceSpecificFlags(*si))
diff --git a/Source/cmVisualStudio10TargetGenerator.h b/Source/cmVisualStudio10TargetGenerator.h
index 7a329cb..23d86da 100644
--- a/Source/cmVisualStudio10TargetGenerator.h
+++ b/Source/cmVisualStudio10TargetGenerator.h
@@ -57,9 +57,9 @@ private:
   void WriteProjectConfigurations();
   void WriteProjectConfigurationValues();
   void WriteMSToolConfigurationValues(std::string const& config);
-  void WriteSource(const char* tool, cmSourceFile const* sf,
+  void WriteSource(std::string const& tool, cmSourceFile const* sf,
                    const char* end = 0);
-  void WriteSources(const char* tool,
+  void WriteSources(std::string const& tool,
                     std::vector<cmSourceFile const*> const&);
   void WriteAllSources();
   void WriteDotNetReferences();

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

Summary of changes:
 Source/cmVisualStudio10TargetGenerator.cxx |   69 ++++++++++++++++++++--------
 Source/cmVisualStudio10TargetGenerator.h   |    6 ++-
 2 files changed, 54 insertions(+), 21 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list