summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/qmakeprojectmanager/qmakenodes.cpp18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/plugins/qmakeprojectmanager/qmakenodes.cpp b/src/plugins/qmakeprojectmanager/qmakenodes.cpp
index c2a15c9eaf..0d7f5f6a06 100644
--- a/src/plugins/qmakeprojectmanager/qmakenodes.cpp
+++ b/src/plugins/qmakeprojectmanager/qmakenodes.cpp
@@ -32,6 +32,9 @@
#include <projectexplorer/runconfiguration.h>
#include <projectexplorer/target.h>
+#include <qtsupport/baseqtversion.h>
+#include <qtsupport/qtkitinformation.h>
+
#include <resourceeditor/resourcenode.h>
#include <utils/qtcassert.h>
@@ -358,11 +361,16 @@ bool QmakeProFileNode::setData(Core::Id role, const QVariant &value) const
QmakeProFile *pro = proFile();
if (!pro)
return false;
-
- const QString arch = pro->singleVariableValue(Variable::AndroidArch);
- const QString scope = "contains(ANDROID_TARGET_ARCH," + arch + ')';
- auto flags = QmakeProjectManager::Internal::ProWriter::ReplaceValues
- | QmakeProjectManager::Internal::ProWriter::MultiLine;
+ QString scope;
+ int flags = QmakeProjectManager::Internal::ProWriter::ReplaceValues;
+ if (Target *target = m_project->activeTarget()) {
+ QtSupport::BaseQtVersion *version = QtSupport::QtKitAspect::qtVersion(target->kit());
+ if (version && version->qtVersion() < QtSupport::QtVersionNumber(5, 14, 0)) {
+ const QString arch = pro->singleVariableValue(Variable::AndroidArch);
+ scope = "contains(ANDROID_TARGET_ARCH," + arch + ')';
+ flags |= QmakeProjectManager::Internal::ProWriter::MultiLine;
+ }
+ }
if (role == Android::Constants::AndroidExtraLibs)
return pro->setProVariable("ANDROID_EXTRA_LIBS", value.toStringList(), scope, flags);