summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJanne Anttila <janne.anttila@digia.com>2014-02-25 10:19:10 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-03-20 08:35:24 +0100
commite07684294d6a6659997d60ef946b6c2d713d984d (patch)
treecbfa7b3e24c217794e411582c12b69b97501e468
parent0e69c942228d4a30bf1d490ded9ee9d2bd1f0b6b (diff)
Fix WinRT manifest for Visual Studio.
Visual Studio does not like empty dependencies block in manifest XML. At least my Visual Studio 2013 fails to open visual manifest editor for XML containing the following block: <Dependencies> </Dependencies> If the block is removed or if the block has one or more PackageDependency entries the editor accepts it. Moved the <Dependencies> block to prf, so that it is only written when project really has dependencies. Also <Capabilities> block is moved to prf for consistency. On Windows Phone, where the <Capabilities> block is required, it is kept in the output even if it is empty. Change-Id: I531180d0081e4612f75be54f3813831857f1ed43 Reviewed-by: Andrew Knight <andrew.knight@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
-rw-r--r--mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in4
-rw-r--r--mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in3
-rw-r--r--mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in4
-rw-r--r--mkspecs/features/winrt/package_manifest.prf24
4 files changed, 21 insertions, 14 deletions
diff --git a/mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in b/mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in
index 42bac8b8b1..6583bf0643 100644
--- a/mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in
+++ b/mkspecs/common/winrt_winphone/manifests/8.0/AppxManifest.xml.in
@@ -32,8 +32,6 @@
<SplashScreen Image=\"$${WINRT_MANIFEST.logo_splash}\" />
</VisualElements>
</Application>
- </Applications>
- <Capabilities>$${WINRT_MANIFEST.capabilities}</Capabilities>
- <Dependencies>$${WINRT_MANIFEST.dependencies}</Dependencies>
+ </Applications>$${WINRT_MANIFEST.capabilities}$${WINRT_MANIFEST.dependencies}
</Package>
<!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. -->
diff --git a/mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in b/mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in
index 968f42fa06..5efb9c7b06 100644
--- a/mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in
+++ b/mkspecs/common/winrt_winphone/manifests/8.0/WMAppManifest.xml.in
@@ -11,8 +11,7 @@
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>
+ <IconPath IsRelative=\"true\" IsResource=\"false\">$${WINRT_MANIFEST.logo_medium}</IconPath>$${WINRT_MANIFEST.capabilities}
<Tasks>
<DefaultTask
Name=\"_default\"
diff --git a/mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in b/mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in
index fcc4d75b0f..5587ace390 100644
--- a/mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in
+++ b/mkspecs/common/winrt_winphone/manifests/8.1/AppxManifest.xml.in
@@ -37,8 +37,6 @@
<v2:SplashScreen Image=\"$${WINRT_MANIFEST.logo_splash}\" />
</v2:VisualElements>
</Application>
- </Applications>
- <Capabilities>$${WINRT_MANIFEST.capabilities}</Capabilities>
- <Dependencies>$${WINRT_MANIFEST.dependencies}</Dependencies>
+ </Applications>$${WINRT_MANIFEST.capabilities}$${WINRT_MANIFEST.dependencies}
</Package>
<!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. -->
diff --git a/mkspecs/features/winrt/package_manifest.prf b/mkspecs/features/winrt/package_manifest.prf
index 8c2943ec70..a959bc5480 100644
--- a/mkspecs/features/winrt/package_manifest.prf
+++ b/mkspecs/features/winrt/package_manifest.prf
@@ -92,16 +92,28 @@
winphone: INDENT = "$$escape_expand(\\r\\n) "
else: INDENT = "$$escape_expand(\\r\\n) "
+
# Capabilities are given as a string list and may change with the configuration (network, sensors, etc.)
WINRT_MANIFEST.capabilities = $$unique(WINRT_MANIFEST.capabilities)
- for(CAPABILITY, WINRT_MANIFEST.capabilities): \
- MANIFEST_CAPABILITIES += " <Capability Name=\"$$CAPABILITY\" />"
- WINRT_MANIFEST.capabilities = $$join(MANIFEST_CAPABILITIES, $$INDENT, $$INDENT, $$INDENT)
+ !isEmpty(WINRT_MANIFEST.capabilities)|winphone {
+ MANIFEST_CAPABILITIES += "<Capabilities>"
+ for(CAPABILITY, WINRT_MANIFEST.capabilities): \
+ MANIFEST_CAPABILITIES += " <Capability Name=\"$$CAPABILITY\" />"
+ MANIFEST_CAPABILITIES += "</Capabilities>"
+
+ WINRT_MANIFEST.capabilities = $$join(MANIFEST_CAPABILITIES, $$INDENT, $$INDENT)
+ }
+
# Dependencies are given as a string list. The CRT dependency is added automatically above.
WINRT_MANIFEST.dependencies = $$unique(WINRT_MANIFEST.dependencies)
- for(DEPENDENCY, WINRT_MANIFEST.dependencies): \
- MANIFEST_DEPENDENCIES += " <PackageDependency Name=\"$$DEPENDENCY\" />"
- WINRT_MANIFEST.dependencies = $$join(MANIFEST_DEPENDENCIES, $$INDENT, $$INDENT, $$INDENT)
+ !isEmpty(WINRT_MANIFEST.dependencies) {
+ MANIFEST_DEPENDENCIES += "<Dependencies>"
+ for(DEPENDENCY, WINRT_MANIFEST.dependencies): \
+ MANIFEST_DEPENDENCIES += " <PackageDependency Name=\"$$DEPENDENCY\" />"
+ MANIFEST_DEPENDENCIES += "</Dependencies>"
+
+ WINRT_MANIFEST.dependencies = $$join(MANIFEST_DEPENDENCIES, $$INDENT, $$INDENT)
+ }
# Provide default icons where needed
isEmpty(WINRT_ASSETS_PATH): WINRT_ASSETS_PATH = $$[QT_HOST_DATA/get]/mkspecs/common/winrt_winphone/assets