summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Keller <rainer.keller@digia.com>2013-10-15 09:11:24 +0200
committerRainer Keller <rainer.keller@digia.com>2013-10-15 11:23:40 +0300
commitb6e626726df08a9b63ce23219c3fcb1ccbc29adf (patch)
treece39d7cb781ec22e95b672ef607f2a0c19705818
parent178722f2fb757b89734f612a835b800ed59975da (diff)
Add option to configure gdb network namev1.0.0-RC2
Change-Id: I75ac3d7c253dac9a8238404ce1f6b4b1510c7a18 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@digia.com>
-rw-r--r--main.cpp15
-rw-r--r--process.h6
2 files changed, 20 insertions, 1 deletions
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<QString,QString> env;
QStringList args;
Flags flags;
+ DebugInterface debugInterface;
};
class Process : public QObject