VS: Port TargetIsFortranOnly to cmGeneratorTarget

This commit is contained in:
Stephen Kelly 2015-10-23 18:26:43 +02:00
parent 84fb579fc8
commit 8ac8739b2e
7 changed files with 7 additions and 9 deletions

View File

@ -158,7 +158,7 @@ cmGlobalVisualStudio71Generator::WriteProject(std::ostream& fout,
const char* ext = ".vcproj";
const char* project =
"Project(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"";
if(this->TargetIsFortranOnly(*t->Target))
if(this->TargetIsFortranOnly(t))
{
ext = ".vfproj";
project = "Project(\"{6989167D-11E4-40FE-8C1A-2192A86A7E90}\") = \"";

View File

@ -692,7 +692,7 @@ void cmGlobalVisualStudio7Generator::WriteProject(std::ostream& fout,
const char* ext = ".vcproj";
const char* project =
"Project(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"";
if(this->TargetIsFortranOnly(*target->Target))
if(this->TargetIsFortranOnly(target))
{
ext = ".vfproj";
project = "Project(\"{6989167D-11E4-40FE-8C1A-2192A86A7E90}\") = \"";

View File

@ -831,10 +831,8 @@ void RegisterVisualStudioMacros(const std::string& macrosFile,
}
}
bool
cmGlobalVisualStudioGenerator::TargetIsFortranOnly(cmTarget const& target)
cmGlobalVisualStudioGenerator::TargetIsFortranOnly(cmGeneratorTarget const* gt)
{
cmGeneratorTarget* gt = this->GetGeneratorTarget(&target);
// check to see if this is a fortran build
std::set<std::string> languages;
{

View File

@ -73,7 +73,7 @@ public:
const char* vsSolutionFile = 0);
// return true if target is fortran only
bool TargetIsFortranOnly(cmTarget const& t);
bool TargetIsFortranOnly(const cmGeneratorTarget *gt);
/** Get the top-level registry key for this VS version. */
std::string GetRegistryBase();

View File

@ -83,7 +83,7 @@ void cmLocalVisualStudio10Generator::Generate()
continue;
}
if(static_cast<cmGlobalVisualStudioGenerator*>(this->GlobalGenerator)
->TargetIsFortranOnly(*(*l)->Target))
->TargetIsFortranOnly(*l))
{
this->CreateSingleVCProj((*l)->GetName().c_str(), *l);
}

View File

@ -229,7 +229,7 @@ void cmLocalVisualStudio7Generator
{
cmGlobalVisualStudioGenerator* gg
= static_cast<cmGlobalVisualStudioGenerator*>(this->GlobalGenerator);
this->FortranProject = gg->TargetIsFortranOnly(*target->Target);
this->FortranProject = gg->TargetIsFortranOnly(target);
this->WindowsCEProject = gg->TargetsWindowsCE();
// Intel Fortran for VS10 uses VS9 format ".vfproj" files.

View File

@ -2886,7 +2886,7 @@ void cmVisualStudio10TargetGenerator::WriteProjectReferences()
// skip fortran targets as they can not be processed by MSBuild
// the only reference will be in the .sln file
if(static_cast<cmGlobalVisualStudioGenerator*>(this->GlobalGenerator)
->TargetIsFortranOnly(*dt->Target))
->TargetIsFortranOnly(dt))
{
continue;
}