Commit Graph

309 Commits

Author SHA1 Message Date
David E. O'Brien
a7bf21bf6c Build and install the useful `readelf' util that is new with Binutils 2.10.0. 2000-11-13 09:47:31 +00:00
Daniel Eischen
ed21d82204 Sync gdb thread support with recent changes to the threads library.
Approved by:	obrien
2000-11-10 00:36:01 +00:00
Daniel Eischen
7c021a1090 Adjust to reflect recent changes in the internal layout of a struct
pthread in libc_r.

Reviewed by:	dfr
2000-10-13 22:15:19 +00:00
Joerg Wunsch
22c68d23f5 Implement the GDB counterpart to use hardware watchpoints in connection
with Brian's kernel support for i386 debug registers.  This makes
watchpoints actually usable for real-life problems.  Note: you can
only set watchpoints on 1-, 2- or 4-byte locations, gdb automatically
falls back to [sloooow] software watchpoints when attempting to use
them on variables which don't fit into this category.  To circumvent
this, one can use the following hack:

watch *(int *)0x<some address>

David O'Brien is IMHO considering to get this fully integrated into the
official GDB, but as long as we've got the i386/* files sitting around
in our private FreeBSD tree here, the feature can now be tested more
extensively, so i'm committing this for the time being.

This work has been done in order to debug a tix toolkit problem, thus
it has been sponsored by teh Deutsche Post AG.

Reviewed by:	bsd (not the operating system, but Brian :-)
2000-08-17 16:27:26 +00:00
David E. O'Brien
b4720b889e Install the general binutils (such as `nm') info files.
Patch submitted by:	nbm
PR:	16585
Submitted by:	Assar Westerlund <assar@sics.se>
2000-07-10 09:55:29 +00:00
David E. O'Brien
ddad85161d We are now at version 2.10 release. 2000-06-20 06:19:15 +00:00
Jake Burkholder
e39756439c Back out the previous change to the queue(3) interface.
It was not discussed and should probably not happen.

Requested by:		msmith and others
2000-05-26 02:09:24 +00:00
Jake Burkholder
740a1973a6 Change the way that the queue(3) structures are declared; don't assume that
the type argument to *_HEAD and *_ENTRY is a struct.

Suggested by:	phk
Reviewed by:	phk
Approved by:	mdodd
2000-05-23 20:41:01 +00:00
David E. O'Brien
bacaa92f40 Updated 2.10 headers. 2000-05-22 08:40:17 +00:00
David E. O'Brien
e22c5813c4 Tweaks to match those done in the Binutils mainline code. 2000-05-22 08:33:03 +00:00
David E. O'Brien
b6c2cab2dc version 2.10 config file. 2000-05-22 08:26:10 +00:00
David E. O'Brien
7994fa95cd Conditionally define "CROSS_COMPILE" here. 2000-05-22 08:25:40 +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
David E. O'Brien
076c80b287 Use a alternate side 2.9.1 source tree while upgrading Binutils. 2000-05-12 22:55:23 +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
Steve Price
2b3c840334 Add sparcnetbsd support and cleanup style so that this looks nearly
identical to Makefile.sparc.
2000-04-16 23:42:25 +00:00
Steve Price
e3163f8ce0 Fix a typo (aout32.o -> aout32.c). Add support for NetBSD/Sparc and
sparc64.
2000-04-16 23:39:46 +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
Steve Price
c720912e54 Add support for sunos_big_vec to support 'make world's on Solaris
boxes.
2000-04-03 03:51:46 +00:00
Steve Price
eb0bd3c3d2 Add support for the sunos_big_vec format as well. 2000-04-03 03:48:49 +00:00
Steve Price
d07cc88aff Build and install the elf32_sparc ld(1) scripts and make elf32_sparc
the default emulation.
2000-04-03 03:42:07 +00:00
Steve Price
5e59c5460c First cut at the (non-contrib) bits needed to build the binutils
distribution for FreeBSD/Sparc64.

Reviewed by:	obrien
2000-04-02 22:36:56 +00:00
Steve Price
78d3fce125 The ld directory is in ${SRCDIR} not ${BINUTILSDISTDIR}. 2000-04-02 20:23:58 +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
3ef5063241 A bandaid to try and make this buildable. This should probably be
rechecked by somebody who knows what is meant to happen here. The new
libreadline rluser.texinfo file duplicates the '@defcodeindex bt' entry.
2000-03-20 10:52:28 +00:00
David E. O'Brien
e216cd60d3 Build and install gasp's infodocs along side the other binutil docs rather
than seperately.

Pointed out by:	bde
2000-02-21 20:33:31 +00:00
David E. O'Brien
79f9b09ff2 Honestly, really, really add a manpage for gasp. 1999-12-30 04:48:17 +00:00
David E. O'Brien
35ebfc88a5 Add a manpage for gasp. 1999-12-30 04:46:38 +00:00
David E. O'Brien
bbf480ddf2 Hookup the info docs. 1999-12-29 00:38:48 +00:00
David E. O'Brien
983d57fe35 Build and install the GASP info page. Unfortunately there is no manpage. 1999-12-28 22:32:24 +00:00
Marcel Moolenaar
ecc4dcbd82 s/MACHINE_ARCH/TARGET_ARCH/g
The target machine is represented by TARGET_ARCH. MACHINE_ARCH always
represents the host machine. When TARGET_ARCH is not defined, it is
assumed to be equal to MACHINE_ARCH. This means that we're building a
native toolset by default. We're creating cross-compilation tools when
MACHINE_ARCH != TARGET_ARCH.

TARGET_ARCH is defined when building binutils as part of the bootstrap
build and is set to reflect the architecture we're currently cross-
building. With this change binutils is ready for cross-building.
1999-12-17 15:50:45 +00:00
Marcel Moolenaar
7466caf46a Don't make gdb, objc and f77 when building tools. 1999-12-09 16:40:27 +00:00
Doug Rabson
db6b5f91cf Make this actually build with current sources. 1999-12-08 11:47:48 +00:00
Doug Rabson
99b8134654 Build gasp (GAS Preprocessor). This is needed for building Glide. 1999-12-07 17:01:27 +00:00
Marcel Moolenaar
0917704bd4 ${MACHINE} -> ${MACHINE_ARCH}
All Makefiles now use MACHINE_ARCH for the target architecture.
Unification is required for cross-building.

Tags added to:
	sys/boot/Makefile
	sys/boot/arc/loader/Makefile
	sys/kern/Makefile
	usr.bin/cpp/Makefile
	usr.bin/gcore/Makefile
	usr.bin/truss/Makefile

usr.bin/gcore/Makefile:
	fixed typo: MACHINDE -> MACHINE_ARCH
1999-11-14 13:54:44 +00:00
Marcel Moolenaar
2205071966 Make binutils for Alpha work on i386 machine, by properly defining
whether the host machine has a 64-bit long or not.
1999-11-12 16:53:58 +00:00
John Birrell
d19f65c59d Replace freebsdelf with freebsd in BINDIR
Requested by: obrien
1999-11-07 08:07:02 +00:00
John Birrell
e806769bd7 These have been repo-copied to i386-freebsd. 1999-11-07 06:13:35 +00:00
John Birrell
8e3f8ad334 These have been repo-copied to alpha-freebsd. 1999-11-07 06:11:36 +00:00
John Birrell
4ed1406b4c Replace freebsdelf with freebsd in most places.
Requested by: obrien
1999-11-07 06:01:35 +00:00
John Birrell
da93b590fb After a repo copy of as_{alpha,i386,mips} to {alpha,i386,mips}-freebsd,
tidy up the logic that works out which sub-directories to build.

