39 Commits

Author SHA1 Message Date
obrien
aa7968485d version 2.10 config file. 2000-05-22 08:26:10 +00:00
obrien
e6cacfa3cb Conditionally define "CROSS_COMPILE" here. 2000-05-22 08:25:40 +00:00
obrien
c2ff59c916 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
steve
2e142113a1 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
bde
3df6f40aa1 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
marcel
b05cb67442 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
17ed6e05da ${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
jb
ca5c8e5ca1 Replace freebsdelf with freebsd in BINDIR
Requested by: obrien
1999-11-07 08:07:02 +00:00
jb
81e20dd7c7 These have been repo-copied to i386-freebsd. 1999-11-07 06:13:35 +00:00
jb
9f72cef76d These have been repo-copied to alpha-freebsd. 1999-11-07 06:11:36 +00:00
jb
e4d1b59537 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
jb
e8b385afd6 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
jb
6e12da36ad 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
jb
6fdfa22232 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
jb
cd87b9d347 gas for powerpc targeted to FreeBSD. 1999-11-06 22:16:59 +00:00
jb
3d317a4c53 gas for m68k targeted to FreeBSD. 1999-11-06 22:14:26 +00:00
jb
bc08ddaec9 gas for sparc targeted to FreeBSD as ELF32 for a start (suject to change). 1999-11-06 22:12:24 +00:00
jb
011fa07f79 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
jb
f3f02229c7 Add the BINUTILSDISTDIR hook here too. 1999-11-06 21:55:33 +00:00
jb
6321dca496 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
peter
289c0d262f $Id$ -> $FreeBSD$ 1999-08-27 23:37:10 +00:00
imp
b4fe1fc062 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
imp
4697c1d0cc 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
jdp
e20ec13750 Update for import of binutils-2.9.1.
Submitted by:	Doug Rabson <dfr>
1998-09-06 23:01:53 +00:00
peter
04e2e080ec Missing DPADD's. 1998-06-03 18:57:59 +00:00
jb
bd175fde7d 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
jb
56f89354f8 Make a path absolute. 1998-05-11 09:26:39 +00:00
jb
f692a926a1 Fix the path. 1998-05-05 12:33:21 +00:00
jb
4f6564ed3b 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
jb
9ba533fa7b 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
jb
2e38ab65f6 The BINDIR definition is an extra directory level away, so include it
explicitly.
1998-05-05 08:57:11 +00:00
jb
774841113f Oops, missed the common part of gas. 1998-05-05 08:53:27 +00:00
jb
9de382a93c Support cross architectures by using specific directories instead of
the ones that match the host.
1998-05-04 22:09:10 +00:00
jb
f20e90aa53 i386 gas config files. 1998-05-04 22:05:54 +00:00
jb
b041393c3a Alpha gas config files. 1998-05-04 22:04:55 +00:00
jb
4d69d5fc11 Support cross-architectures using sub-directories. 1998-05-04 22:03:00 +00:00
jb
6534f3e8d1 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
jb
50a0cca4ea 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
jdp
0ba671bfd1 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