Commit Graph

1162 Commits

Author SHA1 Message Date
Christian Kandeler
e669f05406 Utils: Introduce HostOsInfo class.
The class' member functions are intended to be used
instead of the Q_OS_* macros in all contexts where
the latter are not syntactically required.
This lowers the likelihood of changes made on one
platform breaking the build on another, e.g. due to
the code model missing symbols in #ifdef'ed out code
when refactoring.

Change-Id: I4a54788591b4c8f8d589b8368a6c683d4155c9fa
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-27 17:00:03 +02:00
hjk
a120210cdf debugger: simplify escapeCString
There was no real need for the QString based version after all.

Change-Id: I3ea64ba03164c97205fe5ee545fb53ebf44c7535
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-08-24 13:38:23 +02:00
Friedemann Kleint
5b69bee198 Use QT_NO_CAST_FROM_ASCII for debugger plugin.
Fix gdmi escape routine by using a traits class to adapt
QByteArray/QString.

Change-Id: Ic6d2a0c927e4613aec9f69095bbb04a393e9edb9
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-24 09:46:25 +02:00
Alessandro Portale
ae23d50576 Removal of Symbian support
Qt Creator's support for Symbian was at its peak in version
2.4.x. Nobody really verified it in Qt Creator 2.5 or 2.6.
It is most likely rotten. Let's remove it!

Also, the Symbian support code was spread throughout the whole
Qt Creator code base. The plugin interfaces evolved in the
meantime and target platforms like Android or QNX have 99% of
their code in separate plugins.

In case anyone wants to revive Symbian support in Qt Creator,
please create a plugin for it.

Change-Id: I56a758a3e2fd5b8c64d9aeb8f63d8e916c4883be
Reviewed-by: Alessandro Portale <alessandro.portale@nokia.com>
2012-08-22 13:42:42 +02:00
hjk
ab6330abe7 debugger: remove outdated inactive code
Change-Id: I167a04c3500d0cb4bea1b5390c8920b93fc72ad0
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-22 08:44:53 +02:00
hjk
dd6604eef2 debugger: use *running instead of ^running as running notification.
This is closer to internal gdb state. There are still a few workarounds
for gdb < 7.0 which probably should be dropped as BFD 2.18.50.20080226
yields "assertion fail elf32-i386.c:366" on stock Ubuntu 12.04 gcc,
so stock gdb 6.8 cannot be used with that compiler anyways.

Change-Id: I22c4e0ce91f634cc171d65f0ad07d68d679af10c
Reviewed-by: David Schulz <david.schulz@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-21 16:28:44 +02:00
hjk
f671a58c79 debugger: add support for temporary breakpoints
Change-Id: I841c37d21932da0ef354dbbe2fd75cec2fae86d6
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-21 15:37:43 +02:00
hjk
7ec492f6ed debugger: allow state transitions stopped->stopped unconditionally
This is triggered by the cross-qml-c++ stepping machinery (and was
already allowed there) and get also triggered by a 'continue' in
commands attached to a breakpoint as there there is no intermediate
^running to which the state engine reacts. So this is a band aid.
Better solution would be to have the state following the *running,
and per-thread run/stop state.

Change-Id: If0f1c00e8010aa099ec5da214db95e93aa37279e
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-21 12:08:46 +02:00
hjk
12dd0587fc debugger: fix use of multi-line breakpoint commands.
A (slightly customized) textedit is more appropriate than
a line edit.

Change-Id: I53bd8a6a623c670579b0633359e5722ee8ceba3e
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-21 12:03:47 +02:00
hjk
60de95aff6 debugger: Remove dead code
Change-Id: Id59c9df315f7b19cd8a705e4283e749fb71b4dce
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-16 12:35:10 +02:00
hjk
8184d8e703 debugger: simplify DebuggerEngine construction
The master engine pointer can be given later.

Change-Id: I4d72679dcbd5fe7291067a5e78c984d26cc187aa
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-16 11:56:10 +02:00
hjk
081fb1f062 debugger: simplify parameter guessing
With profiles we have more reliable information, no need for some
of the guessing anymore.

Change-Id: I1818fbb112d44c99ef96c8643256432805a1b97b
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-16 11:27:16 +02:00
hjk
776fd73e30 debugger: don't store active languages twice
Change-Id: I6517b42b4cfd0d2d919fa2971c3ea0995443cbf3
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-15 13:30:51 +02:00
hjk
624aada0d9 debugger: polish gdb option page
Add some tooltips, streamline code.

