Commit Graph

283 Commits

Author SHA1 Message Date
nickysn
5306ee552b * regenerated makefiles with latest fpcmake
git-svn-id: trunk@34008 -
2016-06-18 01:00:45 +00:00
nickysn
a58dd988a4 * regenerate makefiles after the fpcmake update
git-svn-id: trunk@34002 -
2016-06-17 22:05:59 +00:00
pierre
e488d7c81c Prepare for upcoming GDB 7.11 release
git-svn-id: trunk@33082 -
2016-02-10 13:05:01 +00:00
pierre
ab730efac7 Fixed use with 7.9 release or later, symtab strcut was completely changed
git-svn-id: trunk@32605 -
2015-12-07 00:28:57 +00:00
pierre
51d849ae3b Handle collect2 -plugin option and avoid error output on non-existing gdb.exe
git-svn-id: trunk@32221 -
2015-11-02 15:07:33 +00:00
joost
ad28a21b45 * Add gdbver_nogdb.inc to fpmake.inc
git-svn-id: trunk@32124 -
2015-10-22 17:19:14 +00:00
pierre
938c797a0d Fix error in last commit opthandled -> opt_handled; Add FORCEAWK option to overrule AWK found in Makefile
git-svn-id: trunk@31827 -
2015-09-25 13:44:23 +00:00
pierre
4cb5a35228 Add removedir= argument; use cd ; pwd -P to obtain absolute path; use defs.h header in gdb_get_stdin.c source
git-svn-id: trunk@31816 -
2015-09-24 15:34:21 +00:00
nickysn
e83f3d2978 * updated all the remaining makefiles that 'fpcmake -r' missed
git-svn-id: trunk@31527 -
2015-09-05 11:21:36 +00:00
joost
46906833f1 * Re-generated makefile's
git-svn-id: trunk@31318 -
2015-08-12 19:47:44 +00:00
joost
ac87da7c42 * Filter the Makefile's unit searchpaths from the fpmake command line.
To void cluttering the .fpm file

git-svn-id: trunk@31317 -
2015-08-12 19:15:14 +00:00
Károly Balogh
77bdd83bfc AROS/x86_64: regenerated Makefiles
git-svn-id: trunk@31177 -
2015-06-29 00:09:06 +00:00
Jonas Maebe
89418d23e5 * regenerated Makefiles with Linux/AArch64 support
git-svn-id: trunk@30891 -
2015-05-20 20:15:10 +00:00
nickysn
011e8fcd07 * moved the code for setting max width and then restoring it when obtaining a
backtrace from fpdebug.pas to the Backtrace method in the libgdb.a interface.
- removed the code for changing the gdb window width from fpdebug.pas entirely,
  because it makes no sense for the gdb/mi interface and it's better to use
  MaxWidth/NormWidth in the libgdb.a interface for the libgdb.a functions that
  need it.

git-svn-id: trunk@30299 -
2015-03-24 00:27:44 +00:00
nickysn
aece198492 * moved the code from the libgdb.a interface for setting maximum width and then
restoring it from InternalGetValue to new methods (MaxWidth and NormWidth), so
  they can be reused by other methods as well.

git-svn-id: trunk@30298 -
2015-03-23 22:33:49 +00:00
nickysn
52d13e6ddb + added 16-bit int overloads for TGDBController.GetIntRegister. Useful for
e.g. getting the segment registers on x86.

git-svn-id: trunk@30113 -
2015-03-06 21:10:57 +00:00
pierre
94c4308086 annotate_source also has gdbarch parameter since 7.0
git-svn-id: trunk@30097 -
2015-03-04 23:11:04 +00:00
pierre
5bb65ded3d Add missing gdbarch field for annotate_frame_begin for version 7.0 or above
Try to cope with buffering problems to catch complete argument list

