Commit Graph

232 Commits

Author SHA1 Message Date
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