diff options
author | Janne Anttila <janne.anttila@digia.com> | 2014-02-25 10:19:10 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-03-20 08:35:24 +0100 |
commit | e07684294d6a6659997d60ef946b6c2d713d984d (patch) | |
tree | cbfa7b3e24c217794e411582c12b69b97501e468 /mkspecs/features | |
parent | 0e69c942228d4a30bf1d490ded9ee9d2bd1f0b6b (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>
Diffstat (limited to 'mkspecs/features')
-rw-r--r-- | mkspecs/features/winrt/package_manifest.prf | 24 |
1 files changed, 18 insertions, 6 deletions
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 |