summaryrefslogtreecommitdiffstats
path: root/src/tools
diff options
context:
space:
mode:
authorAssam Boudjelthia <assam.boudjelthia@qt.io>2021-10-06 12:29:09 +0300
committerAssam Boudjelthia <assam.boudjelthia@qt.io>2021-10-13 18:33:32 +0300
commit7235eeab19e7e50ba102938993acc04d14b58164 (patch)
tree4059df1b1212cac138bd47e77f6aff48b7435e7a /src/tools
parentf7a4a79c62daeba9ab5545c5e0a1f36d5e1fce6b (diff)
Android: replace ndk.dir with android.ndkVersion in build.gradle
The use of ndk.dir in local.properties is deprecated in favor of android.ndkVersion in build.gradle, and will be totatlly removed in the future, so we need to adapt to that. Fixes: QTBUG-91391 Pick-to: 6.2 Change-Id: I54c57113a759d43c3685c9cdf2b9dcc5c948c0fd Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/androiddeployqt/main.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/tools/androiddeployqt/main.cpp b/src/tools/androiddeployqt/main.cpp
index 431fa51d9e..4ef16135d5 100644
--- a/src/tools/androiddeployqt/main.cpp
+++ b/src/tools/androiddeployqt/main.cpp
@@ -41,6 +41,7 @@
#include <QDirIterator>
#include <QElapsedTimer>
#include <QRegularExpression>
+#include <QSettings>
#include <depfile_shared.h>
@@ -156,6 +157,7 @@ struct Options
QString sdkPath;
QString sdkBuildToolsVersion;
QString ndkPath;
+ QString ndkVersion;
QString jdkPath;
// Build paths
@@ -1044,6 +1046,15 @@ bool readInputFile(Options *options)
return false;
}
options->ndkPath = ndk.toString();
+ const QString ndkPropertiesPath = options->ndkPath + QStringLiteral("/source.properties");
+ const QSettings settings(ndkPropertiesPath, QSettings::IniFormat);
+ const QString ndkVersion = settings.value(QStringLiteral("Pkg.Revision")).toString();
+ if (ndkVersion.isEmpty()) {
+ fprintf(stderr, "Couldn't retrieve the NDK version from \"%s\".\n",
+ qPrintable(ndkPropertiesPath));
+ return false;
+ }
+ options->ndkVersion = ndkVersion;
}
{
@@ -2592,9 +2603,8 @@ bool buildAndroidProject(const Options &options)
{
GradleProperties localProperties;
localProperties["sdk.dir"] = QDir::fromNativeSeparators(options.sdkPath).toUtf8();
- localProperties["ndk.dir"] = QDir::fromNativeSeparators(options.ndkPath).toUtf8();
-
- if (!mergeGradleProperties(options.outputDirectory + QLatin1String("local.properties"), localProperties))
+ const QString localPropertiesPath = options.outputDirectory + QLatin1String("local.properties");
+ if (!mergeGradleProperties(localPropertiesPath, localProperties))
return false;
QString gradlePropertiesPath = options.outputDirectory + QLatin1String("gradle.properties");
@@ -2609,6 +2619,7 @@ bool buildAndroidProject(const Options &options)
gradleProperties["androidCompileSdkVersion"] = options.androidPlatform.split(QLatin1Char('-')).last().toLocal8Bit();
gradleProperties["qtMinSdkVersion"] = options.minSdkVersion;
gradleProperties["qtTargetSdkVersion"] = options.targetSdkVersion;
+ gradleProperties["androidNdkVersion"] = options.ndkVersion.toUtf8();
if (gradleProperties["androidBuildToolsVersion"].isEmpty())
gradleProperties["androidBuildToolsVersion"] = options.sdkBuildToolsVersion.toLocal8Bit();
QString abiList;