Change-Id: Iaa1091a0456e1e124fbe27fcad44f99c8d3c7f33
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-14 09:48:05 +02:00
hjk
e7fea1aa7a debugger: streamline classical dumper setup
Remote dumpers are not used anymore, there's also no need to
have it in the engine base class anymore.

Change-Id: If0b6930b07e468d5973d848e02696bc5da40a197
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-12 22:43:24 +02:00
hjk
ac9458e664 debugger: move qtInstallPath closer to place where it is used
Change-Id: I6ed602a7cf498d56fa79cef72aebe7742bc50075
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-12 22:42:25 +02:00
Konstantin Tokarev
d18bf468ad Changed return type of :ICore::mainWindow() to QWidget*
Also removed all <QMainWindow> includes which are not needed
anymore.

Change-Id: I393c9a62a5c6df95d9f35d872e1473a4f13bcdc4
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-19 15:15:53 +02:00
Eike Ziller
e0e8cf3ada Contact -> qt-project.org
Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 13:23:21 +02:00
hjk
ded2dd12b8 debugger: adjust to profile changes
This replaces the debugger command, sysroot and target abi fields
with a profile id.

Change-Id: I831c42ff8624fcfa520c2f28f6f06d73191b2680
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-06-28 15:30:15 +02:00
hjk
af8abd0a9d debugger: .note.gnu.build-id is not a safe marker for debug builds
Change-Id: I4f380aeee9458a114d904ea396310c5a71295036
Reviewed-by: Robert Löhning <robert.loehning@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-20 16:15:17 +02:00
Eike Ziller
e3c354d8f2 Make PluginManager mostly static.
Change-Id: Ib938aa4999c7c418a82304c5cca2e8748ef9d228
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-19 16:11:40 +02:00
hjk
ceb575741c debugger: merge notifyEngineRemoteSetup* and handleRemoteSetup*
Change-Id: I89abcb0dcceef6767cb3e78f4e85c1cd718e78c1
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-13 17:11:58 +02:00
hjk
30ab7ea087 debugger: fix off-by-one in address display in symbols view
Change-Id: If7857d728be059c16c2d0458dd8ebf0a49cf544c
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-13 13:16:10 +02:00
hjk
5d782df33f debugger: Replace adapter classes by GdbEngine subclasses
Change-Id: Iee6195b1eed5251545b9d688221ac2edf19325c1
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
2012-06-13 10:55:59 +02:00
hjk
e65b5b0c9f debugger: also accept external debug info as hint for a debug build
Change-Id: I97cc6cdf6b1f2b8f794ad166c0f2b3f8eadc98b8
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
2012-06-11 15:26:28 +02:00
hjk
92c7dce14f debugger: more elf shuffling
Also distinguish between debuglink and buildid.

Change-Id: I1b55d1df42576c004050d319f46fb8c2ced9c85f
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-08 12:40:08 +02:00
Joerg Bornemann
0e1d7c6b14 Windows compile fix for elfreader
Change-Id: Ie7c0d9d57cddc609fe621876cfc63e0c60b0fa39
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-06 15:43:29 +02:00
hjk
2d466528c9 debugger: rework core adapter
The name of the binary is now read using the elfreader instead
of attaching gdb twice.

Change-Id: I7a75bc64278c4f43e7085d2e479b53173602c966
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-06 09:41:08 +02:00
hjk
cc6c3eab1a debugger: add Load Remote Core
Change-Id: I3ea5ddd608ff9e6764a995dc042466d436ca8474
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-05 17:40:48 +02:00
hjk
e3bd438a8f debugger: make startGdb response handling asyncronous
This allows adapters to take all responses from the startup commands
into account.

Change-Id: I295cb211a4b69cfb8c59b34030aaee8120ffe98e
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-05 11:24:12 +02:00
hjk
a7f8c3c827 debugger: reshuffle sections in module data
Keep track of elf section headers, add a dumper for
Utils::ElfSection etc.

Change-Id: I06d01c0de01ffc6b827a4a79bdc91fdb3e761d75
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-05 11:23:57 +02:00
hjk
1b1dbf1b8b debugger: make elfreader also report offset and size of sections
Change-Id: I8dd3d20ddc4652dc490d87558f46474f79300389
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-05 11:23:47 +02:00
hjk
0394699a4c debugger: more modulehandler polishing
Change-Id: I2382a597783512b566118cccf772ff530cdf9026
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-04 00:14:04 +02:00
hjk
e6d4904a62 debugger: small rework of the modules handler
Use new elfreader, also slimmer interface.