git-svn-id: trunk@30095 -
2015-03-04 17:37:57 +00:00
nickysn
54dcd555d0 * switch to always using an unsigned type for CORE_ADDR
git-svn-id: trunk@30081 -
2015-03-02 22:44:24 +00:00
nickysn
de6975d001 * improvements to the libgdb.a version of Print[Formatted]Command:
* return got_error=true in case of an error (fixes display of local variables of a parent function from a nested one)
  * fixed returning an error message (previously it would return an empty string)
  * trimming the #10 at the end simplified by the use of an ansistring function
  * we now also trim whitespace from the end, which was previously done in TWatch.Get_new_value, so I assume it was necessary for some gdb versions

git-svn-id: trunk@30077 -
2015-03-02 21:34:20 +00:00
nickysn
fc6fef3cc1 * fixed compilation of gdbint after r30071
git-svn-id: trunk@30072 -
2015-03-02 13:49:09 +00:00
nickysn
4794b901ae * changed the type of TFrameEntry.address from PtrInt to CORE_ADDR
git-svn-id: trunk@30071 -
2015-03-02 13:43:58 +00:00
pierre
1d865d6422 Add SelectFrameCommand method to TGDBController in gdbcon and gdbmicon units (not yet used in ide code)
git-svn-id: trunk@30066 -
2015-03-02 10:41:35 +00:00
nickysn
547e20f1a2 * just realized that AnsiStrPas is entirely unnecessary, because typecasting a
pchar to ansistring performs exactly the same thing :)

git-svn-id: trunk@30056 -
2015-03-02 00:03:02 +00:00
nickysn
00e3c906ef * fixed AnsiStrPas
git-svn-id: trunk@30054 -
2015-03-01 23:42:19 +00:00
nickysn
7859afccc4 * TGDBController.InternalGetValue made private to protect from accidental use
in fpdebug.pas, because it's for internal use in the libgdb.a interface only
  and is not available in the gdb/mi interface

