summaryrefslogtreecommitdiff
path: root/src/plugins/android
diff options
context:
space:
mode:
authorBogDan Vatra <bogdan@kde.org>2019-10-18 09:25:14 +0300
committerBogDan Vatra <bogdan@kdab.com>2019-10-28 05:47:53 +0000
commite3904f3b135564834ae78245d79818e72d2edd7b (patch)
tree7e8f2ad00af56fdf14af2271754f7082fa158247 /src/plugins/android
parentafd22a75c18ad15293ed612f0a85a52a45e37881 (diff)
downloadqt-creator-e3904f3b135564834ae78245d79818e72d2edd7b.tar.gz
CMake: Add Android Multi ABI support
Change-Id: Ia5b3fcda29705fefca85833ebc28b4154defba5f Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Diffstat (limited to 'src/plugins/android')
-rw-r--r--src/plugins/android/androidbuildapkstep.cpp8
-rw-r--r--src/plugins/android/androidconstants.h1
2 files changed, 8 insertions, 1 deletions
diff --git a/src/plugins/android/androidbuildapkstep.cpp b/src/plugins/android/androidbuildapkstep.cpp
index bf89bd4a93..ccd9bec14d 100644
--- a/src/plugins/android/androidbuildapkstep.cpp
+++ b/src/plugins/android/androidbuildapkstep.cpp
@@ -393,6 +393,10 @@ void AndroidBuildApkStep::doRun()
if (!node)
return false;
+ FilePath deploymentSettingsFile = FilePath::fromString(node->data(Android::Constants::AndroidDeploySettingsFile).toString());
+ if (deploymentSettingsFile.exists())
+ return true; // cmake creates this file for us
+
auto targets = node->data(Android::Constants::AndroidTargets).toStringList();
if (targets.isEmpty())
return true; // qmake does this job for us
@@ -449,7 +453,7 @@ void AndroidBuildApkStep::doRun()
qmlRootPath = target()->project()->rootProjectDirectory().toString();
deploySettings["qml-root-path"] = qmlRootPath;
- QFile f{bc->buildDirectory().pathAppended("android_deployment_settings.json").toString()};
+ QFile f{deploymentSettingsFile.toString()};
if (!f.open(QIODevice::WriteOnly))
return false;
f.write(QJsonDocument{deploySettings}.toJson());
@@ -518,6 +522,8 @@ QVariant AndroidBuildApkStep::data(Core::Id id) const
return AndroidConfigurations::currentConfig().bestNdkPlatformMatch(AndroidManager::minimumSDK(target())).mid(8);
if (id == Constants::NdkLocation)
return QVariant::fromValue(AndroidConfigurations::currentConfig().ndkLocation());
+ if (id == Constants::SdkLocation)
+ return QVariant::fromValue(AndroidConfigurations::currentConfig().sdkLocation());
if (id == Constants::AndroidABIs)
return AndroidManager::applicationAbis(target());
diff --git a/src/plugins/android/androidconstants.h b/src/plugins/android/androidconstants.h
index b617087787..8c8f638555 100644
--- a/src/plugins/android/androidconstants.h
+++ b/src/plugins/android/androidconstants.h
@@ -82,6 +82,7 @@ const char AndroidManifest[] = "Android.Manifest"; // QStringList
const char AndroidNdkPlatform[] = "AndroidNdkPlatform"; //QString
const char NdkLocation[] = "NdkLocation"; // FileName
+const char SdkLocation[] = "SdkLocation"; // FileName
const char AndroidABIs[] = "AndroidABIs"; // QString
} // namespace Constants;