VS: Generate Nsight Tegra project revision number
Nsight Tegra 2.0 will be revision '8'. Generate this revision number and add a NsightTegraUpgradeOnceWithoutPrompt element to tell newer versions not to prompt when upgrading the generated project file.
This commit is contained in:
parent
5365c9ac37
commit
69e198dc3f
|
@ -619,6 +619,12 @@ bool cmGlobalVisualStudio10Generator::IsNsightTegra() const
|
|||
return !this->NsightTegraVersion.empty();
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
std::string cmGlobalVisualStudio10Generator::GetNsightTegraVersion() const
|
||||
{
|
||||
return this->NsightTegraVersion;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
std::string cmGlobalVisualStudio10Generator::GetInstalledNsightTegraVersion()
|
||||
{
|
||||
|
|
|
@ -61,6 +61,7 @@ public:
|
|||
|
||||
/** Generating for Nsight Tegra VS plugin? */
|
||||
bool IsNsightTegra() const;
|
||||
std::string GetNsightTegraVersion() const;
|
||||
|
||||
/** The toolset name for the target platform. */
|
||||
const char* GetPlatformToolset() const;
|
||||
|
|
|
@ -181,6 +181,14 @@ cmVisualStudio10TargetGenerator(cmTarget* target,
|
|||
this->GUID = this->GlobalGenerator->GetGUID(this->Name.c_str());
|
||||
this->Platform = gg->GetPlatformName();
|
||||
this->NsightTegra = gg->IsNsightTegra();
|
||||
for(int i =
|
||||
sscanf(gg->GetNsightTegraVersion().c_str(), "%u.%u.%u.%u",
|
||||
&this->NsightTegraVersion[0], &this->NsightTegraVersion[1],
|
||||
&this->NsightTegraVersion[2], &this->NsightTegraVersion[3]);
|
||||
i < 4; ++i)
|
||||
{
|
||||
this->NsightTegraVersion[i] = 0;
|
||||
}
|
||||
this->MSTools = !this->NsightTegra;
|
||||
this->TargetCompileAsWinRT = false;
|
||||
this->BuildFileStream = 0;
|
||||
|
@ -316,9 +324,24 @@ void cmVisualStudio10TargetGenerator::Generate()
|
|||
if(this->NsightTegra)
|
||||
{
|
||||
this->WriteString("<PropertyGroup Label=\"NsightTegraProject\">\n", 1);
|
||||
this->WriteString("<NsightTegraProjectRevisionNumber>"
|
||||
"7"
|
||||
"</NsightTegraProjectRevisionNumber>\n", 2);
|
||||
if(this->NsightTegraVersion[0] >= 2)
|
||||
{
|
||||
// Nsight Tegra 2.0 uses project revision 8.
|
||||
this->WriteString("<NsightTegraProjectRevisionNumber>"
|
||||
"8"
|
||||
"</NsightTegraProjectRevisionNumber>\n", 2);
|
||||
// Tell newer versions to upgrade silently when loading.
|
||||
this->WriteString("<NsightTegraUpgradeOnceWithoutPrompt>"
|
||||
"true"
|
||||
"</NsightTegraUpgradeOnceWithoutPrompt>\n", 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Require Nsight Tegra 1.6 for JCompile support.
|
||||
this->WriteString("<NsightTegraProjectRevisionNumber>"
|
||||
"7"
|
||||
"</NsightTegraProjectRevisionNumber>\n", 2);
|
||||
}
|
||||
this->WriteString("</PropertyGroup>\n", 1);
|
||||
}
|
||||
|
||||
|
|
|
@ -142,6 +142,7 @@ private:
|
|||
std::string Name;
|
||||
bool MSTools;
|
||||
bool NsightTegra;
|
||||
int NsightTegraVersion[4];
|
||||
bool TargetCompileAsWinRT;
|
||||
cmGlobalVisualStudio10Generator* GlobalGenerator;
|
||||
cmGeneratedFileStream* BuildFileStream;
|
||||
|
|
Loading…
Reference in New Issue