[cmake-developers] [CMake 0013498]: CMake does not fully support Visual Studio 11 WinRT project type

Mantis Bug Tracker mantis at public.kitware.com
Thu Aug 30 11:50:50 EDT 2012


The following issue has been SUBMITTED. 
====================================================================== 
http://www.cmake.org/Bug/view.php?id=13498 
====================================================================== 
Reported By:                Andrzej
Assigned To:                
====================================================================== 
Project:                    CMake
Issue ID:                   13498
Category:                   CMake
Reproducibility:            always
Severity:                   feature
Priority:                   normal
Status:                     new
====================================================================== 
Date Submitted:             2012-08-30 11:50 EDT
Last Modified:              2012-08-30 11:50 EDT
====================================================================== 
Summary:                    CMake does not fully support Visual Studio 11 WinRT
project type
Description: 
CMake currently does not fully support setting project type as needed to develop
WinRT applications for Windows 8 with the Visual Studio 11 generator.

A lot of work was done here : http://www.cmake.org/Bug/view.php?id=12930

But that is not enought.

VS_WINRT_EXTENSIONS add <WindowsAppContainer>true</WindowsAppContainer> tag to
<PropertyGroup> tag witch have specific "Condition".

Example output : 

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"
Label="Configuration">
    <ConfigurationType>Application</ConfigurationType>
    <PlatformToolset>v110</PlatformToolset>
    <WindowsAppContainer>true</WindowsAppContainer>
  </PropertyGroup>

Because of that we are able to compile windows runtime code and generate .exe
code.

But the next step after compilation is to deploy app and try to debug. We need
<AppContainerApplication>true</AppContainerApplication> tag to obtain that
feature on. That will be in <PropertyGroup Label="Globals"> tag. 

Example :

  <PropertyGroup Label="Globals">
    <ProjectGuid>{93441f5d-57bf-4021-a2e3-973fac0ac3c4}</ProjectGuid>
    <RootNamespace>Direct3DApp1</RootNamespace>
    <DefaultLanguage>en-US</DefaultLanguage>
    <MinimumVisualStudioVersion>11.0</MinimumVisualStudioVersion>
    <AppContainerApplication>true</AppContainerApplication>
  </PropertyGroup>

  (source from Visual Studio Professional 2012 Direct3DApp sample )

Generaly using <AppContainerApplication> instead of <WindowsAppContainer> will
make whole process more easly. <AppContainerApplication> in "Globals" label
override all "Configuration" labels and make it possible to deploy and debug
WinRT app. Additionally <AppContainerApplication> make "Windows Store App
Support" to grey and hardcode "Yes" statement. 

Pure Visual Studio 2012 WinRT sample app use only <AppContainerApplication> tag.
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2012-08-30 11:50 Andrzej        New Issue                                    
======================================================================




More information about the cmake-developers mailing list