The new directories with freebsdelf suffixes now have freebsd suffixes
after a repo move by Peter at the request of David O'Brien.
1999-11-07 05:59:25 +00:00
John Birrell
bf5c062675 Replace freebsdelf with freebsd in BINDIR.
[ alpha-freebsd, i386-freebsd and mips-freebsd were repo-copied
  by Peter (one of the repo-men) ]

Requested by: obrien
1999-11-07 05:56:04 +00:00
John Birrell
4fecd2e259 Add support for additional architectures. 1999-11-06 22:52:33 +00:00
John Birrell
86f001b84c Use the simplified genscripts.sh and set the cross-compiled library
directory to /usr/cross/${MACHINE_ARCH}-freebsdelf/usr/lib so that
the cross tools behave the same way that the host versions do. When
building cross tools, Cygnus doesn't set the default library directory.
This doesn't suit FreeBSD IMHO.

Add WinNT emulation support too. You only get this if you've set
BINUTILSDISTDIR because the contrib/binutils repository doesn't
contain the required sources.
1999-11-06 22:46:45 +00:00
John Birrell
08d64a6b65 Use the simplified genscripts.sh and set the cross-compiled library
directory to /usr/cross/${MACHINE_ARCH}-freebsdelf/usr/lib so that
the cross tools behave the same way that the host versions do. When
building cross tools, Cygnus doesn't set the default library directory.
This doesn't suit FreeBSD IMHO.
1999-11-06 22:44:32 +00:00
John Birrell
6eb9b41026 This is a simplified version of the binutils script which better suits
the (few) things that the FreeBSD makefiles need to specify.
1999-11-06 22:40:15 +00:00
John Birrell
a719bd2fd1 Add a BINUTILSDISTDIR hook here too. 1999-11-06 22:36:40 +00:00
John Birrell
6fc579d56c This one might be a bit controversial. 8-)
gas for i386 targeted to NT for those (like me) who have to do work
targeted to NT, but can't stand actually looking at it all day long.
I cross build apps on FreeBSD and just run them on NT later. Life is
better that way.
1999-11-06 22:26:43 +00:00
John Birrell
7426ce67f6 gas for m68k targeted to NetBSD's a.out format. Useful for porting or
even just building applications targeted to NetBSD.

I know this will upset some people (outside FreeBSD).
1999-11-06 22:21:57 +00:00
John Birrell
e9cf6a0347 gas for powerpc targeted to FreeBSD. 1999-11-06 22:16:59 +00:00
John Birrell
4e51edb129 gas for m68k targeted to FreeBSD. 1999-11-06 22:14:26 +00:00
John Birrell
9daea63040 gas for sparc targeted to FreeBSD as ELF32 for a start (suject to change). 1999-11-06 22:12:24 +00:00
John Birrell
1009ce833e Don't change the name when building a cross-tool. Just set the BINDIR
to /usr/libexec/cross/${MACHINE_ARCH}-freebsdelf.
1999-11-06 21:59:29 +00:00
John Birrell
e60947e1ad Add the BINUTILSDISTDIR hook here too. 1999-11-06 21:55:33 +00:00
John Birrell
19bf8ac856 Change CROSS_TARGETS to CROSS_FORMATS because that makes more sense.
Check if already cross-compiling and only build the cross-tools if
not cross-compiling (to save time).
1999-11-06 21:54:21 +00:00
John Birrell
53149093a0 Add support for additional architectures. 1999-11-06 21:38:41 +00:00
John Birrell
015520102a Add support for additional architectures. 1999-11-06 21:28:22 +00:00
John Birrell
fe8e7c2346 Change CROSS_TOOLS to CROSS_ARCH because that makes more sense.
Allow for the case where the host architecture might also be listed
in CROSS_ARCH, so don't do things twice. This situation can arise if you
want NT support in binutils (CROSS_ARCH=i386 CROSS_FORMAT=winnt).
1999-11-06 21:13:47 +00:00
John Birrell
2e734fae4e Teach binutils how to understand NT format objects and libs. This is useful
for those who want to objdump --disassemble things that they're not
supposed to. 8-)
1999-11-06 21:09:40 +00:00
John Birrell
3ba3ae906a Add a BINUTILSDISTDIR hook to provide a path to a full binutils release
outside the contrib files that FreeBSD distributes. This for use by
those who want to work on porting FreeBSD to additional architectures.
1999-11-06 21:04:46 +00:00
John Birrell
08630cfd05 Add binutils support for additional architectures. 1999-11-06 21:02:48 +00:00
Peter Wemm
9b7a44a60e $Id$ -> $FreeBSD$ 1999-08-27 23:37:10 +00:00
Andrew Gallatin
4331c85a32 Live & postmortem kernel debugging support for the alpha platform.
This was modeled after NetBSD's kernel debugging support.

