Commit 46c4f84a authored by ck's avatar ck
Browse files

Add support for "set sysroot" for remote debugging.

parent 5f33e08e
......@@ -454,6 +454,16 @@ bool StartRemoteDialog::useServerStartScript() const
return m_ui->useServerStartScriptCheckBox->isChecked();
}
void StartRemoteDialog::setSysroot(const QString &sysroot)
{
m_ui->sysrootPathChooser->setPath(sysroot);
}
const QString StartRemoteDialog::sysroot() const
{
return m_ui->sysrootPathChooser->path();
}
void StartRemoteDialog::updateState()
{
bool enabled = m_ui->useServerStartScriptCheckBox->isChecked();
......
......@@ -140,6 +140,8 @@ public:
QString serverStartScript() const;
void setUseServerStartScript(bool on);
bool useServerStartScript() const;
void setSysroot(const QString &sysroot);
const QString sysroot() const;
private slots:
void updateState();
......
......@@ -112,6 +112,7 @@ public:
QString remoteArchitecture;
QString symbolFileName;
QString serverStartScript;
QString sysRoot;
int toolChainType;
QString dumperLibrary;
......
......@@ -1292,17 +1292,20 @@ void DebuggerPlugin::startRemoteApplication()
configValue(_("LastServerStartScript")).toString());
dlg.setUseServerStartScript(
configValue(_("LastUseServerStartScript")).toBool());
dlg.setSysroot(configValue(_("LastSysroot")).toString());
if (dlg.exec() != QDialog::Accepted)
return;
setConfigValue(_("LastRemoteChannel"), dlg.remoteChannel());
setConfigValue(_("LastRemoteArchitecture"), dlg.remoteArchitecture());
setConfigValue(_("LastServerStartScript"), dlg.serverStartScript());
setConfigValue(_("LastUseServerStartScript"), dlg.useServerStartScript());
setConfigValue(_("LastSysroot"), dlg.sysroot());
sp->remoteChannel = dlg.remoteChannel();
sp->remoteArchitecture = dlg.remoteArchitecture();
sp->startMode = StartRemote;
if (dlg.useServerStartScript())
sp->serverStartScript = dlg.serverStartScript();
sp->sysRoot = dlg.sysroot();
RunConfigurationPtr rc = activeRunConfiguration();
if (rc.isNull())
......
......@@ -159,6 +159,7 @@ void RemoteGdbAdapter::startInferior()
m_engine->postCommand(_("set architecture %1")
.arg(startParameters().remoteArchitecture));
m_engine->postCommand(_("set sysroot %1").arg(startParameters().sysRoot));
if (!startParameters().processArgs.isEmpty())
m_engine->postCommand(_("-exec-arguments ")
......
......@@ -6,7 +6,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>310</width>
<width>439</width>
<height>224</height>
</rect>
</property>
......@@ -49,26 +49,36 @@
<item row="1" column="1">
<widget class="QComboBox" name="architectureComboBox"/>
</item>
<item row="2" column="1">
<item row="4" column="1">
<widget class="QCheckBox" name="useServerStartScriptCheckBox"/>
</item>
<item row="2" column="0">
<item row="5" column="1">
<widget class="Utils::PathChooser" name="serverStartScript"/>
</item>
<item row="5" column="0">
<widget class="QLabel" name="serverStartScriptLabel">
<property name="text">
<string>Server start script:</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="useServerStartScriptLabel">
<property name="text">
<string>Use server start script:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="Utils::PathChooser" name="serverStartScript" native="true"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="serverStartScriptLabel">
<item row="2" column="0">
<widget class="QLabel" name="sysrootLabel">
<property name="text">
<string>Server start script:</string>
<string>Sysroot:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="Utils::PathChooser" name="sysrootPathChooser"/>
</item>
</layout>
</item>
<item>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment