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