summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-07-29 15:42:30 (GMT)
committerBrad King <brad.king@kitware.com>2014-07-31 18:08:43 (GMT)
commit3abd150ce9df03e24a903dedc952339b58ba79cb (patch)
tree3d6f13c43dfb8bcfe19f46cf339f445f85f9b786 /Source
parentc1580a9217ee2447433c76eca2ad0e6be6347a57 (diff)
downloadCMake-3abd150ce9df03e24a903dedc952339b58ba79cb.zip
CMake-3abd150ce9df03e24a903dedc952339b58ba79cb.tar.gz
CMake-3abd150ce9df03e24a903dedc952339b58ba79cb.tar.bz2
VS: Save WindowsPhone and WindowsStore system internally
Add boolean members to the VS >= 10 global generator to save whether CMAKE_SYSTEM_NAME is WindowsPhone or WindowsStore without having to repeat a string comparison. Inspired-by: Gilles Khouzam <gillesk@microsoft.com>
Diffstat (limited to 'Source')
-rw-r--r--Source/cmGlobalVisualStudio10Generator.cxx10
-rw-r--r--Source/cmGlobalVisualStudio10Generator.h10
2 files changed, 20 insertions, 0 deletions
diff --git a/Source/cmGlobalVisualStudio10Generator.cxx b/Source/cmGlobalVisualStudio10Generator.cxx
index 4007789..5189569 100644
--- a/Source/cmGlobalVisualStudio10Generator.cxx
+++ b/Source/cmGlobalVisualStudio10Generator.cxx
@@ -97,6 +97,8 @@ cmGlobalVisualStudio10Generator::cmGlobalVisualStudio10Generator(
this->ExpressEdition = cmSystemTools::ReadRegistryValue(
"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VCExpress\\10.0\\Setup\\VC;"
"ProductDir", vc10Express, cmSystemTools::KeyWOW64_32);
+ this->SystemIsWindowsPhone = false;
+ this->SystemIsWindowsStore = false;
this->MasmEnabled = false;
this->MSBuildCommandInitialized = false;
}
@@ -148,6 +150,14 @@ bool cmGlobalVisualStudio10Generator::SetSystemName(std::string const& s,
//----------------------------------------------------------------------------
bool cmGlobalVisualStudio10Generator::InitializeSystem(cmMakefile*)
{
+ if(this->SystemName == "WindowsPhone")
+ {
+ this->SystemIsWindowsPhone = true;
+ }
+ else if(this->SystemName == "WindowsStore")
+ {
+ this->SystemIsWindowsStore = true;
+ }
return true;
}
diff --git a/Source/cmGlobalVisualStudio10Generator.h b/Source/cmGlobalVisualStudio10Generator.h
index b042559..e3156bf 100644
--- a/Source/cmGlobalVisualStudio10Generator.h
+++ b/Source/cmGlobalVisualStudio10Generator.h
@@ -70,6 +70,14 @@ public:
/** Return the CMAKE_SYSTEM_VERSION. */
std::string const& GetSystemVersion() const { return this->SystemVersion; }
+ /** Return true if building for WindowsPhone */
+ bool TargetsWindowsPhone() const
+ { return this->SystemIsWindowsPhone; }
+
+ /** Return true if building for WindowsStore */
+ bool TargetsWindowsStore() const
+ { return this->SystemIsWindowsStore; }
+
/**
* Where does this version of Visual Studio look for macros for the
* current user? Returns the empty string if this version of Visual
@@ -108,6 +116,8 @@ protected:
std::string DefaultPlatformToolset;
std::string SystemName;
std::string SystemVersion;
+ bool SystemIsWindowsPhone;
+ bool SystemIsWindowsStore;
bool ExpressEdition;
bool MasmEnabled;