Commit Graph

12 Commits

Author SHA1 Message Date
obrien
d56eff1783 There is need to have a special BINUTIL_ARCH when we can use our more
common place TARGET_ARCH.
2002-09-22 05:29:37 +00:00
obrien
bbe4c70f08 Clean up the formatting. 2001-10-14 01:47:30 +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
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
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
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
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
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