Reviewed by: Doug Rabson <dfr@nlsystems.com>
1999-06-21 15:00:15 +00:00
Dmitrij Tejblum
8ea9dacf53 Fix placement of signal trampoline. 1999-06-13 19:41:50 +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
cbed385da4 Install gdbserver and gdbreplay in /usr/bin, not /usr/libexec/elf. 1999-05-08 12:08:06 +00:00
Doug Rabson
0ba2f2a9ba Implement corefiles for FreeBSD/alpha. This requires a separate change to
the kernel which is awaiting review.
1999-05-07 21:49:06 +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
e3af075499 * Merge gdb/doc/Makefile into binutils/doc/Makefile
* Update build for gdbserver and gdbreplay to work under binutils
* Fix gdbserver to use PT_GETREGS etc to access registers, removing the
  dependancy on the u-area.
* Make gdbserver work on the alpha.
1999-05-02 19:50:18 +00:00
Doug Rabson
78bd37a6ae Enable gdb on the alpha. 1999-05-02 16:11:43 +00:00
Doug Rabson
a4bf088d98 Enable building gdb under binutils for i386. I can't enable the alpha build
yet since CVS is hiding one of my files.
1999-05-02 11:38:12 +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
Luoqi Chen
d53bd1ea8d Make gdb work with kernel after the SMP vmspace sharing changes. 1999-04-28 01:27:55 +00:00
Warner Losh
0781becd81 For mips assembler, we need to define TARGET_BYTES_BIG_ENDIAN to be
zero when building for little endian machines.

Correct the target names for mips.  We just use the generic targets
for mips elf, so the mipse[lb]-unknown-freebsd emulation types don't
exist.
1999-04-22 07:19:20 +00:00
Warner Losh
f1b48216be TARGET was being defined wrong, causing ld to always fail. It is the
name of the bfd target, not the gnu-standard target name.  Corrected
to be elf32-{big,little}mips from mipse[bl]-unknown-freebsd.

DEFAULT_EMULATION was bogusly defined, causing ld to always fail (this
was masked by the TARGET bogosity).  Define correctly as elf32bmip and
elf32lmip.  Mips doesn't follow the same conventions as i386 and alpha
do in this area.

ld now appears to work correctly for the uncommitted mips changes to
egcs.
1999-04-21 07:46:06 +00:00
David E. O'Brien
fa8e3bcb32 This duplicates gnu/usr.bin/cc/c++filt. 1999-04-18 10:25:57 +00:00
Bruce Evans
146fe9aaf2 echo -> ${ECHO}. 1999-04-03 07:04:53 +00:00
Warner Losh
7408d8ff34 Add TARGET_ARCH=mipsel and TARGET_ARCH=mipseb as a valid targets.
Unlike the unisex architecutres we've had so far, mips is bisexual.
These tools can produce either byte sex, and the compiler/make
determines the proper gender to use.  Otherwise, we'd have to have had
mipsel and mipseb in all the places that we have just mips.  And there
are other complications with doing that (binutils doesn't like to
build mips tools without both byte genders, it seems).

