VS: Map Nsight Tegra file types in .vcxproj files

Map ".java" to JCompile, ".asm" and ".s" to ClCompile, and a few
Android-specific source file names to AndroidBuild.  This allows
Nsight Tegra 1.6 and above to check up-to-dateness of such sources.
Bump NsightTegraProjectRevisionNumber to 7 to allow these fields.
This commit is contained in:
Brad King 2014-09-24 14:27:18 -04:00
parent 178f56a579
commit 5365c9ac37
1 changed files with 23 additions and 1 deletions

View File

@ -317,7 +317,7 @@ void cmVisualStudio10TargetGenerator::Generate()
{ {
this->WriteString("<PropertyGroup Label=\"NsightTegraProject\">\n", 1); this->WriteString("<PropertyGroup Label=\"NsightTegraProject\">\n", 1);
this->WriteString("<NsightTegraProjectRevisionNumber>" this->WriteString("<NsightTegraProjectRevisionNumber>"
"6" "7"
"</NsightTegraProjectRevisionNumber>\n", 2); "</NsightTegraProjectRevisionNumber>\n", 2);
this->WriteString("</PropertyGroup>\n", 1); this->WriteString("</PropertyGroup>\n", 1);
} }
@ -1200,6 +1200,28 @@ void cmVisualStudio10TargetGenerator::WriteExtraSource(cmSourceFile const* sf)
{ {
tool = "XML"; tool = "XML";
} }
if(this->NsightTegra)
{
// Nsight Tegra needs specific file types to check up-to-dateness.
std::string name =
cmSystemTools::LowerCase(sf->GetLocation().GetName());
if(name == "androidmanifest.xml" ||
name == "build.xml" ||
name == "proguard.cfg" ||
name == "proguard-project.txt" ||
ext == "properties")
{
tool = "AndroidBuild";
}
else if(ext == "java")
{
tool = "JCompile";
}
else if(ext == "asm" || ext == "s")
{
tool = "ClCompile";
}
}
std::string deployContent; std::string deployContent;
if(this->GlobalGenerator->TargetsWindowsPhone() || if(this->GlobalGenerator->TargetsWindowsPhone() ||