|
|
@@ -205,12 +205,11 @@ static bool cmVS10IsTargetsFile(std::string const& path)
|
|
|
return cmSystemTools::Strucmp(ext.c_str(), ".targets") == 0;
|
|
|
}
|
|
|
|
|
|
-static std::string computeProjectFileExtension(cmGeneratorTarget const* t,
|
|
|
- const std::string& config)
|
|
|
+static std::string computeProjectFileExtension(cmGeneratorTarget const* t)
|
|
|
{
|
|
|
std::string res;
|
|
|
res = ".vcxproj";
|
|
|
- if (t->HasLanguage("CSharp", config)) {
|
|
|
+ if (t->IsCSharpOnly()) {
|
|
|
res = ".csproj";
|
|
|
}
|
|
|
return res;
|
|
|
@@ -305,8 +304,8 @@ void cmVisualStudio10TargetGenerator::Generate()
|
|
|
this->GeneratorTarget->GetProperty("EXTERNAL_MSPROJECT")) {
|
|
|
return;
|
|
|
}
|
|
|
- const std::string ProjectFileExtension = computeProjectFileExtension(
|
|
|
- this->GeneratorTarget, *this->Configurations.begin());
|
|
|
+ const std::string ProjectFileExtension =
|
|
|
+ computeProjectFileExtension(this->GeneratorTarget);
|
|
|
if (ProjectFileExtension == ".vcxproj") {
|
|
|
this->ProjectType = vcxproj;
|
|
|
this->Managed = false;
|
|
|
@@ -1398,8 +1397,7 @@ void cmVisualStudio10TargetGenerator::WriteGroups()
|
|
|
std::string path = this->LocalGenerator->GetCurrentBinaryDirectory();
|
|
|
path += "/";
|
|
|
path += this->Name;
|
|
|
- path += computeProjectFileExtension(this->GeneratorTarget,
|
|
|
- *this->Configurations.begin());
|
|
|
+ path += computeProjectFileExtension(this->GeneratorTarget);
|
|
|
path += ".filters";
|
|
|
cmGeneratedFileStream fout(path);
|
|
|
fout.SetCopyIfDifferent(true);
|
|
|
@@ -3800,7 +3798,7 @@ void cmVisualStudio10TargetGenerator::WriteProjectReferences(Elem& e0)
|
|
|
path = lg->GetCurrentBinaryDirectory();
|
|
|
path += "/";
|
|
|
path += dt->GetName();
|
|
|
- path += computeProjectFileExtension(dt, *this->Configurations.begin());
|
|
|
+ path += computeProjectFileExtension(dt);
|
|
|
}
|
|
|
ConvertToWindowsSlash(path);
|
|
|
Elem e2(e1, "ProjectReference");
|
|
|
@@ -3826,7 +3824,7 @@ void cmVisualStudio10TargetGenerator::WriteProjectReferences(Elem& e0)
|
|
|
}
|
|
|
// Workaround for static library C# targets
|
|
|
if (referenceNotManaged && dt->GetType() == cmStateEnums::STATIC_LIBRARY) {
|
|
|
- referenceNotManaged = !dt->HasLanguage("CSharp", "");
|
|
|
+ referenceNotManaged = !dt->IsCSharpOnly();
|
|
|
}
|
|
|
if (referenceNotManaged) {
|
|
|
e2.Element("ReferenceOutputAssembly", "false");
|