Introduced BINUTIL_ARCH so that other bisexual architectures can a
generic mechanism.

We cannot just define MACHINE_ARCH as mips because we need to
differentiate big and little endian types of binaries.  Discussions on
freebsd-arch have hashed out this issue (and the parallel libc
issues).  NetBSD is moving towards mipsel and mipseb for their two
flavors of mips ports (in time for 1.4, if this change hasn't already
been accomplished).

I've been building i386 worlds with this tree for a three months with
these files in place with no ill effects.
1999-03-01 04:01:57 +00:00
Nick Hibma
1a180222e0 Ignore return value for strip. Avoids make world going pop
because of

strip maybe_stripped
strip: maybe_stripped: File format not recognized
*** Error code 1

in I/usr/src/gnu/usr.bin/binutils/strip
1999-01-08 10:33:12 +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
fb73a559ca Don't build the info pages for the old assembler. Instead, build
and install the info pages for the new assembler and linker.
1998-10-03 03:59:47 +00:00
John Polstra
e8f80c1aca Fix GDB so that it can handle ELF core dumps. 1998-09-14 22:49:02 +00:00
Doug Rabson
1fdfa7ab3c Update alpha configuration files and remove i386 target from
libbinutils/config.h - it is declared in the arch Makefile.
1998-09-07 08:18:34 +00:00
John Polstra
34d2198035 Update for import of binutils-2.9.1.
Submitted by:	Doug Rabson <dfr>
1998-09-06 23:01:53 +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
John Birrell
89ef33c09f Install binutils tools in /usr/libexec/elf like on i386 so that objformat
can be used to select them. The purpose of this is not necessarily to
allow another host format, but to allow us to use the objformat trickery
for cross compilation.
1998-08-18 06:51:08 +00:00
Bruce Evans
09d693f205 Fixed printf format errors. 1998-06-30 20:48:45 +00:00
Bruce Evans
ae33d52efb Don't use beforedepend or give dependencies on generated headers explicitly.
Just put generated headers in SRCS.
1998-06-04 06:50:58 +00:00
Bruce Evans
365f9d17e4 Removed superfluous beforedepends. Their files were already in SRCS. 1998-06-04 06:38:17 +00:00
Bruce Evans
c35f4af578 Don't use beforedepend; just put generated headers in SRCS. ldgram.h
was already put in SRCS by the general yacc rules.  Putting ldemul-list.h
in SRCS fixes races in `make -jN' when .depend hasn't been made.

Don't forget to clean ldemul-list.h.
1998-06-04 06:26:23 +00:00
Bruce Evans
273762cff9 Removed special rules for lex- and yacc- generated files. The general
rules work identically, except that they actually work if the yacc-
generated header somehow becomes out of date.
1998-06-04 01:09:28 +00:00
Peter Wemm
3977d3f488 Missing DPADD's. 1998-06-03 18:57:59 +00:00
Peter Wemm
fb8bc13e4e Add missing DPADD's. 1998-06-03 18:01:04 +00:00
Bruce Evans
e7c80443b4 Don't attempt to read process context from the kernel when (the
kernel's) curproc is null.  This fixes endless recursion in
xfer_umem() for attempts to read from user addresses, in particular
for attempts to read %fs and %gs from the pcb for `info reg'.
1998-05-12 16:49:13 +00:00
John Birrell
978b3eee15 The yacc makefile changes don't seem to know when to generate the
header file and when not to, so for the time being make sure the
sucker gets generated up front.
1998-05-11 09:33:55 +00:00
John Birrell
6bcce84f32 Add CROSS_TARGETS to the list of GASES to build. We end up with a separate
gas for each target format. So for m68k targets that means several
gases. I wanted a m68k gas for VxWorks which uses aout in sun3 big
endian format, cross compiled on i386 under FreeBSD using libraries
supplied by DEC and intended by them for cross compilation on Alpha
under OSF/1. And it actually works!
1998-05-11 09:31:17 +00:00
John Birrell
292041e5f6 Make a path absolute. 1998-05-11 09:26:39 +00:00
John Birrell
4d725788f7 Fix the path. 1998-05-05 12:33:21 +00:00
John Birrell
402d0191b4 Specify an absolute include path.
Backout the previous commit in favour of the Makefile.inc added to
the parent directory.
1998-05-05 10:32:47 +00:00
John Birrell
9976c5ebe2 One of those silently included files that just about guarantee that
nobody has any idea how something like BINDIR gets defined.
1998-05-05 10:27:39 +00:00
John Birrell
b09740d425 The BINDIR definition is an extra directory level away, so include it
explicitly.
1998-05-05 08:57:11 +00:00
John Birrell
9b87ba9b0f Oops, missed the common part of gas. 1998-05-05 08:53:27 +00:00
John Birrell
c6497bae9d Support cross architectures by using specific directories instead of
the ones that match the host.
1998-05-04 22:09:10 +00:00
John Birrell
b967ddfa5c i386 gas config files. 1998-05-04 22:05:54 +00:00
John Birrell
bf28c35750 Alpha gas config files. 1998-05-04 22:04:55 +00:00
John Birrell
3cb3e87019 Support cross-architectures using sub-directories. 1998-05-04 22:03:00 +00:00
John Birrell
7998238373 Add support for cross-architecture gases. Since the GNU code doesn't
support more than one architecture at a time, build as from the
default for the host and if CROSS_TOOLS defines other architectures,
build them as as_${arch}
1998-05-04 22:01:27 +00:00
John Birrell
fea15783d0 BINDIR is now specified in a single place. There are no cross-architecture
issues with this utility.
1998-05-04 21:51:32 +00:00
John Birrell
c8c066f7e3 Work out the list of emulations based on the cross-architectures
defined. The TARGET is now set from an included makefile.
1998-05-04 21:38:46 +00:00
John Birrell
a9ab354c8d Add cross-architecture support. 1998-05-04 21:29:54 +00:00
John Birrell
3e87569545 BINDIR is now specified in a single place. There are no cross-architecture
issues with this utility.
1998-05-04 21:27:17 +00:00
John Birrell
48de30fa9d BIDIR is now specified in a single place. There are no cross-architecture
issues with this utility.
1998-05-04 21:23:23 +00:00
John Birrell
d8db061de4 Evaluate the TARGET from the architecture. We'll assume that FREEBSD
is ELF from here on.
1998-05-04 21:21:17 +00:00
John Birrell
87219aff8e Remote i386 cross-architecture support. It's now configurable, and off
by default.
1998-05-04 21:18:46 +00:00
John Birrell
beb33165cb Add cross-architecture support. 1998-05-04 21:16:46 +00:00
John Birrell
bb91c76f50 Since the makefiles below binutils with the architecture extension
are now included according to the cross-architecture support required,
default the BINDIR for i386 to /usr/libexec/elf here instead of in
all the i386 specific makefiles. For all other architectures, BINDIR
is just /usr/bin.
1998-05-04 21:13:50 +00:00
John Birrell
dd67e6bff7 Add makefile support for cross-architectures. Allow CROSS_TOOLS to
be defined (in /etc/make.conf, say) and set to the additional architectures
that need to be compiled in. So on alpha I set CROSS_TOOLS = i386.
On i386 you can't build alpha due to lack of 64-bit support on 32-bit
architectures, but that's a GNU problem.

