| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem is that this plugin was originally developed
only for working with the GDB debugging engine. This hard
dependency penetrates to all plugin logic, that excludes an
easy addition of other types of a debugger engines.
This patch tries to minimize the GDB dependency and improves
code a bit in the following way:
* A code that belongs to the GDB engine moved to the separate
debugservers/gdb directory.
* A classes having a common functionality are renamed with
'Debug' suffixes instead of 'Gdb' suffixes.
* Introduced a new interface IDebugServerProvider{Factory|ConfigWidget}
whih are used as a base for all derived debug servers
providers (e.g. for the OpenOCD, STLink and etc).
* The IDebugServerProvider interface has a new virtual
engineType() method to show a supported debugger engine by
a specific debugger server provider. This method is used in
BareMetalDebugSupport class to detect a provider engine
for an additional initialization (which depends on an used
debugger engine).
* The IDebugServerProvider interface has a new virtual hasProcess()
method. E.g. this is required for a future debug server providers
which has not a remote processes. In this case the
BareMetalDevice::canCreateProcess() will report about that in
a right way.
Thus, this approach allowed us to preserve a previous behavior
of an already implemented GDB providers. Also it makes possible
to add a new providers in a future with a minimized costs.
Change-Id: I1be84b9178d4aa78c3ef5108a9e6b381e245f36f
Reviewed-by: hjk <hjk@qt.io>
|
|
|
|
|
|
| |
Task-number: QTCREATORBUG-16281
Change-Id: Ieff929343b5dc3a84d9ecf5f4f0a032cb4ae4076
Reviewed-by: hjk <hjk@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
* An include files and forward declarations are sorted in an
alphabetical order.
* Used the 'final' keywords for the methods and classes which
not should be overridden.
* Used the 'auto' and 'explicit' keywords more.
* A class members are initialized in an initializier list.
Change-Id: Ia74783e47aff92467d696d471760b5a97bca3d7a
Reviewed-by: hjk <hjk@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
modernize-use-auto
modernize-use-nullptr
modernize-use-override
modernize-use-equals-default
modernize-use-using
Change-Id: Ia4e7f4e75a49357ca1b225f25af68a0480fba748
Reviewed-by: hjk <hjk@qt.io>
|
|
|
|
|
|
|
| |
Kudos to cgmb and https://github.com/cgmb/guardonce
Change-Id: Ifa8970734b8d43fd08c9260c645bdb0228633791
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
|
|
|
|
|
|
|
| |
* Update files in src/plugins
Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
|
|
|
|
|
|
|
| |
Change-Id: Ib7162ae6b40d06bfb54705fd4b53bde2ce78083c
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Reviewed-by: Tim Sander <tim@krieglstein.org>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/libs/utils/tooltip/tipcontents.cpp
src/libs/utils/tooltip/tipcontents.h
src/plugins/android/androiddeployqtstep.cpp
src/plugins/baremetal/baremetalconstants.h
src/plugins/baremetal/baremetaldevice.cpp
src/plugins/baremetal/baremetaldevice.h
src/plugins/baremetal/baremetaldeviceconfigurationwidget.cpp
src/plugins/baremetal/baremetaldeviceconfigurationwidget.h
src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp
src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp
src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h
src/plugins/baremetal/baremetalplugin.cpp
src/plugins/baremetal/baremetalplugin.h
src/plugins/baremetal/baremetalruncontrolfactory.cpp
src/plugins/baremetal/baremetalruncontrolfactory.h
src/plugins/cppeditor/cppcodemodelinspectordialog.cpp
src/plugins/cppeditor/cppdoxygen_test.cpp
src/plugins/cppeditor/cppdoxygen_test.h
src/plugins/debugger/breakpointmarker.cpp
src/plugins/debugger/debuggeritemmodel.cpp
src/plugins/debugger/debuggeritemmodel.h
src/plugins/debugger/loadcoredialog.cpp
src/plugins/genericprojectmanager/cppmodelmanagerhelper.cpp
src/plugins/projectexplorer/addnewmodel.cpp
src/plugins/projectexplorer/addnewmodel.h
src/plugins/projectexplorer/jsonwizard/jsonfieldpage.cpp
src/plugins/qmlprofiler/abstracttimelinemodel.cpp
src/plugins/qmlprofiler/abstracttimelinemodel.h
src/plugins/qmlprofiler/notesmodel.cpp
src/plugins/qmlprofiler/qml/CategoryLabel.qml
src/plugins/qmlprofiler/qml/MainView.qml
src/plugins/qmlprofiler/qml/Overview.js
src/plugins/qmlprofiler/qml/Overview.qml
src/plugins/qmlprofiler/qml/TimeDisplay.qml
src/plugins/qmlprofiler/qml/TimeMarks.qml
src/plugins/qmlprofiler/qmlprofilertimelinemodelproxy.cpp
src/plugins/qmlprofiler/sortedtimelinemodel.cpp
src/plugins/qmlprofiler/sortedtimelinemodel.h
src/plugins/qmlprofiler/timelinemodelaggregator.cpp
src/plugins/qmlprofiler/timelinemodelaggregator.h
src/plugins/qmlprofiler/timelinerenderer.cpp
src/plugins/qmlprofiler/timelinerenderer.h
src/plugins/qmlprojectmanager/QmlProjectManager.json.in
src/plugins/texteditor/findinfiles.cpp
src/plugins/vcsbase/vcsconfigurationpage.cpp
src/shared/qbs
src/shared/scriptwrapper/interface_wrap_helpers.h
src/shared/scriptwrapper/wrap_helpers.h
tests/auto/qmlprofiler/abstracttimelinemodel/tst_abstracttimelinemodel.cpp
tests/system/suite_debugger/tst_debug_empty_main/test.py
tests/system/suite_debugger/tst_qml_js_console/test.py
tests/system/suite_debugger/tst_qml_locals/test.py
Change-Id: I67540b648f8b162496f4aa606b04d50c7c9125c6
|
| |
| |
| |
| |
| | |
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The user has only one possibility to setup of the remote GDB server
when a new device is created (or to modify it for existing device).
It is possible only in the host/port fields for connection to the
GDB server. It is a little inconvenient for the user. If the user
wants to use other configuration of the GDB server, then need every
time to edit the current configuration.
Improving this it is introduction a new concept with a new entity
named as "GDB server provider". Now to the device debugging purpose
the user can choose any of the GDB provider from the list (by analogy
with toolchain and so on). Each configuration of GDB provider is
created by the user manually on the new "GDB Server Provider" options
page. This can be made before or after creation of device.
A GDB server provider can work in three startup modes (depends on
implementation of concrete provider):
1) NoStartup mode.
This means that we do not want to startup a provider, we just trying
to connect to the already started GDB provider server. This mode uses
the TCP/IP connection with manually specifying of remote host and port.
2) StartupOnNetwork mode.
This means that we want to launch of the GDB provider automatically
before connect to it in process of remote debugging. This mode also
uses the TCP/IP protocol. In addition to it, a GDB provider can has
additional options which are contains a paths to provider executable
file, to configuration files and so on (it is depends on concrete
provider implementation). This mode (with NoStartup) covers about 90%
of usecase, and is supported by most set of the GDB server providers.
3) StartupOnPipe mode.
This is similar to StartupOnNetwork mode and we also automatically
starts the GDB server provider before debugging. But in this case is
used the Pipe mode instead of TCP/IP. Not each of the GDB provider
can support debugging via pipes.
This patch has concrete implementations for a following set of the
GDB server providers:
* "Default" provider which supports only the NoStartup mode.
* "Open On-Chip Debugger" (http://openocd.sourceforge.net/)
provider which supports all modes.
* "STLinkUtil" (https://github.com/texane/stlink)
provider which supports NoStartup and StartupOnNetwork modes.
Tested on Windows and Linux with:
* target HW: ARM Stm32F4Discovery board with HW debugger STLink-v2
* provider: OpenOCD v0.8.0 (tested on Windows and Linux)
* provider: STLink-Util (tested on Linux only)
* toolchain: ARM GCC v4.9.2
* debugger: GDB v7.8.1 (with Python support)
* QtCreator with QBS project
Task-number: QTCREATORBUG-13686
Change-Id: I59c775d91b0a4227d931188879850c536290e1ba
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: I3c22ef2685d7aa589f5d0ab74d693653a4c32082
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
|
|
|
|
|
|
| |
Change-Id: I1dc1d306d0c1e8070e75a73c23f622389f06fad1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
|
|
|
|
|
|
| |
Change-Id: Ie51847de912748d05a6b208bec82fd612d777202
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
|
|
|
|
|
|
| |
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
|
|
This patch adds the baremetal plugin. The baremetal plugin is for
debugging small targets with hardware debugger where the remote linux
plugin does not fit. It adds a new kit and device class of type
baremetal. The device allows entering custom gdb commands. Currently only
qmake builds are possible. To use this with smaller devices without qt
a fake-qt installation is needed. CMake and qbs is currently not
supported.
Change-Id: I86816f897a2e9ed8b95e3184387969cedf8a14d7
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
|