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  307cb3c1f24857f4ff93747c14fb268d6b20fdb4 (commit)
       via  f27492a4db2c56f334b2ca5c746b01b8e9a04995 (commit)
       via  4f78b9ff2df89d5b4104f92251feb0a7f0976d7f (commit)
      from  c6eb6f124e422969b4d4b7a64dd86122bbc058be (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=307cb3c1f24857f4ff93747c14fb268d6b20fdb4
commit 307cb3c1f24857f4ff93747c14fb268d6b20fdb4
Merge: c6eb6f1 f27492a
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Wed Oct 19 11:15:16 2016 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Wed Oct 19 11:15:16 2016 -0400

    Merge topic 'vs-csharp-prep' into next
    
    f27492a4 VS: Add internal API for detecting "managed" projects
    4f78b9ff VS: Add CSharp project uuid and file extension


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f27492a4db2c56f334b2ca5c746b01b8e9a04995
commit f27492a4db2c56f334b2ca5c746b01b8e9a04995
Author:     Michael Stürmer <michael.stuer...@schaeffler.com>
AuthorDate: Fri Sep 23 12:15:40 2016 +0200
Commit:     Brad King <brad.k...@kitware.com>
CommitDate: Wed Oct 19 11:14:19 2016 -0400

    VS: Add internal API for detecting "managed" projects
    
    This is in preparation for adding CSharp language support to the VS
    generator.

diff --git a/Source/cmVisualStudioGeneratorOptions.cxx 
b/Source/cmVisualStudioGeneratorOptions.cxx
index 9badda6..4be183d 100644
--- a/Source/cmVisualStudioGeneratorOptions.cxx
+++ b/Source/cmVisualStudioGeneratorOptions.cxx
@@ -137,6 +137,11 @@ bool cmVisualStudioGeneratorOptions::IsWinRt() const
   return this->FlagMap.find("CompileAsWinRT") != this->FlagMap.end();
 }
 
+bool cmVisualStudioGeneratorOptions::IsManaged() const
+{
+  return this->FlagMap.find("CompileAsManaged") != this->FlagMap.end();
+}
+
 bool cmVisualStudioGeneratorOptions::UsingUnicode() const
 {
   // Look for the a _UNICODE definition.
diff --git a/Source/cmVisualStudioGeneratorOptions.h 
b/Source/cmVisualStudioGeneratorOptions.h
index 4eeae3d..0a0b96d 100644
--- a/Source/cmVisualStudioGeneratorOptions.h
+++ b/Source/cmVisualStudioGeneratorOptions.h
@@ -49,6 +49,7 @@ public:
 
   bool IsDebug() const;
   bool IsWinRt() const;
+  bool IsManaged() const;
   // Write options to output.
   void OutputPreprocessorDefinitions(std::ostream& fout, const char* prefix,
                                      const char* suffix,

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4f78b9ff2df89d5b4104f92251feb0a7f0976d7f
commit 4f78b9ff2df89d5b4104f92251feb0a7f0976d7f
Author:     Michael Stürmer <michael.stuer...@schaeffler.com>
AuthorDate: Fri Sep 23 12:15:40 2016 +0200
Commit:     Brad King <brad.k...@kitware.com>
CommitDate: Wed Oct 19 11:14:16 2016 -0400

    VS: Add CSharp project uuid and file extension
    
    This is in preparation for adding CSharp language support to the VS
    generator.

diff --git a/Source/cmGlobalVisualStudio71Generator.cxx 
b/Source/cmGlobalVisualStudio71Generator.cxx
index ffd87e2..1fa2741 100644
--- a/Source/cmGlobalVisualStudio71Generator.cxx
+++ b/Source/cmGlobalVisualStudio71Generator.cxx
@@ -159,6 +159,10 @@ void 
cmGlobalVisualStudio71Generator::WriteProject(std::ostream& fout,
     ext = ".vfproj";
     project = "Project(\"{6989167D-11E4-40FE-8C1A-2192A86A7E90}\") = \"";
   }
+  if (this->TargetIsCSharpOnly(t)) {
+    ext = ".csproj";
+    project = "Project(\"{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}\") = \"";
+  }
   const char* targetExt = t->GetProperty("GENERATOR_FILE_NAME_EXT");
   if (targetExt) {
     ext = targetExt;
diff --git a/Source/cmGlobalVisualStudioGenerator.cxx 
b/Source/cmGlobalVisualStudioGenerator.cxx
index 6296dd2..b277391 100644
--- a/Source/cmGlobalVisualStudioGenerator.cxx
+++ b/Source/cmGlobalVisualStudioGenerator.cxx
@@ -734,6 +734,27 @@ bool cmGlobalVisualStudioGenerator::TargetIsFortranOnly(
   return false;
 }
 
+bool cmGlobalVisualStudioGenerator::TargetIsCSharpOnly(
+  cmGeneratorTarget const* gt)
+{
+  // check to see if this is a C# build
+  std::set<std::string> languages;
+  {
+    // Issue diagnostic if the source files depend on the config.
+    std::vector<cmSourceFile*> sources;
+    if (!gt->GetConfigCommonSourceFiles(sources)) {
+      return false;
+    }
+  }
+  gt->GetLanguages(languages, "");
+  if (languages.size() == 1) {
+    if (*languages.begin() == "CSharp") {
+      return true;
+    }
+  }
+  return false;
+}
+
 bool cmGlobalVisualStudioGenerator::TargetCompare::operator()(
   cmGeneratorTarget const* l, cmGeneratorTarget const* r) const
 {
diff --git a/Source/cmGlobalVisualStudioGenerator.h 
b/Source/cmGlobalVisualStudioGenerator.h
index a774d96..c8fc984 100644
--- a/Source/cmGlobalVisualStudioGenerator.h
+++ b/Source/cmGlobalVisualStudioGenerator.h
@@ -69,6 +69,9 @@ public:
   // return true if target is fortran only
   bool TargetIsFortranOnly(const cmGeneratorTarget* gt);
 
+  // return true if target is C# only
+  static bool TargetIsCSharpOnly(cmGeneratorTarget const* gt);
+
   /** Get the top-level registry key for this VS version.  */
   std::string GetRegistryBase();
 

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

Summary of changes:
 Source/cmGlobalVisualStudio71Generator.cxx |    4 ++++
 Source/cmGlobalVisualStudioGenerator.cxx   |   21 +++++++++++++++++++++
 Source/cmGlobalVisualStudioGenerator.h     |    3 +++
 Source/cmVisualStudioGeneratorOptions.cxx  |    5 +++++
 Source/cmVisualStudioGeneratorOptions.h    |    1 +
 5 files changed, 34 insertions(+)


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits

Reply via email to