This change relies on makefiles in the binutils sub-directories having
the extension defined in the CROSS_TOOLS, instead of those makefiles
being selected based on the host architecture.
1998-05-04 21:10:56 +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
e6abc0de81 Fixed races in `make -jN' using new yacc rules. This also fixes plain
`make' (without a previous `make depend').
1998-05-04 16:31:41 +00:00
Bruce Evans
cca078f55e Inherit BINDIR properly. 1998-05-01 14:48:06 +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
Bruce Evans
9ca48245eb Oops, This should have been committed with the Makefile change that
requires the new file.

Fixed stale near-copy of contrib/libreadline/doc/hsuser.texinfo.  Patch
it at build ntime, and only keep the patch for it here.

Don't keep a copy of contrib/gdb/gdb/doc/all-cfg.texi here.  Link to it
at build time.
1998-05-01 14:13: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
John Polstra
98ad0dae72 Give up on a.out support in binutils. It has too many problems to
be worth much effort.  Install all i386 binutils programs in
"/usr/libexec/elf".  Disable a.out support in libbfd.  It's too
dangerous to leave it in.  Some of the utilities think they can
handle a.out, but they generate bad object files.
1998-03-30 02:21:27 +00:00
John Polstra
dc84a8ccd6 Add c++filt. 1998-03-30 02:19:09 +00:00
Bruce Evans
3f9af06bf9 Removed vestiges of use of beforedepend target. 1998-03-19 15:21:19 +00:00
John Polstra
09ce8fd795 Make the binutils strip ELF-only for now. It isn't quite right for a.out. 1998-03-15 02:08:04 +00:00
John Polstra
66f259f3f5 Disable support for the a.out-i386-bsd target. Everything it can do
seems to be supported in the a.out-i386-freebsd target.  When both
are present, there are sometimes complaints of "ambiguous file
format."
1998-03-14 01:40:31 +00:00
John Birrell
db7662af72 Configure alpha to disassemble both alpha and i386 opcodes. 1998-03-12 13:02:46 +00:00
John Birrell
38bc294e8d Configure bfd for elf64, elf32, and aout. Yes alpha can handle i386
formats. No i386 can't handle alpha formats. 8-)
1998-03-12 12:29:20 +00:00
John Birrell
ab9475bf88 Define the target type for alpha. 1998-03-12 08:00:03 +00:00
John Birrell
9fa2607935 Add the alpha makefile.
Move tc-i386.c from Makefile to Makefile.i386 'cause alpha doesn't
like trying to swallow it. Indigestion, I think.
1998-03-12 06:51:48 +00:00
John Birrell
ec14ed6ee5 Change the include path for bfd.h to libbfd/${MACHINE_ARCH} since
I moved the location of that architecture specific file.
1998-03-12 05:59:22 +00:00
John Birrell
06e95425f7 This file was generated on i386, so it has been moved to the i386
sub-directory. It differs from the alpha version.
1998-03-12 05:31:34 +00:00
John Birrell
823093fcc3 This file was generated on i386 by the update.sh script in
src/gnu/usr.bin/binutils.
1998-03-12 05:29:44 +00:00
John Birrell
8e6a3bf016 These files were generated on alpha by the update.sh script in
src/gnu/usr.bin/binutils.
1998-03-12 05:26:30 +00:00
John Polstra
f07eaee2fc Replace empty install targets with definitions of INTERNALLIB and
INTERNALSTATICLIB to suppress installation of internal libraries.
1998-03-12 05:14:19 +00:00
John Birrell
e6956da5e0 Change script to get the machine type from `uname -m' and make
the binutils headers for (machine)-unknown-freebsdelf.

Also copy the bfd.h header to an architecture specific directory
because there are two fundamental lines that differ (32-bit vs 64-bit)
between i386 and alpha.

The config.h for libbinutils generates the same on alpha as i386,
so I didn't change that (though I was tempted!).
1998-03-12 04:54:42 +00:00
John Polstra
ab5ad3a4b5 Restructure the binutils hierarchy somewhat in order to better
support building it for variant architectures.  It was already
becoming clear that the former structure was too rigid and didn't
scale well.

The usual sort of makefile magic arranges to .include an architecture
specific makefile "Makefile.${MACHINE_ARCH}" in each directory
where it exists.  Also, sources will be found in each subdirectory
"${MACHINE_ARCH}" that exists.  This is all taken care of automatically
by the top level "Makefile.inc0".

This all seems to work right for the i386 now.  I have also converted
those alpha pieces already present to the new schema as best I
could.

Also: change the BINDIR on the i386 to /usr/libexec/elf for "ar"
and "ranlib".  They are not object format independent enough to
put into /usr/bin.
1998-03-12 02:55:43 +00:00
John Birrell
49ee5e93ce We want ld in /usr/bin, not some weird and wonderful hiding place
that might be inspired by some creation from Intel. Doh.
1998-03-09 06:07:27 +00:00
John Birrell
25c5530515 Import of alpha specific bits to configure binutils for FreeBSD/Alpha.
Other changes that affect the i386-elf work are on hold to avoid
stuffing up other work in progress.
1998-03-09 00:33:28 +00:00
Peter Wemm
a4f46b7116 Set LIB_PATH explicitly otherwise genscripts makes (incorrect) references
all over the place.
1998-03-08 08:08:39 +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
John Polstra
b6e7a280a9 Fix the broken installation of strip. It tried to use the installed
strip program (via "install") to strip itself.  But the program
wasn't executable because "install" hadn't made it so yet.  I
borrowed the method used for the old strip to get around this.
1998-03-06 00:28:04 +00:00
John Polstra
2e280533a1 Add bmakefiles for building binutils from the contrib tree.
This finishes up the binutils import.  But I am leaving it disabled
in "src/gnu/usr.bin/Makefile" for now.  It is not used by anything
yet, so I'll take this opportunity to run one more round of tests
before enabling it.
1998-03-01 23:41:17 +00:00
Bruce Evans
5983a0d1cf Fixed printing of %fs and %gs for live kernels.
Only print the current pcb on startup.  Printing it every time a utility
routine was called messed up the register dump for live kernels.
1998-02-13 02:45:26 +00:00
Bruce Evans
9bb4a86cf0 Fixed accesses to addresses between VM_MAXUSER_ADDRESS (normally
0xefbfe000) and kernel_start (normally 0xf0100000).

Things are unnecessarily (?) difficult because procfs is used to
access user addresses in the live-kernel case although we must have
access to /dev/mem to work at all, and whatever works for the
dead-kernel case should work in all cases (modulo volatility of
live kernel variables).  We used the wrong range [0, kernel_start)
for user addresses.  Procfs should only work up to VM_MAXUSER_ADDRESS,
but it bogusly works for reads up to the address 2 pages higher
(the user area, including the kernel stack, is mapped to where the
user area used to be (WTUAUTB)).  Procfs can not work at all for
addresses between WTUAUTB and kernel_start.

Now we use procfs only to access addresses up to VM_MAXUSER_ADDRESS.
Higher addresses are translated normally using kvtophys(), so the
user ptd is used for addresses below the real kernel start (0xf0000000;
see INKERNEL()) and nothing is found WTUAUTB.

Strange accesses that cross the user-kernel boundary are now handled,
but such ranges are currently always errors because they necessarily
overlap the hole WTUAUTB.

Short reads are still not handled.
1998-01-19 15:27:56 +00:00
Bruce Evans
04822660a1 Removed `kstack' and associated mistranslations in kvtophys().
Correct translations would have been null.  However, kstack was
the top of the kernel stack instead of the base of the kernel stack
like it was when the kernel exported it, so the area above the
kernel stack was mistranslated and the kernel stack was not
translated.  This bug was depended on to compensate for the wrong
value of kstack - to read the pcb, instead of just using the address
of the pcb, we used the mistranslated address of kstack, which
happened to be the same (curpcb = kstack - 0x2000).

This area is simpler than it used to be now that the kernel stack
address is per-process.  The code still seems to be more complicated
than necessary - the `found_pcb == 0' case seems to be unused.
1998-01-19 14:27:41 +00:00