aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/debugger/debugger.pro
Commit message (Collapse)AuthorAgeFilesLines
* Remove qmake build filesEike Ziller2022-01-201-139/+0
| | | | | | | | | | Removes qmake as a build system for building Qt Creator itself. Keep them for some tests that are not completely moved to CMake yet. Change-Id: I846c6ef65626b6dfae6375fdc85d00677aa8c2fb Reviewed-by: hjk <[email protected]> Reviewed-by: Christian Kandeler <[email protected]> Reviewed-by: Christian Stenger <[email protected]>
* Merge remote-tracking branch 'origin/4.13' into masterEike Ziller2020-08-101-1/+0
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: cmake/QtCreatorIDEBranding.cmake qbs/modules/qtc/qtc.qbs qtcreator_ide_branding.pri src/plugins/cmakeprojectmanager/cmakebuildstep.cpp src/plugins/cmakeprojectmanager/cmakebuildstep.h tests/auto/debugger/tst_namedemangler.cpp tests/auto/qml/codemodel/check/tst_check.cpp Change-Id: Iefd5f71c03c0078513b76a92af764a4fb22ee4c2
| * Debugger: Remove name demanglerChristian Kandeler2020-07-201-1/+0
| | | | | | | | | | | | | | Never been used, completely outdated, fails autotest. Change-Id: I2c1808b4a66e9abdb839670eeae3e5226c7246ba Reviewed-by: hjk <[email protected]>
* | Replace QT_USE_FAST_{OPERATOR_PLUS,CONCATENTION} by QT_USE_QSTRINGBUILDERhjk2020-08-071-2/+0
|/ | | | | | | | | | QT_USE_FAST_CONCATENATION doesn't do anything nowadays. Using QT_USE_QSTRINGBUILDER is the same as QT_USE_FAST_OPERATOR_PLUS for QStrings and enables more QStringBuilder use for QByteArrays. Change-Id: Ibd297817c50d86661d47822799f989447249af1b Reviewed-by: Christian Kandeler <[email protected]>
* BareMetal: Long live support for KEIL uVision v5.x debuggerDenis Shienkov2020-02-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds debugger integration from the KEIL uVision IDE: * http://www2.keil.com/mdk5/uvision/ This IDE has the uVision Socket Interface (UVSC) that allows to the applications configuration, building and debugging: * http://www.keil.com/appnotes/docs/apnt_198.asp Besides, it provides a binary client libraries for Windows, which are implements some API which we are use in this patch. Currently implemented the following features: * Enumeration of a stack frames. * Enumeration of a threads (tasks). * Registers view (read/write). * Local variables view (read/write). * Watchers view (read/write). * Disassembler view. * Current location marker. * Break-points. * Step-in. * Step-over. * Step-out. * Step-by-instruction. * Start/stop/pause/continue debugger. * Auto-detection for the installed uVision instances (as debuggers). * Wizard for choosing and configuring of the UVSC debug providers. At this moment added support only for the 32-bit ARM devices, provided by the STMicroelectronics: https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html For this are implemented two debugger providers: * Simulator - allow to simulate the target device. * ST-Link v2 - it is a HW debugger. This implementation tested only with the QBS using the following target boards: * NUCLEO-F767ZI (based on STM32F767ZIT6 MCU). * STM32F4DISCOVERY (based on STM32F407VG MCU). * STM32F103x (based on STM32F103C8T6 MCU). A more detailed information about this patch can be found in a bug-tracker. Fixes: QTCREATORBUG-23426 Change-Id: Ie36a1f7430b56c33d6665cc35e43fe9bd95d28f1 Reviewed-by: hjk <[email protected]> Reviewed-by: Alessandro Portale <[email protected]>
* Debugger: Add peripheral registers description file supportDenis Shienkov2019-07-311-28/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature is useful for the bare-metal programming. It allows to view the peripheral registers of the debugged device using the GDB. An information about the peripheral registers for a concrete device contains in a special SVD file. A format of this file described e.g. here: * https://www.keil.com/pack/doc/CMSIS/SVD/html/svd_Format_pg.html This feature supported only for ARM devices, and an appropriate SVD files can be found in the Internet, also this files provides by KEIL or IAR EW IDE's. A use case in QtC is that the user should to choose desired SVD file and set its path to the bare-metal device configuration widget. After this, the user can enable the "Peripheral Registers" view, choose a desired register group and to see a peripheral register values. Currently the following basic features are implemented: * Choosing SVD file for a target bare-metal device. * Choosing any peripheral register group, which is available for this device. * Seeing the info about the each peripheral register and its fields. * Seeing the value for the each peripheral register and its fields. * Changing the value for the each peripheral register and its fields (if it is allowed by access for a concrete register or field). * Changing the format of the values (hexadecimal, decimal, octal, binary). Fixes: QTCREATORBUG-18729 Change-Id: I3c38ea50ccd2e128746458f9b918095b4c2d644a Reviewed-by: hjk <[email protected]>
* Move KitAspectWidget definitions alongside their KitAspectsChristian Kandeler2019-02-111-2/+0
| | | | | | | | | | A KitAspectWidget class is tightly coupled with the respective KitAspect, and no one else ever needs to see any KitAspectWidget subclass at build time. Change-Id: I1883af3b054c225e1ff5dd913118715bfdbaacfc Reviewed-by: Christian Kandeler <[email protected]> Reviewed-by: hjk <[email protected]>
* Debugger: Rename snapshothandler.{cpp,h} to enginemanager.{cpp,h}hjk2018-09-281-2/+2
| | | | | | | That's what they are nowadays. Change-Id: I1bd6db18f2142ecf488eba51ca739675eac753c7 Reviewed-by: Christian Stenger <[email protected]>
* Debugger: Make most views per-engine instead of singletonshjk2018-08-171-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a step towards properly supporting multiple debugger sessions side-by-side. The combined C++-and-QML engine has been removed, instead a combined setup creates now two individual engines, under a single DebuggerRunTool but mostly independent with no combined state machine. This requires a few more clicks in some cases, but makes it easier to direct e.g. interrupt requests to the interesting engine. Care has been taken to not change the UX of the single debugger session use case if possible. The fat debug button operates as-before in that case, i.e. switches to Interrupt if the single active runconfiguration runs in the debugger etc. Most views are made per-engine, running an engine creates a new Perspective, which is destroyed when the run control dies. The snapshot view remains global and becomes primary source of information on a "current engine" that receives all menu and otherwise global input. There is a new global "Breakpoint Preset" view containing all "static" breakpoint data. When an engine starts up it "claims" breakpoint it believes it can handle, but operates on a copy of the static data. The markers of the static version are suppressed as long as an engine controls a breakpoint (that inclusive all resolved locations), but are re-instatet once the engine quits. The old Breakpoint class that already contained this split per-instance was split into a new Breakpoint and a GlobalBreakpoint class, with a per-engine model for Breakpoints, and a singleton model containing GlobalBreakpoints. There is a new CppDebuggerEngine intermediate level serving as base for C++ (or, rather, "compiled") binary debugging, i.e. {Gdb,Lldb,Cdb}Engine, taking over bits of the current DebuggerEngine base that are not applicable to non-binary debuggers. Change-Id: I9994f4c188379b4aee0c4f379edd4759fbb0bd43 Reviewed-by: Christian Stenger <[email protected]> Reviewed-by: hjk <[email protected]>
* Debugger: Merge DebuggerStartParameter into *RunParametershjk2017-09-131-1/+0
| | | | | | | | | | The users (typically target specific DebuggerRunTool derived classes) are meant to use the individual setter functions nowadays, not the set up the full structure, so the members are a true implementation detail now. Change-Id: Ida04801e3230a2fe8bbadde8845e58c3077c87a5 Reviewed-by: Christian Stenger <[email protected]>
* Merge DebuggerItemManager and DebuggerItemModel datahjk2017-01-161-2/+0
| | | | | | Change-Id: I400fe94316433c538f82badde12ad704d722d730 Reviewed-by: James McDonnell <[email protected]> Reviewed-by: hjk <[email protected]>
* Debugger/BinEditor: Standardize interfacehjk2016-07-211-2/+0
| | | | | | | Change-Id: I4acf6bc7648e57c564e86023176ae3905a293a99 Reviewed-by: Orgad Shaneh <[email protected]> Reviewed-by: Christian Stenger <[email protected]> Reviewed-by: Eike Ziller <[email protected]>
* Debugger: Remove some uses of semi-global currentEngine()hjk2016-07-181-10/+0
| | | | | | | | | | Make use of recent TreeModel improvements in various tool views, push more operations into the engine- owned data models, specifically context menu creation. Change-Id: I479c97102b9fb81611c6461c6df1cec59295179a Reviewed-by: Christian Stenger <[email protected]> Reviewed-by: hjk <[email protected]>
* Debugger: Consolidate icon storage handlinghjk2016-06-281-1/+2
| | | | | | | | | We settled now on global objects being fine for the purpose in Core and ProjectExplorer, so there's no point in using something more fancy in the debugger. Change-Id: I72e45f398c09d22894419c274dfbea77da0fc153 Reviewed-by: Christian Stenger <[email protected]>
* Debugger: Remove debuggerstringutils.hhjk2016-06-091-1/+0
| | | | | | | | | | With QT_RESTRICTED_CAST_FROM_ASCII making GdbMi etc operate on QString is feasible again. Take this as opportunity to move debugger encoding handling closer to a 'conversion on input and output if needed, storage in QString only' scheme. Change-Id: I2f10c9fa8a6c62c44f4e6682efe3769e9fba30f7 Reviewed-by: Christian Stenger <[email protected]>
* Debugger: Make some of the plugin tests compilable againhjk2016-03-161-0/+5
| | | | | Change-Id: I5c3885cb385dc1c15dce14f2ff52bf70edee8399 Reviewed-by: Christian Stenger <[email protected]>
* Move analyzerbase to debuggerhjk2016-02-251-0/+1
| | | | | | | | | | | | This is the first mechanical step to execute on the 'shared pool of debugger/analyzer views' idea. Future steps would be providing infrastructure for the view pool, making all analyzer/debugger views use the pool and then re-extract a sensible base for a 'analyzer-and/or-debugger' tool plugin interface. Change-Id: I1bb392e6dd3084fc56937956bee1d6fd9530335d Reviewed-by: Eike Ziller <[email protected]>
* Move QmlConsole to Debuggerhjk2015-12-091-0/+1
| | | | | | | | | | | Now it is closer to its only user and possibly reusable for no-QML uses there. We also drop the QML/JS syntax checker. The application being debugged can already tell us about syntax errors. There is no need to duplicate that functionality. Change-Id: I2ba151f9f4c854c6119ba5462c21be40bddcebf9 Reviewed-by: Ulf Hermann <[email protected]> Reviewed-by: hjk <[email protected]>
* Themed Icons: Introduce Utils::IconAlessandro Portale2015-11-251-1/+2
| | | | | | | | | | | | | | Instead of describing icons via file name or in the themed icons case via a string that is a list of mask/color pairs, we have now a class for it. Icons are now listed in per-plugin *icons.h headers. RunControl::m_icon was The only place left where an icon property was in fact a string. This patch changes that member to be a Utils::Icon. Change-Id: Ibcfa8bb25e6d2e330c567ee7ccc0b97ead603177 Reviewed-by: Eike Ziller <[email protected]>
* Debugger: Use QJson* instead of QScriptEngine for json handlingAlessandro Portale2015-04-081-2/+1
| | | | | | | | | That lets us remove the dependency to QtScript Change-Id: Id80bebf658abee814d92210219d86a015629d32c Reviewed-by: Friedemann Kleint <[email protected]> Reviewed-by: Liang Qi <[email protected]> Reviewed-by: Alessandro Portale <[email protected]>
* Debugger: Introduce a pty based channel to inferiorshjk2015-01-261-0/+2
| | | | | | | | | This is experimental for now and requires QTC_USE_PTY=1 in the environment to be used. Change-Id: I460ce7b9283467d481e903f731f4243b7e5ec094 Reviewed-by: Fawzi Mohamed <[email protected]> Reviewed-by: hjk <[email protected]>
* Debugger: Use Utils::TreeModel for breakpointshjk2015-01-121-2/+0
| | | | | Change-Id: I7f62f9d64daf7624794aa82495d4b2c8d97b33df Reviewed-by: Christian Stenger <[email protected]>
* Debugger: Rework debugger option pagehjk2015-01-071-2/+0
| | | | | | | Use Utils::TreeModel internally, simplify code. Change-Id: Ie5c28519d5c23441fcd6b4fbff470cc70a92ee97 Reviewed-by: Christian Stenger <[email protected]>
* Debugger: Consolidate RunControl creationhjk2014-10-201-3/+2
| | | | | | | Export factory, de-export plugin, to remove one indirection Change-Id: I13a46460d07d5ded6b26f2b5ceccd01142fb10e8 Reviewed-by: Christian Stenger <[email protected]>
* Debugger: Consolidate Debugger view creationhjk2014-06-041-2/+0
| | | | | Change-Id: I43353911c7c0c8250ee2bccddcf5fdccf04d457c Reviewed-by: hjk <[email protected]>
* Debugger: Remove unused debuggerstreamops.* fileshjk2014-05-301-2/+0
| | | | | Change-Id: I11a793f84ae666790715505dc839cd8f678a0728 Reviewed-by: hjk <[email protected]>
* Debugger: Streamline option page codehjk2014-05-161-3/+0
| | | | | Change-Id: I4ce31031bda92864212e914257e4f5c1fafa2af6 Reviewed-by: hjk <[email protected]>
* Attach to unstarted ApplicationPetar Perisin2014-02-121-2/+4
| | | | | | | | | | | | | | | | | This patch adds a dialog that can be useful in situations where you have a script-based test tool, that starts executable and executes test on it. This dialog allows user to specify executable and to begin watching process, where dialog simply waits for executable to be started. As soon as executable is found, QtCreator will attach to it. also, since script-based test can constantly start-stop executable. as soon as it is detected that executable is down, another waiting process starts where dialog waits for executable to come up again. Change-Id: I3bd62f656d34f8dff5641f6747ec12d97cbae2a4 Reviewed-by: hjk <[email protected]>
* Debugger: Split type simplification into file of its ownhjk2014-01-151-2/+4
| | | | | | | This still needs to use a proper parser at some time. Change-Id: Ia0afe593dd9dc32f22f80adb7232c04f4db79cf6 Reviewed-by: hjk <[email protected]>
* Debugger: Remove LldbLibEnginehjk2013-11-271-1/+0
| | | | | | | That's dead code now that we go with the Python interface. Change-Id: Ie10393d6adf5d25540c4082aeccf683e88bcdc89 Reviewed-by: hjk <[email protected]>
* Debugger: Move classes into their own filesTobias Hunger2013-10-281-0/+8
| | | | | Change-Id: I89853ffb4192b0da1f34d471e250d4ec32daa3da Reviewed-by: hjk <[email protected]>
* Debugger: Do not install simple.proOrgad Shaneh2013-09-101-19/+0
| | | | | | | Doesn't belong in the install directory Change-Id: I28578865e0424a43c5c9fbd420b37b816f147580 Reviewed-by: Christian Kandeler <[email protected]>
* Merge remote-tracking branch 'origin/2.8' into HEADEike Ziller2013-07-031-1/+1
|\ | | | | | | | | | | | | | | Conflicts: qtcreator.pri qtcreator.qbs Change-Id: I5d2018d3437b99bcdffa92bf1a212f42923c4fad
| * Fix building from MSYS shellRay Donnelly2013-06-281-1/+1
| | | | | | | | | | | | | | | | | | In debugger.pro, take path that checks and sets QMAKE_CHK_EXISTS_GLUE if QMAKE_SH isn't empty. Change-Id: I7c37acc5867c1ac3ab6da33db3eb2479c1d4213c Reviewed-by: Alexey Pavlov <[email protected]> Reviewed-by: hjk <[email protected]>
* | Remove script manager and script debugger engine.Eike Ziller2013-07-011-1/+0
|/ | | | | | | | | Doesn't really serve a purpose any more. Change-Id: I8c3bc11bf7b05a15eafd2a22456a40b270cefadf Reviewed-by: Friedemann Kleint <[email protected]> Reviewed-by: hjk <[email protected]> Reviewed-by: Eike Ziller <[email protected]>
* Move DebuggerRunConfigurationAspect into DebuggerTobias Hunger2013-04-051-0/+2
| | | | | Change-Id: I03cab5d963a6d7c77171efe360a552d8109f6a8b Reviewed-by: Tobias Hunger <[email protected]>
* derive TARGET from QTC_{LIB,PLUGIN}_NAMEOswald Buddenhagen2013-04-031-2/+0
| | | | | | | | the information is redundant now Change-Id: Icc8c8b4ace11538d45c6c9e1dbe5a7976f4743e1 Reviewed-by: Tobias Hunger <[email protected]> Reviewed-by: Eike Ziller <[email protected]>
* centralize assignment of TEMPLATE = libOswald Buddenhagen2013-04-021-1/+0
| | | | | Change-Id: I4025539f3875e79f03743ba9ed3fd09cd31b998d Reviewed-by: Tobias Hunger <[email protected]>
* remove unnecessary include pathsOswald Buddenhagen2013-04-021-2/+0
| | | | | | | | the #include statements are supposed to be written in a way that makes these unnecessary. Change-Id: I6c9c0c3b00377cb8438036c96e5321ffd493523f Reviewed-by: Tobias Hunger <[email protected]>
* automatically include libs' and plugins' _dependencies.pri filesOswald Buddenhagen2013-04-021-1/+0
| | | | | Change-Id: I25645bb625b467c6f9d895ff89a70acd6a25683e Reviewed-by: Tobias Hunger <[email protected]>
* Debugger: Introduce a debugger engine talking to lldb command linehjk2013-03-221-0/+1
| | | | | Change-Id: Ie6b9cb68045db12cff1bbb06a7049529fc39c21f Reviewed-by: hjk <[email protected]>
* Merge remote-tracking branch 'origin/2.7'Eike Ziller2013-03-081-1/+2
|\ | | | | | | | | | | | | | | Conflicts: qtcreator.pri qtcreator.qbs Change-Id: Ie71d0d5aebdd1406d94de348bcd4cfcc203a1ba9
| * Debugger: Fix test dependencyOrgad Shaneh2013-03-071-1/+2
| | | | | | | | | | | | | | Caused copying simple.pro and relink every build Change-Id: Id39b9478e5eab3d9798728fd405f775b7cf47a28 Reviewed-by: Christian Kandeler <[email protected]>
* | Debugger: Rename lldb to lldblibhjk2013-02-201-1/+1
|/ | | | | | | This is the approach directly linking to the lldb library. Change-Id: I5d51ad59d8292b46539a55da8e23918fb7de9a92 Reviewed-by: hjk <[email protected]>
* Debugger: split editor related code off watchutils.{h,cpp}hjk2013-01-251-0/+2
| | | | | | | | This is now in sourceutils.{h,cpp} to make watchutils.{h,cpp} better acessible to the debugger auto-tests. Change-Id: Ie87e715bc7018ca190a460c37dfd19bc897059f0 Reviewed-by: Friedemann Kleint <[email protected]>
* Debugger: rename gdb/gdbmi.{h,cpp} into debuggerprotocol.{h,cpp}hjk2013-01-241-0/+2
| | | | | | | The scope is a bit broader nowadays. Change-Id: I9578da94f06df199be5668c1751fd7bfb37f1c5b Reviewed-by: Friedemann Kleint <[email protected]>
* Generalize QT_NO_CAST_FROM_ASCIIOrgad Shaneh2013-01-161-1/+1
| | | | | Change-Id: I2b6c5876cafb7cf19fc3040bc84fd88a90b6c0e0 Reviewed-by: hjk <[email protected]>
* Debugger: Add Image viewer with color picker and context menu.Friedemann Kleint2013-01-081-2/+4
| | | | | Change-Id: I31673da5ba85e87c9819059a9e6806b5deecff1e Reviewed-by: hjk <[email protected]>
* debugger: inline commonoptionspage.uihjk2012-11-161-2/+1
| | | | | Change-Id: I8ededc392485558ed4327cc2b76e73fba81bf562 Reviewed-by: hjk <[email protected]>
* ScriptConsole: Move from Debugger to QmlJSToolsAurindam Jana2012-10-051-12/+0
| | | | | | | | | | | | | | The console is now a part of qmljstools plugin. The console appears as an output pane. A dummy QScriptEngine evaluates expressions when a declarative debug session is not in progress. During a debug session, the expressions are evaluated by the debug services. Task-Number: QTCREATORBUG-7402 Change-Id: Ic2eeac44fb335c706be03b89f8672b0356efe984 Reviewed-by: Christiaan Janssen <[email protected]> Reviewed-by: hjk <[email protected]>