From b6e626726df08a9b63ce23219c3fcb1ccbc29adf Mon Sep 17 00:00:00 2001 From: Rainer Keller Date: Tue, 15 Oct 2013 09:11:24 +0200 Subject: Add option to configure gdb network name Change-Id: I75ac3d7c253dac9a8238404ce1f6b4b1510c7a18 Reviewed-by: Eirik Aavitsland --- main.cpp | 15 ++++++++++++++- process.h | 6 ++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/main.cpp b/main.cpp index 0a3e93d..4802ac3 100644 --- a/main.cpp +++ b/main.cpp @@ -120,6 +120,7 @@ static Config parseConfigFile() { Config config; config.base = config.platform = QLatin1String("unknown"); + config.debugInterface = Config::LocalDebugInterface; #ifdef Q_OS_ANDROID QFile f("/system/bin/appcontroller.conf"); @@ -147,6 +148,14 @@ static Config parseConfigFile() config.base = line.mid(5).simplified(); } else if (line.startsWith("platform=")) { config.platform = line.mid(9).simplified(); + } else if (line.startsWith("debugInterface=")) { + const QString value = line.mid(15).simplified(); + if (value == "local") + config.debugInterface = Config::LocalDebugInterface; + else if (value == "public") + config.debugInterface = Config::PublicDebugInterface; + else + qWarning() << "Unkonwn value for debuginterface:" << value; } } f.close(); @@ -283,7 +292,11 @@ int main(int argc, char **argv) defaultArgs.append(args); if (useGDB) { - defaultArgs.push_front("localhost:" + QString::number(gdbDebugPort)); + QString interface; + if (config.debugInterface == Config::LocalDebugInterface) + interface = QLatin1String("localhost"); + + defaultArgs.push_front(interface + ":" + QString::number(gdbDebugPort)); defaultArgs.push_front("gdbserver"); } diff --git a/process.h b/process.h index 99e5778..767cc95 100644 --- a/process.h +++ b/process.h @@ -10,6 +10,11 @@ struct Config { }; Q_DECLARE_FLAGS(Flags, Flag) + enum DebugInterface{ + LocalDebugInterface, + PublicDebugInterface + }; + Config() : flags(0) { } QString base; @@ -17,6 +22,7 @@ struct Config { QMap env; QStringList args; Flags flags; + DebugInterface debugInterface; }; class Process : public QObject -- cgit v1.2.3