Commit Graph

63 Commits

Author SHA1 Message Date
Ian Dowse
ea0d04f36e Attempt to automatically read in kernel module symbols when a live
or dead kernel core is loaded into gdb. This extends gdb's existing
shared library support, so the "info sharedlibrary", "sharedlibrary"
and "nosharedlibrary" commands can be used to view and change the
list of loaded symbol files.

The current implementation is more than a kludge however, and it
will not always manage to find the .ko.debug file corresponding to
the loaded module. In particular, for modules whose build directory
cannot be easily guessed from the module name such as all the
netgraph modules, the debug version of the .ko will not be found
automatically.

The logic for finding the module file first attempts to guess at
the module build directory by parsing the version[] string. Then
using that directory ($DIR), it tries the following paths in turn:

	./<module>.ko.debug		./<module>.ko
	$DIR/<module>.ko.debug		$DIR/<module>.ko
	/boot/kernel/<module>.ko.debug	/boot/kernel/<module>.ko

Approved by:	obrien, mp
2003-03-21 00:30:53 +00:00
David E. O'Brien
ceb0f624bc Reformat. 2003-01-04 17:51:59 +00:00
David E. O'Brien
bff2d4022e Add the ability to debug C++ programs using v2 and v3 of the G++ ABI.
Submitted by:	Peter Edwards <pmedwards@eircom.net>
2003-01-04 17:51:48 +00:00
Mark Peek
ef78d1474b Remove dependency on version.in for version information.
Submitted by:	obrien
2002-10-12 21:23:53 +00:00
David E. O'Brien
2587e03b72 Allow to compile and at least startup on sparc64. 2002-06-29 03:16:40 +00:00
David E. O'Brien
7b726fea14 Bmake bits for GDB 5.2. 2002-06-29 01:16:01 +00:00
David E. O'Brien
22cb25a945 When linking staticaly libtermcap is a postrequisite of libreadline.
Otherwise `tgoto' (only used by libreadline) isn't resolved.

Submitted by:	bde
2002-06-22 17:07:45 +00:00
David E. O'Brien
457170e99c We need to link with libiberty.a before libreadline.so. Both supply
xmalloc() and xrealloc() and the mixed usage of xmalloc in some .c's from
libiberty.a and other .c's from libreadline.so produces an unusable binary
on the Alpha.

While I am here, preventatively move other libs in the link order.

Submitted by:	gallatin
2002-06-21 19:05:20 +00:00
David E. O'Brien
ecdd3d1cab This is only WARNS=0 clean now. 2002-05-19 18:25:41 +00:00
David E. O'Brien
3ce5798474 Segregate MD weirdness a little bit more. Improve cross buildability. 2002-05-18 04:59:57 +00:00
David E. O'Brien
194788fafc GDB 4.18 does not use the mmalloc library by default. So GC a little. 2002-03-23 17:15:49 +00:00
David E. O'Brien
8c157f6041 Fix setting of CLEANFILES. 2002-03-23 04:52:02 +00:00
David E. O'Brien
d27504cd28 Fix unaligned access in the GDB binary on Alpha.
Submitted by:	gallatin
2002-03-16 19:33:23 +00:00
David E. O'Brien
2cadc0a98e Turn up WARNS as high as possible.
Tested by:	gcc31, gcc32, /usr/bin/cc
2002-03-13 05:14:31 +00:00
David E. O'Brien
3726c08892 Deal with a real PITA in that GDB 4.18 (as we imported it) requires a
`wait.h' that was in contrib/binutils/, however this wait.h went away with
bintuils 2.10.0 so I `cvs rm'ed it.  Now we find gdb will not build.  This
binutils wait.h contained nothing we didn't already have in <sys/wait.h>.
So just hack a symlink to it.
2000-11-25 13:59:49 +00:00
David E. O'Brien
7f3d7f20f8 Pull the switch and activate our Binutils to a snapshot of the up and
comming 2.10 release.
2000-05-22 08:09:42 +00:00
David E. O'Brien
56d2e40e38 callback.c is not really used, nor is it part of GDB 4.18. 2000-05-17 19:30:59 +00:00
Doug Rabson
a052d1ca88 Add support for debugging programs using libc_r's implementation of
pthreads.
2000-04-29 09:03:49 +00:00
Gary Jennejohn
f367e39024 Add a '+' to the first LDADD, otherwise it clobbers the LDADD in
Makefile.alpha such that the -lkvm disappears and the link fails.

This time I tested it, honest :)
2000-04-04 11:12:55 +00:00
Bruce Evans
6a18627411 Use ${dir}/libfoo.a' instead of -L${dir} -lfoo' for local static
libraries in LDADD so that `make checkdpadd' doesn't report non-errors.

Fixed some style bugs (the usual ones for DPADD and LDADD, and misformatting
of $FreeBSD$).
2000-03-27 18:02:04 +00:00
Peter Wemm
9b7a44a60e $Id$ -> $FreeBSD$ 1999-08-27 23:37:10 +00:00
Bruce Evans
583393551b Fixed some regressions in rev.1.40:
- rev.1.39 was clobbered.
- PROG was defined twice, once as nm.
- style bugs.
1999-05-11 08:07:51 +00:00
Doug Rabson
657b29aa29 Add core-regset.c to the Makefile to allow debugging elf corefiles. 1999-05-07 19:53:05 +00:00
Doug Rabson
5c3925f8f9 * Add bmake framework for using gdb alongside binutils. The old bmake
framework was repository copied from gnu/usr.bin/gdb.
* Add alpha support.
1999-05-02 11:32:14 +00:00
Bruce Evans
146fe9aaf2 echo -> ${ECHO}. 1999-04-03 07:04:53 +00:00
Bruce Evans
cc4fb50148 Fixed breakage of gdbreplay's and gdbserver's BINDIR in previous commit.
They may belong in /usr/libexec/{aout,elf}, but objformat doesn't
support that.