Change-Id: Ie6387ff14bdefd109768d1ce4c395a17211da77d
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-01 19:16:14 +02:00
hjk
278d909208 debugger: use the elfreader instead of external objdump
Change-Id: Ic5c5525703a6ef8924ac68e1a9ed33e411aada08
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-01 19:15:59 +02:00
hjk
62e0f4606b debugger: more precise matching for connection error messages
Change-Id: Icd1821b4ded70242d8a7e09463461d340f277f6b
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-30 14:00:14 +02:00
hjk
012281cdf8 debugger: less scary crash message
Change-Id: I2c24d3a14cf2139a363100733280c4fd0c321524
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@nokia.com>
2012-05-29 15:06:06 +02:00
hjk
6ef2c09247 debugger: remove workaround for some gdb 6.4 builds
Change-Id: Id13f9b352810f59301c409c73f510542687343e7
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-25 11:14:25 +02:00
hjk
e11a3a7697 debugger: rework WatchModel
It's one model for all locals, watch, return, tooltip and inspector
data. This allows more streamlined code paths and better isolation
of the model data from the WatchHandler. WatchItems are now registered
in a hash indexed by iname, so inames can be used as the primary
handle to watch data in the WatchHandler interface.

Change-Id: Idac0a808b5d785307496d1de4198a1f2e9ce3880
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
2012-05-24 14:33:34 +02:00
David Schulz
991157accf Debugger: Fix order of setting debug-file-directory
Change-Id: Ie4032edd4eebc1e3a79fbe15c0bc1292b4a3292a
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-18 16:08:26 +02:00
David Schulz
12e7c26291 Debugger: GDB: Append debug-file-location
Now the debug-file-location will not be replaced, but enhanced when new debug-file-locations are defined.

Change-Id: Ibabcd5814f281e5e378b29abcee1ac646b01cdcd
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-11 18:02:29 +02:00
Kai Koehne
232a1272d4 Gdb: Print missing tokens in timeout
Change-Id: I5a5693fa2c60511ee581bb2b4f5fa3f5604d0e42
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-10 14:51:55 +02:00
Eike Ziller
0a0de08efb Merge remote-tracking branch 'origin/2.5'
Conflicts:
	qtcreator.pri
	qtcreator.qbp
	src/plugins/find/treeviewfind.cpp

Change-Id: Iaae61c98938df24bda5521a923303db89eb7f8fe
2012-05-10 08:14:36 +02:00
hjk
dd66fe6c48 Revert "debugger: improve expansion behaviour of pinned tooltips."
This reverts commit 89cee4313c,
as part of the patch breaks QTCREATORBUG-7277.

The GDB case should not filter the Locals model, but the Tooltip model
to display tooltips. CDB has no choice, as the tooltips are expressions,
i.e. cannot be handled, so using the Locals as fall back there is ok.

Change-Id: I196bc683e06f68301bd86aa6fcce14ad2e8c5774
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-05-09 14:11:20 +02:00
Orgad Shaneh
b3416a57d7 Debugger: Break on raise() -> Break on abort()
Win64 doesn't seem to have raise() at all, or at least it isn't
called on abort()

Change-Id: Ief7a97c321db0f91629848852719977d14094173
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-08 18:14:38 +02:00
Kai Koehne
9d86ad7990 Debugger: Catch 'Remote connection closed' in response
'Remote connection closed' messages sometimes also arrive camuflaged
as a response to a command (with the response of the original
command already there).

Change-Id: I8fa75f561fb341463fc4c0ed0a35aa6fd8300694
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-08 11:35:04 +02:00
hjk
64ade99b0c itaskhandler: interface cleanup
Change-Id: Ib85950a4715d6eaf4225bd8dbcc0c2a91b20dc1d
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-05-07 18:12:40 +02:00
Eike Ziller
9092e70884 Merge remote-tracking branch 'origin/2.5'
Conflicts:
	doc/templates/style/style.css
	qtcreator.pri

Change-Id: I5f4f5f191726883dae18cb760733a5e8e6bd4e7d
2012-04-27 17:02:39 +02:00
hjk
0ce93f0059 debugger: prevent crash on mac
Task-number: QTCREATORBUG-7333
Change-Id: I5e2a40f06babf3143d3d0109eae5e65393ffe012
Reviewed-by: Christian Stenger <christian.stenger@nokia.com>
2012-04-26 15:47:20 +02:00
hjk
071b24d97e debugger: fix translation contexts
* add a few Q_OBJECT
* change DebuggerRunControl::tr() to DebuggerPlugin::tr()

Change-Id: I7ed973ea71b3492e91b45784595d9471587f72ea
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-04-24 17:07:29 +02:00