summaryrefslogtreecommitdiff
path: root/Source/cmGlobalVisualStudio7Generator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-09-05 14:53:01 -0400
committerBrad King <brad.king@kitware.com>2014-09-05 15:03:56 -0400
commitb97736a23d5d83eb65b6ee0b0429ada9fb331c12 (patch)
tree5aaf927d1c3e6fe42c60a6321ab5cf573d568a08 /Source/cmGlobalVisualStudio7Generator.cxx
parent0f1f1271e6ddcea9074afe79685a731d4295c1f5 (diff)
downloadcmake-b97736a23d5d83eb65b6ee0b0429ada9fb331c12.tar.gz
VS: Implement CMAKE_GENERATOR_PLATFORM for VS >= 8
For VS generator names that do not specify the platform name, read CMAKE_GENERATOR_PLATFORM to get it. Extend the RunCMake.GeneratorPlatform test with a case covering use of the x64 platform when the test generator is a Visual Studio generator whose name does not specify a platform.
Diffstat (limited to 'Source/cmGlobalVisualStudio7Generator.cxx')
-rw-r--r--Source/cmGlobalVisualStudio7Generator.cxx17
1 files changed, 14 insertions, 3 deletions
diff --git a/Source/cmGlobalVisualStudio7Generator.cxx b/Source/cmGlobalVisualStudio7Generator.cxx
index cb82e54f87..401e4758d1 100644
--- a/Source/cmGlobalVisualStudio7Generator.cxx
+++ b/Source/cmGlobalVisualStudio7Generator.cxx
@@ -262,6 +262,10 @@ cmLocalGenerator *cmGlobalVisualStudio7Generator::CreateLocalGenerator()
//----------------------------------------------------------------------------
std::string const& cmGlobalVisualStudio7Generator::GetPlatformName() const
{
+ if(!this->GeneratorPlatform.empty())
+ {
+ return this->GeneratorPlatform;
+ }
return this->DefaultPlatformName;
}
@@ -269,6 +273,15 @@ std::string const& cmGlobalVisualStudio7Generator::GetPlatformName() const
bool cmGlobalVisualStudio7Generator::SetSystemName(std::string const& s,
cmMakefile* mf)
{
+ mf->AddDefinition("CMAKE_VS_INTEL_Fortran_PROJECT_VERSION",
+ this->GetIntelProjectVersion());
+ return this->cmGlobalVisualStudioGenerator::SetSystemName(s, mf);
+}
+
+//----------------------------------------------------------------------------
+bool cmGlobalVisualStudio7Generator::SetGeneratorPlatform(std::string const& p,
+ cmMakefile* mf)
+{
if(this->GetPlatformName() == "x64")
{
mf->AddDefinition("CMAKE_FORCE_WIN64", "TRUE");
@@ -278,9 +291,7 @@ bool cmGlobalVisualStudio7Generator::SetSystemName(std::string const& s,
mf->AddDefinition("CMAKE_FORCE_IA64", "TRUE");
}
mf->AddDefinition("CMAKE_VS_PLATFORM_NAME", this->GetPlatformName().c_str());
- mf->AddDefinition("CMAKE_VS_INTEL_Fortran_PROJECT_VERSION",
- this->GetIntelProjectVersion());
- return this->cmGlobalVisualStudioGenerator::SetSystemName(s, mf);
+ return this->cmGlobalVisualStudioGenerator::SetGeneratorPlatform(p, mf);
}
void cmGlobalVisualStudio7Generator::GenerateConfigurations(cmMakefile* mf)