diff options
author | Andrew Knight <andrew.knight@digia.com> | 2014-01-24 07:47:51 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-01-24 08:19:00 +0100 |
commit | f125822ee622dd9bf3cff867a6e023702aa4448d (patch) | |
tree | 4d4087c526eb693bc621aea542e27958d205a0ed /mkspecs/common | |
parent | 413129e20780cc42f1c7076974b123c08ba19093 (diff) |
WinRT: Provide qmake feature for generating a package manifest
This feature (package_manifest) generates a basic application manifest
from a template provided by the mkspec or the developer. It is meant to
deliver an out-of-the-box build experience without attempting to
exhaustively cover all manifest options. It is meant to be a starting
point which allows the developer to customize the manifest further. It
also becomes the default package manifest generator for Windows Phone,
replacing autogen_wmappmanifest.
Common variables, such as the target executable, are populated by qmake
in the newly created manifest. Default icons are also created if needed,
as the build will fail without them. The input manifest can be set by
assigning a file name to WINRT_MANIFEST. Additional options are
documented in the .prf file. If an existing (non-generated) manifest is
already in the directory, it will not be overwritten.
Task-number: QTBUG-35328
Change-Id: I57576a17ff9d2b564c0828f815949cb26d276bfd
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Diffstat (limited to 'mkspecs/common')
-rw-r--r-- | mkspecs/common/winrt_winphone/assets/logo_large.png | bin | 0 -> 2638 bytes | |||
-rw-r--r-- | mkspecs/common/winrt_winphone/assets/logo_medium.png | bin | 0 -> 1907 bytes | |||
-rw-r--r-- | mkspecs/common/winrt_winphone/assets/logo_small.png | bin | 0 -> 737 bytes | |||
-rw-r--r-- | mkspecs/common/winrt_winphone/assets/logo_splash.png | bin | 0 -> 5752 bytes | |||
-rw-r--r-- | mkspecs/common/winrt_winphone/assets/logo_store.png | bin | 0 -> 1159 bytes | |||
-rw-r--r-- | mkspecs/common/winrt_winphone/assets/tile_iconic_medium.png | bin | 0 -> 3166 bytes | |||
-rw-r--r-- | mkspecs/common/winrt_winphone/assets/tile_iconic_small.png | bin | 0 -> 1958 bytes | |||
-rw-r--r-- | mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in | 39 | ||||
-rw-r--r-- | mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in | 39 | ||||
-rw-r--r-- | mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in | 44 | ||||
-rw-r--r-- | mkspecs/common/winrt_winphone/qmake.conf | 3 |
11 files changed, 124 insertions, 1 deletions
diff --git a/mkspecs/common/winrt_winphone/assets/logo_large.png b/mkspecs/common/winrt_winphone/assets/logo_large.png Binary files differnew file mode 100644 index 0000000000..069171ca4d --- /dev/null +++ b/mkspecs/common/winrt_winphone/assets/logo_large.png diff --git a/mkspecs/common/winrt_winphone/assets/logo_medium.png b/mkspecs/common/winrt_winphone/assets/logo_medium.png Binary files differnew file mode 100644 index 0000000000..fa0d9fb64a --- /dev/null +++ b/mkspecs/common/winrt_winphone/assets/logo_medium.png diff --git a/mkspecs/common/winrt_winphone/assets/logo_small.png b/mkspecs/common/winrt_winphone/assets/logo_small.png Binary files differnew file mode 100644 index 0000000000..2acac59e73 --- /dev/null +++ b/mkspecs/common/winrt_winphone/assets/logo_small.png diff --git a/mkspecs/common/winrt_winphone/assets/logo_splash.png b/mkspecs/common/winrt_winphone/assets/logo_splash.png Binary files differnew file mode 100644 index 0000000000..a2be79f5d7 --- /dev/null +++ b/mkspecs/common/winrt_winphone/assets/logo_splash.png diff --git a/mkspecs/common/winrt_winphone/assets/logo_store.png b/mkspecs/common/winrt_winphone/assets/logo_store.png Binary files differnew file mode 100644 index 0000000000..417ccdcb5f --- /dev/null +++ b/mkspecs/common/winrt_winphone/assets/logo_store.png diff --git a/mkspecs/common/winrt_winphone/assets/tile_iconic_medium.png b/mkspecs/common/winrt_winphone/assets/tile_iconic_medium.png Binary files differnew file mode 100644 index 0000000000..e42f8255db --- /dev/null +++ b/mkspecs/common/winrt_winphone/assets/tile_iconic_medium.png diff --git a/mkspecs/common/winrt_winphone/assets/tile_iconic_small.png b/mkspecs/common/winrt_winphone/assets/tile_iconic_small.png Binary files differnew file mode 100644 index 0000000000..c7b7ee7893 --- /dev/null +++ b/mkspecs/common/winrt_winphone/assets/tile_iconic_small.png diff --git a/mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in b/mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in new file mode 100644 index 0000000000..6a0ca444c3 --- /dev/null +++ b/mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in @@ -0,0 +1,39 @@ +<?xml version=\"1.0\" encoding=\"utf-8\"?> +<Package xmlns=\"http://schemas.microsoft.com/appx/2010/manifest\"> + <Identity + Name=\"$${WINRT_MANIFEST.identity}\" + ProcessorArchitecture=\"$${WINRT_MANIFEST.architecture}\" + Publisher=\"$${WINRT_MANIFEST.publisherid}\" + Version=\"$${WINRT_MANIFEST.version}\" /> + <Properties> + <DisplayName>$${WINRT_MANIFEST.name}</DisplayName> + <PublisherDisplayName>$${WINRT_MANIFEST.publisher}</PublisherDisplayName> + <Logo>$${WINRT_MANIFEST.logo_store}</Logo> + </Properties> + <Prerequisites> + <OSMinVersion>6.2.0</OSMinVersion> + <OSMaxVersionTested>6.3.0</OSMaxVersionTested> + </Prerequisites> + <Resources> + <Resource Language=\"en\" /> + </Resources> + <Applications> + <Application + Id=\"App\" + Executable=\"$${WINRT_MANIFEST.target}.exe\" + EntryPoint=\"$${WINRT_MANIFEST.target}.App\"> + <VisualElements + DisplayName=\"$${WINRT_MANIFEST.name}\" + Logo=\"$${WINRT_MANIFEST.logo_large}\" + SmallLogo=\"$${WINRT_MANIFEST.logo_small}\" + Description=\"$${WINRT_MANIFEST.description}\" + BackgroundColor=\"$${WINRT_MANIFEST.background}\" + ForegroundText=\"$${WINRT_MANIFEST.foreground}\"> + <SplashScreen Image=\"$${WINRT_MANIFEST.logo_splash}\" /> + </VisualElements> + </Application> + </Applications> + <Capabilities>$${WINRT_MANIFEST.capabilities}</Capabilities> + <Dependencies>$${WINRT_MANIFEST.dependencies}</Dependencies> +</Package> +<!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. Remove this line to prevent this file from getting overwritten by qmake. --> diff --git a/mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in b/mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in new file mode 100644 index 0000000000..e1d3d071e9 --- /dev/null +++ b/mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in @@ -0,0 +1,39 @@ +<?xml version=\"1.0\" encoding=\"utf-8\"?> +<Deployment xmlns=\"http://schemas.microsoft.com/windowsphone/2012/deployment\" AppPlatformVersion=\"8.0\"> + <DefaultLanguage xmlns=\"\" code=\"en-US\" /> + <App xmlns=\"\" + ProductID=\"$${WINRT_MANIFEST.identity}\" + Title=\"$${WINRT_MANIFEST.name}\" + RuntimeType=\"Modern Native\" + Version=\"$${WINRT_MANIFEST.version}\" + Genre=\"$${WINRT_MANIFEST.genre}\" + Author=\"$${WINRT_MANIFEST.author}\" + Description=\"$${WINRT_MANIFEST.description}\" + Publisher=\"$${WINRT_MANIFEST.publisher}\" + PublisherID=\"$${WINRT_MANIFEST.publisherid}\"> + <IconPath IsRelative=\"true\" IsResource=\"false\">$${WINRT_MANIFEST.logo_medium}</IconPath> + <Capabilities>$${WINRT_MANIFEST.capabilities}</Capabilities> + <Tasks> + <DefaultTask + Name=\"_default\" + ImagePath=\"$${WINRT_MANIFEST.target}.exe\" + ImageParams=\"$${WINRT_MANIFEST.arguments}\" /> + </Tasks> + <Tokens> + <PrimaryToken TokenID=\"$${WINRT_MANIFEST.target}\" TaskName=\"_default\"> + <TemplateIconic> + <SmallImageURI IsRelative=\"true\" IsResource=\"false\">$${WINRT_MANIFEST.tile_iconic_small}</SmallImageURI> + <IconImageURI IsRelative=\"true\" IsResource=\"false\">$${WINRT_MANIFEST.tile_iconic_medium}</IconImageURI> + <Title>$${WINRT_MANIFEST.name}</Title> + <BackgroundColor>$${WINRT_MANIFEST.background}</BackgroundColor> + </TemplateIconic> + </PrimaryToken> + </Tokens> + <ScreenResolutions> + <ScreenResolution Name=\"ID_RESOLUTION_WVGA\" /> + <ScreenResolution Name=\"ID_RESOLUTION_WXGA\" /> + <ScreenResolution Name=\"ID_RESOLUTION_HD720P\" /> + </ScreenResolutions> + </App> +</Deployment> +<!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. Remove this line to prevent this file from getting overwritten by qmake. --> diff --git a/mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in b/mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in new file mode 100644 index 0000000000..8c214871e3 --- /dev/null +++ b/mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in @@ -0,0 +1,44 @@ +<?xml version=\"1.0\" encoding=\"utf-8\"?> +<Package xmlns=\"http://schemas.microsoft.com/appx/2010/manifest\" xmlns:v2=\"http://schemas.microsoft.com/appx/2013/manifest\"> + <Identity + Name=\"$${WINRT_MANIFEST.identity}\" + ProcessorArchitecture=\"$${WINRT_MANIFEST.architecture}\" + Publisher=\"$${WINRT_MANIFEST.publisherid}\" + Version=\"$${WINRT_MANIFEST.version}\" /> + <Properties> + <DisplayName>$${WINRT_MANIFEST.name}</DisplayName> + <PublisherDisplayName>$${WINRT_MANIFEST.publisher}</PublisherDisplayName> + <Logo>$${WINRT_MANIFEST.logo_store}</Logo> + </Properties> + <Prerequisites> + <OSMinVersion>6.3.0</OSMinVersion> + <OSMaxVersionTested>6.3.0</OSMaxVersionTested> + </Prerequisites> + <Resources> + <Resource Language=\"en\" /> + </Resources> + <Applications> + <Application + Id=\"App\" + Executable=\"$${WINRT_MANIFEST.target}.exe\" + EntryPoint=\"$${WINRT_MANIFEST.target}.App\"> + <v2:VisualElements + DisplayName=\"$${WINRT_MANIFEST.name}\" + Description=\"$${WINRT_MANIFEST.description}\" + BackgroundColor=\"$${WINRT_MANIFEST.background}\" + ForegroundText=\"$${WINRT_MANIFEST.foreground}\" + Square150x150Logo=\"$${WINRT_MANIFEST.logo_large}\" + Square30x30Logo=\"$${WINRT_MANIFEST.logo_small}\"> + <v2:DefaultTile> + <v2:ShowNameOnTiles> + <v2:ShowOn Tile=\"square150x150Logo\" /> + </v2:ShowNameOnTiles> + </v2:DefaultTile> + <v2:SplashScreen Image=\"$${WINRT_MANIFEST.logo_splash}\" /> + </v2:VisualElements> + </Application> + </Applications> + <Capabilities>$${WINRT_MANIFEST.capabilities}</Capabilities> + <Dependencies>$${WINRT_MANIFEST.dependencies}</Dependencies> +</Package> +<!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. Remove this line to prevent this file from getting overwritten by qmake. --> diff --git a/mkspecs/common/winrt_winphone/qmake.conf b/mkspecs/common/winrt_winphone/qmake.conf index c990122ac6..d7296afe95 100644 --- a/mkspecs/common/winrt_winphone/qmake.conf +++ b/mkspecs/common/winrt_winphone/qmake.conf @@ -7,7 +7,7 @@ MAKEFILE_GENERATOR = MSBUILD QMAKE_COMPILER = msvc QMAKE_PLATFORM = winrt win32 -CONFIG += incremental flat precompile_header autogen_precompile_source debug_and_release debug_and_release_target no_generated_target_info autogen_wmappmanifest rtti +CONFIG += incremental flat precompile_header autogen_precompile_source debug_and_release debug_and_release_target no_generated_target_info package_manifest rtti DEFINES += UNICODE WIN32 QT_LARGEFILE_SUPPORT Q_BYTE_ORDER=Q_LITTLE_ENDIAN \ QT_NO_PRINTER QT_NO_PRINTDIALOG # TODO: Remove when printing is re-enabled @@ -90,4 +90,5 @@ include(../shell-win32.conf) VCPROJ_EXTENSION = .vcxproj VCSOLUTION_EXTENSION = .sln VCPROJ_KEYWORD = Qt4VSv1.0 +WINRT_ASSETS_PATH = $$PWD/assets load(qt_config) |