CMakeDetermineCompilerId: Recognize WindowsPhone and WindowsStore

When CMAKE_SYSTEM_NAME is set to target one of these, add
ApplicationType and ApplicationTypeRevision elements to the .vcxproj
file used to identify the compiler so that the WindowsPhone or
WindowsStore toolchains can work.

Co-Author: Brad King <brad.king@kitware.com>
This commit is contained in:
Gilles Khouzam 2014-07-28 14:27:59 -04:00 committed by Brad King
parent d7938bff37
commit b94ddf6cd7
2 changed files with 14 additions and 0 deletions

View File

@ -168,6 +168,18 @@ Id flags: ${testflags}
else()
set(id_toolset "")
endif()
if(CMAKE_SYSTEM_NAME STREQUAL "WindowsPhone")
set(id_system "<ApplicationType>Windows Phone</ApplicationType>")
elseif(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(id_system "<ApplicationType>Windows Store</ApplicationType>")
else()
set(id_system "")
endif()
if(id_system AND CMAKE_SYSTEM_VERSION)
set(id_system_version "<ApplicationTypeRevision>${CMAKE_SYSTEM_VERSION}</ApplicationTypeRevision>")
else()
set(id_system_version "")
endif()
if(CMAKE_VS_WINCE_VERSION)
set(id_entrypoint "mainACRTStartup")
if("${vs_version}" VERSION_LESS 9)

View File

@ -10,6 +10,8 @@
<ProjectGuid>{CAE07175-D007-4FC3-BFE8-47B392814159}</ProjectGuid>
<RootNamespace>CompilerId@id_lang@</RootNamespace>
<Keyword>Win32Proj</Keyword>
@id_system@
@id_system_version@
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|@id_platform@'" Label="Configuration">