SDKtool: Add --device option to addKit operation

Change-Id: I5403ae8b7a238f24aadd26c1db3a1b8b4c83fdb2
Reviewed-by: Rainer Keller <rainer.keller@digia.com>
This commit is contained in:
Tobias Hunger
2014-03-04 14:11:12 +01:00
parent 16778f45a5
commit 6db3893b16
3 changed files with 37 additions and 20 deletions

View File

@@ -58,6 +58,7 @@ const char DEBUGGER[] = "Debugger.Information";
const char DEBUGGER_ENGINE[] = "EngineType"; const char DEBUGGER_ENGINE[] = "EngineType";
const char DEBUGGER_BINARY[] = "Binary"; const char DEBUGGER_BINARY[] = "Binary";
const char DEVICE_TYPE[] = "PE.Profile.DeviceType"; const char DEVICE_TYPE[] = "PE.Profile.DeviceType";
const char DEVICE_ID[] = "PE.Profile.Device";
const char SYSROOT[] = "PE.Profile.SysRoot"; const char SYSROOT[] = "PE.Profile.SysRoot";
const char TOOLCHAIN[] = "PE.Profile.ToolChain"; const char TOOLCHAIN[] = "PE.Profile.ToolChain";
const char MKSPEC[] = "QtPM4.mkSpecInformation"; const char MKSPEC[] = "QtPM4.mkSpecInformation";
@@ -88,6 +89,7 @@ QString AddKitOperation::argumentsHelpText() const
" --debuggerengine <ENGINE> debuggerengine of the new kit.\n" " --debuggerengine <ENGINE> debuggerengine of the new kit.\n"
" --debugger <PATH> debugger of the new kit.\n" " --debugger <PATH> debugger of the new kit.\n"
" --devicetype <TYPE> device type of the new kit (required).\n" " --devicetype <TYPE> device type of the new kit (required).\n"
" --device <ID> device id to use (optional).\n"
" --sysroot <PATH> sysroot of the new kit.\n" " --sysroot <PATH> sysroot of the new kit.\n"
" --toolchain <ID> tool chain of the new kit.\n" " --toolchain <ID> tool chain of the new kit.\n"
" --qt <ID> Qt of the new kit.\n" " --qt <ID> Qt of the new kit.\n"
@@ -164,6 +166,14 @@ bool AddKitOperation::setArguments(const QStringList &args)
continue; continue;
} }
if (current == QLatin1String("--device")) {
if (next.isNull())
return false;
++i; // skip next;
m_device = next;
continue;
}
if (current == QLatin1String("--sysroot")) { if (current == QLatin1String("--sysroot")) {
if (next.isNull()) if (next.isNull())
return false; return false;
@@ -231,8 +241,9 @@ int AddKitOperation::execute() const
if (map.isEmpty()) if (map.isEmpty())
map = initializeKits(); map = initializeKits();
QVariantMap result = addKit(map, m_id, m_displayName, m_icon, m_debuggerId, m_debuggerEngine, m_debugger, QVariantMap result = addKit(map, m_id, m_displayName, m_icon, m_debuggerId, m_debuggerEngine,
m_deviceType.toUtf8(), m_sysRoot, m_tc, m_qt, m_mkspec, m_extra); m_debugger, m_deviceType.toUtf8(), m_device, m_sysRoot, m_tc, m_qt,
m_mkspec, m_extra);
if (result.isEmpty() || map == result) if (result.isEmpty() || map == result)
return 2; return 2;
@@ -256,7 +267,7 @@ bool AddKitOperation::test() const
map = addKit(map, QLatin1String("testId"), QLatin1String("Test Kit"), QLatin1String("/tmp/icon.png"), map = addKit(map, QLatin1String("testId"), QLatin1String("Test Kit"), QLatin1String("/tmp/icon.png"),
QString(), 1, QLatin1String("/usr/bin/gdb-test"), QString(), 1, QLatin1String("/usr/bin/gdb-test"),
QByteArray("Desktop"), QString(), QByteArray("Desktop"), QString(), QString(),
QLatin1String("{some-tc-id}"), QLatin1String("{some-qt-id}"), QLatin1String("unsupported/mkspec"), QLatin1String("{some-tc-id}"), QLatin1String("{some-qt-id}"), QLatin1String("unsupported/mkspec"),
KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue")))); KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue"))));
@@ -287,7 +298,7 @@ bool AddKitOperation::test() const
return false; return false;
QVariantMap data = profile0.value(QLatin1String(DATA)).toMap(); QVariantMap data = profile0.value(QLatin1String(DATA)).toMap();
if (data.count() != 7 if (data.count() != 8
|| !data.contains(QLatin1String(DEBUGGER)) || !data.contains(QLatin1String(DEBUGGER))
|| data.value(QLatin1String(DEBUGGER)).type()!= QVariant::Map) || data.value(QLatin1String(DEBUGGER)).type()!= QVariant::Map)
return false; return false;
@@ -295,7 +306,7 @@ bool AddKitOperation::test() const
// Ignore existing ids: // Ignore existing ids:
QVariantMap result = addKit(map, QLatin1String("testId"), QLatin1String("Test Qt Version X"), QLatin1String("/tmp/icon3.png"), QVariantMap result = addKit(map, QLatin1String("testId"), QLatin1String("Test Qt Version X"), QLatin1String("/tmp/icon3.png"),
QString(), 1, QLatin1String("/usr/bin/gdb-test3"), QString(), 1, QLatin1String("/usr/bin/gdb-test3"),
QByteArray("Desktop"), QString(), QByteArray("Desktop"), QString(), QString(),
QLatin1String("{some-tc-id3}"), QLatin1String("{some-qt-id3}"), QLatin1String("unsupported/mkspec3"), QLatin1String("{some-tc-id3}"), QLatin1String("{some-qt-id3}"), QLatin1String("unsupported/mkspec3"),
KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue3")))); KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue3"))));
if (!result.isEmpty()) if (!result.isEmpty())
@@ -304,7 +315,7 @@ bool AddKitOperation::test() const
// Make sure name is unique: // Make sure name is unique:
map = addKit(map, QLatin1String("testId2"), QLatin1String("Test Kit2"), QLatin1String("/tmp/icon2.png"), map = addKit(map, QLatin1String("testId2"), QLatin1String("Test Kit2"), QLatin1String("/tmp/icon2.png"),
QString(), 1, QLatin1String("/usr/bin/gdb-test2"), QString(), 1, QLatin1String("/usr/bin/gdb-test2"),
QByteArray("Desktop"), QString(), QByteArray("Desktop"), QLatin1String("deviceId"), QString(),
QLatin1String("{some-tc-id2}"), QLatin1String("{some-qt-id2}"), QLatin1String("unsupported/mkspec2"), QLatin1String("{some-tc-id2}"), QLatin1String("{some-qt-id2}"), QLatin1String("unsupported/mkspec2"),
KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue2")))); KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue2"))));
if (map.count() != 5 if (map.count() != 5
@@ -337,7 +348,9 @@ bool AddKitOperation::test() const
return false; return false;
data = profile1.value(QLatin1String(DATA)).toMap(); data = profile1.value(QLatin1String(DATA)).toMap();
if (data.count() != 7 if (data.count() != 8
|| !data.contains(QLatin1String(DEVICE_ID))
|| data.value(QLatin1String(DEVICE_ID)).toString() != QLatin1String("deviceId")
|| !data.contains(QLatin1String(DEBUGGER)) || !data.contains(QLatin1String(DEBUGGER))
|| data.value(QLatin1String(DEBUGGER)).type() != QVariant::Map) || data.value(QLatin1String(DEBUGGER)).type() != QVariant::Map)
return false; return false;
@@ -345,7 +358,7 @@ bool AddKitOperation::test() const
// Test debugger id: // Test debugger id:
map = addKit(map, QLatin1String("test with debugger Id"), QLatin1String("Test debugger Id"), QLatin1String("/tmp/icon2.png"), map = addKit(map, QLatin1String("test with debugger Id"), QLatin1String("Test debugger Id"), QLatin1String("/tmp/icon2.png"),
QString::fromLatin1("debugger Id"), 0, QString(), QString::fromLatin1("debugger Id"), 0, QString(),
QByteArray("Desktop"), QString(), QByteArray("Desktop"), QString(), QString(),
QLatin1String("{some-tc-id2}"), QLatin1String("{some-qt-id2}"), QLatin1String("unsupported/mkspec2"), QLatin1String("{some-tc-id2}"), QLatin1String("{some-qt-id2}"), QLatin1String("unsupported/mkspec2"),
KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue2")))); KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue2"))));
if (map.count() != 6 if (map.count() != 6
@@ -381,7 +394,7 @@ bool AddKitOperation::test() const
return false; return false;
data = profile2.value(QLatin1String(DATA)).toMap(); data = profile2.value(QLatin1String(DATA)).toMap();
if (data.count() != 7 if (data.count() != 8
|| !data.contains(QLatin1String(DEBUGGER)) || !data.contains(QLatin1String(DEBUGGER))
|| data.value(QLatin1String(DEBUGGER)).toString() != QLatin1String("debugger Id")) || data.value(QLatin1String(DEBUGGER)).toString() != QLatin1String("debugger Id"))
return false; return false;
@@ -390,10 +403,11 @@ bool AddKitOperation::test() const
} }
#endif #endif
QVariantMap AddKitOperation::addKit(const QVariantMap &map, QVariantMap AddKitOperation::addKit(const QVariantMap &map, const QString &id,
const QString &id, const QString &displayName, const QString &icon, const QString &displayName, const QString &icon,
const QString &debuggerId, const quint32 &debuggerType, const QString &debugger, const QString &debuggerId, const quint32 &debuggerType,
const QByteArray &deviceType, const QString &sysRoot, const QString &debugger, const QByteArray &deviceType,
const QString &device, const QString &sysRoot,
const QString &tc, const QString &qt, const QString &mkspec, const QString &tc, const QString &qt, const QString &mkspec,
const KeyValuePairList &extra) const KeyValuePairList &extra)
{ {
@@ -464,6 +478,8 @@ QVariantMap AddKitOperation::addKit(const QVariantMap &map,
} }
data << KeyValuePair(QStringList() << kit << QLatin1String(DATA) data << KeyValuePair(QStringList() << kit << QLatin1String(DATA)
<< QLatin1String(DEVICE_TYPE), QVariant(deviceType)); << QLatin1String(DEVICE_TYPE), QVariant(deviceType));
data << KeyValuePair(QStringList() << kit << QLatin1String(DATA)
<< QLatin1String(DEVICE_ID), QVariant(device));
data << KeyValuePair(QStringList() << kit << QLatin1String(DATA) data << KeyValuePair(QStringList() << kit << QLatin1String(DATA)
<< QLatin1String(SYSROOT), QVariant(sysRoot)); << QLatin1String(SYSROOT), QVariant(sysRoot));
data << KeyValuePair(QStringList() << kit << QLatin1String(DATA) data << KeyValuePair(QStringList() << kit << QLatin1String(DATA)

View File

@@ -51,12 +51,12 @@ public:
bool test() const; bool test() const;
#endif #endif
static QVariantMap addKit(const QVariantMap &map, static QVariantMap addKit(const QVariantMap &map, const QString &id, const QString &displayName,
const QString &id, const QString &displayName, const QString &icon, const QString &debuggerId, const QString &icon, const QString &debuggerId,
const quint32 &debuggerType, const QString &debugger, const quint32 &debuggerType, const QString &debugger,
const QByteArray &deviceType, const QString &sysRoot, const QByteArray &deviceType, const QString &device,
const QString &tc, const QString &qt, const QString &mkspec, const QString &sysRoot, const QString &tc, const QString &qt,
const KeyValuePairList &extra); const QString &mkspec, const KeyValuePairList &extra);
static QVariantMap initializeKits(); static QVariantMap initializeKits();
@@ -68,6 +68,7 @@ private:
quint32 m_debuggerEngine; quint32 m_debuggerEngine;
QString m_debugger; QString m_debugger;
QString m_deviceType; QString m_deviceType;
QString m_device;
QString m_sysRoot; QString m_sysRoot;
QString m_tc; QString m_tc;
QString m_qt; QString m_qt;

View File

@@ -103,7 +103,7 @@ bool RmKitOperation::test() const
QLatin1String("testId"), QLatin1String("Test Qt Version"), QLatin1String("testId"), QLatin1String("Test Qt Version"),
QLatin1String("/tmp/icon.png"), QLatin1String("/tmp/icon.png"),
QString(), 1, QLatin1String("/usr/bin/gdb-test"), QString(), 1, QLatin1String("/usr/bin/gdb-test"),
QByteArray("Desktop"), QString(), QByteArray("Desktop"), QString(), QString(),
QLatin1String("{some-tc-id}"), QLatin1String("{some-qt-id}"), QLatin1String("{some-tc-id}"), QLatin1String("{some-qt-id}"),
QLatin1String("unsupported/mkspec"), QLatin1String("unsupported/mkspec"),
KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue")))); KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue"))));
@@ -111,7 +111,7 @@ bool RmKitOperation::test() const
AddKitOperation::addKit(map, QLatin1String("testId2"), QLatin1String("Test Qt Version"), AddKitOperation::addKit(map, QLatin1String("testId2"), QLatin1String("Test Qt Version"),
QLatin1String("/tmp/icon2.png"), QLatin1String("/tmp/icon2.png"),
QString(), 1, QLatin1String("/usr/bin/gdb-test2"), QString(), 1, QLatin1String("/usr/bin/gdb-test2"),
QByteArray("Desktop"), QString(), QByteArray("Desktop"), QString(), QString(),
QLatin1String("{some-tc-id2}"), QLatin1String("{some-qt-id2}"), QLatin1String("{some-tc-id2}"), QLatin1String("{some-qt-id2}"),
QLatin1String("unsupported/mkspec2"), QLatin1String("unsupported/mkspec2"),
KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue2")))); KeyValuePairList() << KeyValuePair(QLatin1String("PE.Profile.Data/extraData"), QVariant(QLatin1String("extraValue2"))));