Fixed bogus `?=' assignments for BINDIR.
1998-10-15 14:15:09 +00:00
John Polstra
e8f80c1aca Fix GDB so that it can handle ELF core dumps. 1998-09-14 22:49:02 +00:00
John Birrell
050c06f9e2 Missed some BINFORMATs. Fingers! Can't live with 'em. Can't live without 'em. 1998-08-30 02:46:35 +00:00
John Birrell
0e94cd8261 BINFORMAT -> OBJFORMAT ready for E-day. I tossed a coin to decide this
one. We'll probably need to revisit gdb after E-day.
1998-08-30 02:01:07 +00:00
Bruce Evans
e4e61e7b97 Simplified using new yacc rules. This is cosmetic - the old rules
worked because .ORDER prevented problems from concurrent generation
of multiple parsers (and their headers), and there were no missing
dependencies because the generated headers were not actually used.
1998-05-04 17:56:22 +00:00
Bruce Evans
2b3c4dd72c Fixed apparent bitrot (=' changed to ?=') in the definition of BINDIR
in the previous commit.  Just don't define it here at all.  This works
now that the default is inherited properly.
1998-05-01 14:44:00 +00:00
Doug Rabson
0f9bd807c9 Add support for ELF shared libraries. Also use bfd from the binutils in that
case rather than gdb's own copy.
1998-04-30 08:03:50 +00:00
Bruce Evans
3f9af06bf9 Removed vestiges of use of beforedepend target. 1998-03-19 15:21:19 +00:00
Bruce Evans
6dd8984675 Use foo/bar.a' instead of -Lfoo -lbar' for linking to static internal
libraries, so that `ld -f' in can create correct dependencies for
yet-to-be-built libraries.
1998-03-07 08:55:00 +00:00
Jordan K. Hubbard
97fe7f477f Changes to support full make parallelism (-j<n>) in the world
target.
Reviewed by:	<many different folks>
Submitted by:	Nickolay N. Dudorov" <nnd@nnd.itfs.nsk.su>
1997-10-05 09:40:24 +00:00
Gary Jennejohn
1735e8a3c8 delete kcorelow.c, it didn't produce any code and broke init.c
because 2 references to _initialize_kcorelow (the other one
from kvm-fbsd.c) resulted. This prevented gdb from working correectly.

delete kcorelow.c from XSRCS in the Makefile.
1997-05-02 11:22:51 +00:00
Paul Traina
371bcb2ecd Clean up merge from 2.2 (without spamming peter's changes) 1997-05-01 16:24:37 +00:00
Peter Wemm
5702598255 Patch up init.c generation so that it works in -current.. It was trying
to use files that do not exist here.  Also, fix(?) ${.OBJDIR}/init.c hack.
1997-05-01 13:40:57 +00:00
Paul Traina
5a05ca1d76 Fix up a spurious '@' I added at the last second 1997-05-01 00:26:43 +00:00
Paul Traina
54adf80955 Merge from 2.2: auto-gen init.c and add ser-tcp.c 1997-05-01 00:18:51 +00:00
Bruce Evans
ae105a60aa Backed out previous change. It just gave a more verbose Makefile by
repeating the default for MAN1.
1997-04-30 15:23:02 +00:00
Gary Jennejohn
3e3d6b2e21 change kvm-fbsd.c so that kernel debugging works again.
document the -k and -wcore options in the manpage.

change Makefile to use a local copy of the manpage.
1997-04-27 21:36:49 +00:00
Peter Wemm
4f71948c41 Attempt to patch up gdb so that it has a chance of working with the new
UPAGES layout.. it was entirely too comfortable with reading and writing
the U area before.  I've changed it to use PT_GETREGS/PT_PUTREGS
ptrace ops instead of READ_U etc.  The code to read the registers from
core dumps is a bandaid at best.  It seems to have problems reading
core dumps from dynamic linked executables still, but at least static
dumps work.

I desperately need help from a gdb/bfd expert. :-)  HELP!!
1997-04-07 08:08:20 +00:00
Peter Wemm
c65bfffcff generate c-exp.c, f-exp.c and m2-exp.c with yacc rather than using
the generated ones in the gdb dist.
1997-03-29 10:33:13 +00:00
Gary Jennejohn
79a5f47589 delete the LINKS line (link gdb to kgdb) by popular demand. 1997-03-15 20:59:59 +00:00
Gary Jennejohn
ebab7e8272 add LINKS line to Makefile to automatically produce a link to kgdb
define START_PROGRESS in nm.h to check whether gdb was invoked as kgdb
and set the kernel_debugging flag in that case.

2.2 candidate ?
1997-03-12 22:34:09 +00:00
Peter Wemm
fce15c9ab3 Revert $FreeBSD$ to $Id$ 1997-02-22 15:48:31 +00:00
Jordan K. Hubbard
cb0a6fc85f Remove -lmalloc; it's no longer relevant.
Pointed-Out-By: jdp, dima and others.
1997-01-17 06:32:35 +00:00
Gary Jennejohn
86dd30cb93 changes required in the gdb directory for making gdb
using the sources in /usr/src/contrib/gdb.

This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:37:09 +00:00
Jordan K. Hubbard
1130b656e5 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00