diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2017-09-27 14:33:31 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2017-09-27 16:13:06 +0000 |
commit | 75395af8247ed361a6be5441fd1579ca2bf59554 (patch) | |
tree | c28126b31d757d3f1ed86dc721dcdd53a3e40ccc | |
parent | c94b813561b486cce98a98fb0ba118daeccdf685 (diff) | |
download | qt-creator-75395af8247ed361a6be5441fd1579ca2bf59554.tar.gz |
QbsProjectManager: Respect overridden target ABI
Auto-detecting the architecture in qbs is all well and good, but if the
user explicitly set an ABI in the toolchain widget, we must set
qbs.architecture accordingly.
Change-Id: I3a2c441ceea5e939e43764e0468588d2d0ef323c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
-rw-r--r-- | src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp | 4 | ||||
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsprojectmanagerconstants.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp b/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp index 6dc1aa6814..66201cb98b 100644 --- a/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp +++ b/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp @@ -254,6 +254,10 @@ QVariantMap DefaultPropertyProvider::autoGeneratedProperties(const ProjectExplor auto archs = architectures(mainTc); if (!archs.isEmpty()) data.insert(QLatin1String(QBS_ARCHITECTURES), archs); + if (mainTc->targetAbi() != + ProjectExplorer::Abi::abiFromTargetTriplet(mainTc->originalTargetTriple())) { + data.insert(QLatin1String(QBS_ARCHITECTURE), architecture(mainTc->targetAbi())); + } data.insert(QLatin1String(QBS_TARGETOS), targetOSList(targetAbi, k)); QStringList toolchain = toolchainList(mainTc); diff --git a/src/plugins/qbsprojectmanager/qbsprojectmanagerconstants.h b/src/plugins/qbsprojectmanager/qbsprojectmanagerconstants.h index e53beb84fe..cc6bcd8ed3 100644 --- a/src/plugins/qbsprojectmanager/qbsprojectmanagerconstants.h +++ b/src/plugins/qbsprojectmanager/qbsprojectmanagerconstants.h @@ -78,6 +78,7 @@ const char QBS_PRODUCT_OVERLAY_ICON[] = ":/qbsprojectmanager/images/productgear. const char QBS_TARGETOS[] = "qbs.targetOS"; const char QBS_SYSROOT[] = "qbs.sysroot"; const char QBS_ARCHITECTURES[] = "qbs.architectures"; +const char QBS_ARCHITECTURE[] = "qbs.architecture"; const char QBS_TOOLCHAIN[] = "qbs.toolchain"; const char CPP_TOOLCHAINPATH[] = "cpp.toolchainInstallPath"; const char CPP_TOOLCHAINPREFIX[] = "cpp.toolchainPrefix"; |