git-svn-id: trunk@30053 -
2015-03-01 23:09:21 +00:00
nickysn
67a66f104d * converted the result of TGDBController.PrintCommand from pchar to ansistring:
* supports returning long strings
  * can be easily converted to a pchar without truncation (a simple PChar(x)
    works for read-only access or a full copy via StrNew(PChar(x)) )
  * can be easily converted to shortstring without memleaks (shortstr := pchar
    works, but creates a silent memleak, when the pchar returned should be
    StrDispose'd)

git-svn-id: trunk@30052 -
2015-03-01 22:57:48 +00:00
pierre
caa77e1f8d Add TGDBController.SetCommand method and use it
git-svn-id: trunk@30046 -
2015-03-01 17:00:16 +00:00
pierre
36086cc183 ide/gdbmiint.pas: Add init_count field,
New Set_debuggee_started method to update init_count properly.

  ide/gdbmicon.ppas and packages/gdbint/src/gdbcon.pp:
  Add PrintCommand and PrintFormattedCommand methods to
  allow using of mi command for fpdebug unit TDebugController.GetValue method

  packages/gdbint/src/gdbcon.pp:
  Add InternalGetValue method, that uses previous code from fpdebug GetValue method

git-svn-id: trunk@30043 -
2015-03-01 13:21:26 +00:00
pierre
4fba54788b set last_breakpoint_address field type to CORE_ADDR
git-svn-id: trunk@30022 -
2015-02-27 09:44:37 +00:00
nickysn
c62f3ec271 * handle failure in GetFPCBreakErrorParameters and continue execution silently
in a gdb/mi safe way

git-svn-id: trunk@30020 -
2015-02-27 00:34:16 +00:00
nickysn
47509b0148 + added parameter BreakIndex (containing the breakpoint index if we stopped on a
breakpoint, or zero otherwise) to DoSelectSourceLine, instead of using
  stop_breakpoint_number
- removed stop_breakpoint_number and all the convoluted logic around it from the
  gdb/mi interface
* made stop_breakpoint_number private in the libgdb.a interface to ensure it's
  only used for internal use; UI code should rely on the new BreakIndex
  parameter instead

git-svn-id: trunk@30003 -
2015-02-25 01:48:23 +00:00
Jonas Maebe
fa328436ab * regenerated for iphonesim/x86-64
git-svn-id: trunk@29974 -
2015-02-23 22:56:41 +00:00
Jonas Maebe
3d01d4ceb1 * regenerated with Darwin/AArch64 support
git-svn-id: trunk@29950 -
2015-02-23 22:54:53 +00:00
nickysn
bd467adf52 * use StrDispose instead of Dispose in the libgdb.a implementation of GetIntRegister
git-svn-id: trunk@29804 -
2015-02-23 01:12:48 +00:00
nickysn
d83655f73c + implemented the GetIntRegister methods added in r29795 in the libgdb.a
interface as well. The code is loosely based on GetIntRegs from fpregs.pas

git-svn-id: trunk@29800 -
2015-02-22 23:46:56 +00:00
nickysn
8ed6109955 * setting breakpoint ignore count implemented via gdb/mi command in the gdb/mi
interface

git-svn-id: trunk@29790 -
2015-02-22 02:46:48 +00:00
nickysn
46695f37b4 * use the gdb/mi command for setting breakpoint conditions in the gdb/mi interface
git-svn-id: trunk@29789 -
2015-02-22 02:20:28 +00:00
nickysn
1bfcf14ef9 * use gdb/mi commands to enable/disable breakpoints in the gdb/mi interface
git-svn-id: trunk@29788 -
2015-02-22 01:51:59 +00:00
nickysn
c2d659950e * use the gdb/mi command for deleting breakpoints
git-svn-id: trunk@29787 -
2015-02-22 01:29:27 +00:00
nickysn
a445b4730b + added breakpoint flags parameter to TGDBController.BreakpointInsert. The
supported flags are 'temporary' and 'hardware' breakpoint.

git-svn-id: trunk@29763 -
2015-02-19 22:04:31 +00:00
nickysn
186e86b353 * compilation of gdbcon.pp fixed after r29746
git-svn-id: trunk@29747 -
2015-02-17 23:02:02 +00:00
nickysn
df234bd7fe + added method WatchpointInsert to TGDBController, with a gdb/mi implementation
* all breakpoint and watchpoint adding now go through TGDBController and use
  the proper gdb/mi commands when compiled with the gdb/mi debugger

git-svn-id: trunk@29746 -
2015-02-17 22:49:31 +00:00
nickysn
4f8b8da879 + added method BreakpointInsert to gdbcon, which supports the gdb/mi command for
adding breakpoints.
* use the new method for adding the breakpoint to FPC_BREAK_ERROR

git-svn-id: trunk@29744 -
2015-02-17 21:17:02 +00:00
nickysn
a47a810475 + implemented gdb/mi backtraces
git-svn-id: trunk@29736 -
2015-02-17 00:59:39 +00:00
nickysn
f06731ae4f * TDebugController.SetTBreak (adds a temporary breakpoint, used for things like
'run to cursor') moved to gdbcon.pp and implemented via a GDB/MI command in
  the new GDB/MI interface.

git-svn-id: trunk@29721 -
2015-02-16 19:58:40 +00:00
nickysn
8f9c062e4d * fixed Run->"Until return" in the GDB/MI debugger
git-svn-id: trunk@29717 -
2015-02-16 02:25:53 +00:00
pierre
97a902eb14 Also include gdblib.inc if USE_GDBIBINC macro is set, needed to get USE_MINGW_GDB macro used inside UnixDir
git-svn-id: trunk@29667 -
2015-02-10 23:03:09 +00:00
pierre
e8d836f74c Activate gdbint package for solaris target OS
git-svn-id: trunk@29519 -
2015-01-22 15:12:14 +00:00
joost
1a90d29063 * Re-generated packages-Makefile.fpcs and Makefiles
git-svn-id: trunk@29409 -
2015-01-05 11:34:47 +00:00