aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/corelib/api/project.cpp5
-rw-r--r--src/lib/corelib/api/projectdata.cpp6
-rw-r--r--src/lib/corelib/api/projectdata_p.h4
3 files changed, 10 insertions, 5 deletions
diff --git a/src/lib/corelib/api/project.cpp b/src/lib/corelib/api/project.cpp
index 378b13dfe..f7a9eca09 100644
--- a/src/lib/corelib/api/project.cpp
+++ b/src/lib/corelib/api/project.cpp
@@ -635,7 +635,10 @@ static bool productIsRunnable(const ResolvedProductConstPtr &product)
{
const bool isBundle = product->moduleProperties->moduleProperty(
QStringLiteral("bundle"), QStringLiteral("isBundle")).toBool();
- return isRunnableArtifact(product->fileTags, isBundle);
+ const QString androidSdkPackageType = product->moduleProperties->moduleProperty(
+ QStringLiteral("Android.sdk"), QStringLiteral("packageType")).toString();
+ const bool isAndroidApk = androidSdkPackageType == QStringLiteral("apk");
+ return isRunnableArtifact(product->fileTags, isBundle, isAndroidApk);
}
static bool productIsMultiplexed(const ResolvedProductConstPtr &product)
diff --git a/src/lib/corelib/api/projectdata.cpp b/src/lib/corelib/api/projectdata.cpp
index cb7d12b98..c378fbea4 100644
--- a/src/lib/corelib/api/projectdata.cpp
+++ b/src/lib/corelib/api/projectdata.cpp
@@ -323,8 +323,10 @@ bool ArtifactData::isExecutable() const
{
const bool isBundle = d->properties.getModuleProperty(
QStringLiteral("bundle"), QStringLiteral("isBundle")).toBool();
- return isRunnableArtifact(
- FileTags::fromStringList(d->fileTags), isBundle);
+ const QString androidSdkPackageType = d->properties.getModuleProperty(
+ QStringLiteral("Android.sdk"), QStringLiteral("packageType")).toString();
+ const bool isAndroidApk = androidSdkPackageType == QStringLiteral("apk");
+ return isRunnableArtifact(FileTags::fromStringList(d->fileTags), isBundle, isAndroidApk);
}
/*!
diff --git a/src/lib/corelib/api/projectdata_p.h b/src/lib/corelib/api/projectdata_p.h
index 834aeec23..e241ea92c 100644
--- a/src/lib/corelib/api/projectdata_p.h
+++ b/src/lib/corelib/api/projectdata_p.h
@@ -123,11 +123,11 @@ public:
QString buildDir;
};
-inline bool isRunnableArtifact(const FileTags &fileTags, bool isBundle)
+inline bool isRunnableArtifact(const FileTags &fileTags, bool isBundle, bool isAndroidApk)
{
return (fileTags.contains("application") && (!isBundle || fileTags.contains("bundle.content")))
|| fileTags.contains("bundle.application-executable")
- || fileTags.contains("android.apk")
+ || (fileTags.contains("android.package") && isAndroidApk)
|| fileTags.contains("msi");
}