[Cmake-commits] CMake branch, next, updated. v3.7.0-rc1-672-g307cb3c
Brad King
brad.king at kitware.com
Wed Oct 19 11:15:17 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 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.king at kitware.com>
AuthorDate: Wed Oct 19 11:15:16 2016 -0400
Commit: CMake Topic Stage <kwrobot at 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.stuermer at schaeffler.com>
AuthorDate: Fri Sep 23 12:15:40 2016 +0200
Commit: Brad King <brad.king at 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.stuermer at schaeffler.com>
AuthorDate: Fri Sep 23 12:15:40 2016 +0200
Commit: Brad King <brad.king at 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
More information about the Cmake-commits
mailing list