[CMake] Add support for Metro apps

Minmin Gong minmin.gong at gmail.com
Fri Jan 31 23:38:27 EST 2014


I've updated my patch based on comments in
http://www.cmake.org/Bug/view.php?id=13511#c35015.

Minmin


2014-01-31 Minmin Gong <minmin.gong at gmail.com>:

> Here comes a new version of this patch. In this version, ARM are also
> supported. Modifications include:
> 1. Determine MSVC ARM compiler.
>    Cmake can determine and test VC's x86-arm compiler correctly, and mark
> it as cross compiling. This feature is inspired by Martell Malone's patch
> in http://www.cmake.org/Bug/view.php?id=13511#c32952.
> 2. Modify ARM's utility project to Win32 configuration.
>    Utility projects, such as ALL_BUILD and ZERO_CHECKS, can't be win store
> or ARM configuration. They are changed to Win32 by default.
>
> With this patch, any configuration targeting WinRT platform should be
> supported. The project files can be generated, built and depolyed well.
>
> Minmin
>
>
>
> 2013-11-27 Minmin Gong <minmin.gong at gmail.com>:
>
> 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
>>
>
>
>
> --
> Minmin Gong
>



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


More information about the CMake mailing list