aboutsummaryrefslogtreecommitdiffstats
path: root/src/tools/sdktool/addkitoperation.cpp
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@digia.com>2014-04-03 16:43:01 +0200
committerTobias Hunger <tobias.hunger@digia.com>2014-04-04 15:26:23 +0200
commit4dbfd2883d9fcdccf28937170fc4271808a07685 (patch)
treeba215dbc728e5181ae3cf89d6256a6b73b27485d /src/tools/sdktool/addkitoperation.cpp
parent92239b6753e6766706a525771974306cc5d6e262 (diff)
SDKtool: Fix test case and compiler warning
Do check for toolchains not defined in the toolchains.xml file again, but also allow for toolchain IDs to be ABIs. This partially reverts a commit from Kai made earlier. Change-Id: Idad004f0bff655bc136bc43de5837d61a045e311 Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Diffstat (limited to 'src/tools/sdktool/addkitoperation.cpp')
-rw-r--r--src/tools/sdktool/addkitoperation.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/tools/sdktool/addkitoperation.cpp b/src/tools/sdktool/addkitoperation.cpp
index 588b33bb8d..ec32e4b9a9 100644
--- a/src/tools/sdktool/addkitoperation.cpp
+++ b/src/tools/sdktool/addkitoperation.cpp
@@ -40,6 +40,8 @@
#include "settings.h"
+#include <QRegExp>
+
#include <iostream>
// Qt version file stuff:
@@ -298,6 +300,15 @@ bool AddKitOperation::test() const
KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue"))));
if (!empty.isEmpty())
return false;
+ // Do not fail if TC is an ABI:
+ empty = addKit(map, tcMap, qtMap, devMap,
+ QLatin1String("testId"), QLatin1String("Test Kit"), QLatin1String("/tmp/icon.png"),
+ QString(), 1, QLatin1String("/usr/bin/gdb-test"),
+ QByteArray("Desktop"), QLatin1String("{dev-id}"), QString(),
+ QLatin1String("x86-linux-generic-elf-64bit"), QLatin1String("{qt-id}"), QLatin1String("unsupported/mkspec"),
+ KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue"))));
+ if (empty.isEmpty())
+ return false;
// Fail if Qt is not there:
empty = addKit(map, tcMap, qtMap, devMap,
QLatin1String("testId"), QLatin1String("Test Kit"), QLatin1String("/tmp/icon.png"),
@@ -498,6 +509,14 @@ QVariantMap AddKitOperation::addKit(const QVariantMap &map, const QVariantMap &t
return QVariantMap();
}
+ if (!tc.isEmpty() && !AddToolChainOperation::exists(tcMap, tc)) {
+ QRegExp abiRegExp = QRegExp(QLatin1String("[a-z0-9]+-[a-z0-9]+-[a-z0-9]+-[a-z0-9]+-(8|16|32|64|128)bit"));
+ if (!abiRegExp.exactMatch(tc)) {
+ std::cerr << "Error: Toolchain " << qPrintable(tc) << " does not exist." << std::endl;
+ return QVariantMap();
+ }
+ }
+
QString qtId = qt;
if (!qtId.isEmpty() && !qtId.startsWith(QLatin1String("SDK.")))
qtId = QString::fromLatin1("SDK.") + qt;