WinRT: Add dependency support for Win10

So far the dependency keyword has been ignored for the new Windows 10
mkspecs. The difference to older manifest files is that there is already
a <Dependency> section and hence we embed dependencies inside this one,
as the format standard does not allow to have multiple of those.

Change-Id: I1bf25979cc28d5c153215de5bb9cd6f37e9c50aa
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
This commit is contained in:
Maurice Kalinowski 2015-07-08 13:31:20 +02:00
parent 2b61b2d43c
commit 9bc8acc6cb
4 changed files with 12 additions and 7 deletions

View File

@ -20,7 +20,7 @@
</Properties> </Properties>
<Dependencies> <Dependencies>
<TargetDeviceFamily Name=\"Windows.Universal\" MinVersion=\"10.0.10069.0\" MaxVersionTested=\"10.0.10069.0\" /> <TargetDeviceFamily Name=\"Windows.Universal\" MinVersion=\"10.0.10069.0\" MaxVersionTested=\"10.0.10069.0\" />$${WINRT_MANIFEST.dependencies}
</Dependencies> </Dependencies>
<Resources> <Resources>

View File

@ -41,6 +41,8 @@
<m2:SplashScreen Image=\"$${WINRT_MANIFEST.logo_620x300}\" />$${WINRT_MANIFEST.rotation_preference} <m2:SplashScreen Image=\"$${WINRT_MANIFEST.logo_620x300}\" />$${WINRT_MANIFEST.rotation_preference}
</m2:VisualElements> </m2:VisualElements>
</Application> </Application>
</Applications>$${WINRT_MANIFEST.capabilities}$${WINRT_MANIFEST.dependencies} </Applications>$${WINRT_MANIFEST.capabilities}
<Dependencies>$${WINRT_MANIFEST.dependencies}
</Dependencies>
</Package> </Package>
<!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. --> <!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. -->

View File

@ -42,6 +42,8 @@
<m3:SplashScreen Image=\"$${WINRT_MANIFEST.logo_480x800}\" />$${WINRT_MANIFEST.rotation_preference} <m3:SplashScreen Image=\"$${WINRT_MANIFEST.logo_480x800}\" />$${WINRT_MANIFEST.rotation_preference}
</m3:VisualElements> </m3:VisualElements>
</Application> </Application>
</Applications>$${WINRT_MANIFEST.capabilities}$${WINRT_MANIFEST.dependencies} </Applications>$${WINRT_MANIFEST.capabilities}
<Dependencies>$${WINRT_MANIFEST.dependencies}
</Dependencies>
</Package> </Package>
<!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. --> <!-- Generated by qmake using the $$[QMAKE_XSPEC] mkspec. -->

View File

@ -58,9 +58,11 @@
VCLIBS = Microsoft.VCLibs.$$replace(MSVC_VER, \\., ).00 VCLIBS = Microsoft.VCLibs.$$replace(MSVC_VER, \\., ).00
winphone: VCLIBS = $${VCLIBS}.Phone winphone: VCLIBS = $${VCLIBS}.Phone
CONFIG(debug, debug|release): \ CONFIG(debug, debug|release): \
WINRT_MANIFEST.dependencies += $${VCLIBS}.Debug VCLIBS = $${VCLIBS}.Debug
else: \ else: \
WINRT_MANIFEST.dependencies += $$VCLIBS VCLIBS = $${VCLIBS}
contains(MSVC_VER, "14.0"): VCLIBS = "$${VCLIBS}\" MinVersion=\"14.0.0.0\" Publisher=\"CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"
WINRT_MANIFEST.dependencies += $$VCLIBS
} }
# Provide default values for required variables # Provide default values for required variables
@ -122,12 +124,11 @@
} }
# Dependencies are given as a string list. The CRT dependency is added automatically above. # Dependencies are given as a string list. The CRT dependency is added automatically above.
# For MSVC2015 the dependencies are added in conjunction with TargetDeviceFamily
WINRT_MANIFEST.dependencies = $$unique(WINRT_MANIFEST.dependencies) WINRT_MANIFEST.dependencies = $$unique(WINRT_MANIFEST.dependencies)
!isEmpty(WINRT_MANIFEST.dependencies) { !isEmpty(WINRT_MANIFEST.dependencies) {
MANIFEST_DEPENDENCIES += "<Dependencies>"
for(DEPENDENCY, WINRT_MANIFEST.dependencies): \ for(DEPENDENCY, WINRT_MANIFEST.dependencies): \
MANIFEST_DEPENDENCIES += " <PackageDependency Name=\"$$DEPENDENCY\" />" MANIFEST_DEPENDENCIES += " <PackageDependency Name=\"$$DEPENDENCY\" />"
MANIFEST_DEPENDENCIES += "</Dependencies>"
WINRT_MANIFEST.dependencies = $$join(MANIFEST_DEPENDENCIES, $$INDENT, $$INDENT) WINRT_MANIFEST.dependencies = $$join(MANIFEST_DEPENDENCIES, $$INDENT, $$INDENT)
} }