diff options
author | Raphaël Cotty <raphael.cotty@gmail.com> | 2020-10-13 15:38:08 +0200 |
---|---|---|
committer | Raphaël Cotty <raphael.cotty@gmail.com> | 2020-10-21 07:40:09 +0000 |
commit | 2f5f049ecf777bcfcbfe4a17af72768248f73eab (patch) | |
tree | 9e3d27c2a21c37e16de52c89db9b367cb2c76fd4 /share | |
parent | eb7adb8d9787dddef89e46f7bf6e594d0b5faf4b (diff) |
Android: Update for Qt 5.15
Use java.additionalClassPaths property to allow compilation of binding classes
because starting with Qt 5.15 they depend on QtAndroid.jar
Update AndroidManifest.xml with uses-sdk node using new properties Android.sdk.minVersion
and Android.sdk.targetVersion because Qt 5.15 uses androiddeployqt to set it.
Fixes: QBS-1580
Change-Id: I2fa5e77bb183be1b55e9dd9756fb7b6eb1f3c9d4
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Diffstat (limited to 'share')
-rw-r--r-- | share/qbs/module-providers/Qt/templates/android_support.qbs | 4 | ||||
-rw-r--r-- | share/qbs/modules/Android/sdk/sdk.qbs | 16 |
2 files changed, 20 insertions, 0 deletions
diff --git a/share/qbs/module-providers/Qt/templates/android_support.qbs b/share/qbs/module-providers/Qt/templates/android_support.qbs index a7eb8fdcf..b1165dab5 100644 --- a/share/qbs/module-providers/Qt/templates/android_support.qbs +++ b/share/qbs/module-providers/Qt/templates/android_support.qbs @@ -53,6 +53,10 @@ Module { java._tagJniHeaders: false // prevent rule cycle } Properties { + condition: _enableSdkSupport && Utilities.versionCompare(version, "5.15") >= 0 + java.additionalClassPaths: [FileInfo.joinPaths(_qtInstallDir, "jar", "QtAndroid.jar")] + } + Properties { condition: _enableNdkSupport && (Android.ndk.abi === "armeabi-v7a" || Android.ndk.abi === "x86") cpp.defines: "ANDROID_HAS_WSTRING" } diff --git a/share/qbs/modules/Android/sdk/sdk.qbs b/share/qbs/modules/Android/sdk/sdk.qbs index 31f3ed465..563483410 100644 --- a/share/qbs/modules/Android/sdk/sdk.qbs +++ b/share/qbs/modules/Android/sdk/sdk.qbs @@ -67,6 +67,8 @@ Module { property int buildToolsVersionMinor: buildToolsVersionParts[1] property int buildToolsVersionPatch: buildToolsVersionParts[2] property string platform: sdkProbe.platform + property string minimumVersion: "21" + property string targetVersion: platformVersion.toString() property path bundletoolFilePath: bundletoolProbe.filePath @@ -337,6 +339,20 @@ Module { } } + var usedSdkElem = rootElem.firstChild("uses-sdk"); + if (!usedSdkElem || !usedSdkElem.isElement()) { + usedSdkElem = manifestData.createElement("uses-sdk"); + rootElem.appendChild(usedSdkElem); + } else { + if (!usedSdkElem.isElement()) + throw "Tag uses-sdk is not an element in '" + input.filePath + "'."; + } + usedSdkElem.setAttribute("android:minSdkVersion", + product.Android.sdk.minimumVersion); + usedSdkElem.setAttribute("android:targetSdkVersion", + product.Android.sdk.targetVersion); + + rootElem.appendChild(usedSdkElem); manifestData.save(output.filePath, 4); } return cmd; |