[CMake] Add support for Metro apps

Minmin Gong minmin.gong at gmail.com
Wed Nov 27 00:40:00 EST 2013


In our project, we need to build an Win8+ Metro app. Currently the CMake do
support VS_WINRT_EXTENSIONS. However, if you want to build an exe instead
of dll or lib, even with x86 or x64, it always fails because lacking of
some tags in vcxproj and sln.

The requirements about it in our project are:
1. The primary platform is x86 and x64.
2. Support both MSBuild and VS2012+ for building.

So I made this patch for WinRT/Metro apps, based on the master branch of
CMake. In this patch,

1. Add AppContainerApplication, ApplicationType, MinimumVisualStudioVersion
and ApplicationTypeRevision tags to vcxproj when VS_WINRT_EXTENSIONS is on.
2. Recognize AppxManifest file type.
3. A dedicated boolean source file property "VS_WINRT_CONTENT" is added.
Generator expressions is also supported here.
4. Add "Deploy.0" in .sln for deploy WinRT apps by default, as WinCE apps
do.
5. Add PackageCertificateKeyFile tag to vcxproj for package certification.

After that, an app with x86 or x64 configuration can be correctly built an
packed. Do you have some more suggestions about this feature?
Thanks.

-- 
Minmin Gong
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20131127/19e2d471/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-CMake-Add-support-for-WinRT-platforms-and-metro-apps.patch
Type: application/octet-stream
Size: 12666 bytes
Desc: not available
URL: <http://www.cmake.org/pipermail/cmake/attachments/20131127/19e2d471/attachment-0001.obj>


More information about the CMake mailing list