Commit Graph

31 Commits

Author SHA1 Message Date
Ruslan Ermilov
83c7ade90a NOSHARED -> NO_SHARED 2004-12-21 09:59:45 +00:00
David E. O'Brien
7d0fc2f49e MAJOR cleanup of the Bmake framework.
This includes removing all vestiges of the old not-really supported
ability to build cross tools targeting non-FreeBSD systems, such as
m68k Lynx and NetBSD.  Move as much duplicated code from platform
Makefiles into the shared Makefiles.  Add a simple mechanism for
specifying ELF 'ldscripts'.  Also share as many .h files as possible
(now a single bfd.h vs. one per platform).
2004-07-08 17:05:34 +00:00
David E. O'Brien
34d55919fb Our 'TOOLS_PREFIX' and not 'DESTDIR' matches what the stock GNU build
framework wants.
2004-06-20 01:44:58 +00:00
David E. O'Brien
e223c68bfc Updated Bmake framework for Binutils 2.15. 2004-06-16 07:09:44 +00:00
Johan Karlsson
7ff8c436d3 style.Makefile(5):
Use WARNS?= instead of WARNS=

For this to work properly for all part is the subdirectories
the WARNS assignments in Makefile.inc0 are moved to the correspondning
Makefile.inc.

Approved by:	obrien (binutils maintainer)
Tested by:	make universe
2004-02-24 19:23:33 +00:00
Ruslan Ermilov
6b09ae934b Removed invasion into these makefiles by the "legacy" stuff;
I have a better fix in the works.
2003-04-12 14:44:49 +00:00
Ruslan Ermilov
cc59b11e0f libbinutils.a needs basename(3); when the latter is provided
by -legacy, liblegacy.a should come last in the LDADD list.
2003-04-11 18:02:10 +00:00
Warner Losh
30aaff1192 Migrate to a new way of dealing with building from old revisions of
FreeBSD.  This method attempts to centralize all the necessary hacks
or work arounds in one of two places in the tree (src/Makefile.inc1
and src/tools/build).  We build a small compatibility library
(libbuild.a) as well as selectively installing necessary include
files.  We then include this directory when building host binaries.

This removes all the past release compatibilty hacks from various
places in the tree.  We still build on tip of stable and current.  I
will work with those that want to support more, although I anticipate
it will just work.

Many thanks to ru@, obrien@ and jhb@ for providing valuable input at
various stage of implementation, as well as for working together to
positively effect a change for the better.
2003-04-05 20:30:30 +00:00
Ruslan Ermilov
d2893b161b Drop support for COPY, -c has been the default mode of install(1)
for a long time now.

Approved by:	bde
2002-07-29 09:40:17 +00:00
David E. O'Brien
eb294035cb Make it easier to change the native emulation.
Tested on:	alpha, i386, sparc64
2002-03-29 00:41:01 +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
25a59bcfe7 Set the SCRIPTDIR to be rooted at TOOLS_PREFIX rather than DESTDIR.
(the two may be different (ie, build vs. runtime))
Allow ldscript's SEARCH_DIR do be rooted somewhere other than `/'.
(in this case at TOOLS_PREFIX)

These changes are most helpful during `make buildworld' so that the shared
libs built in the middle of `make buildworld' are used vs. the ones in
/usr/lib on the build machine.

Submitted by:	ru
2002-02-07 01:37:53 +00:00
David E. O'Brien
a1a1118a96 Change the way the version strings are handled. 2002-01-27 22:47:22 +00:00
David E. O'Brien
8f0d33af07 Clean up a little bit more. 2001-10-14 01:58:18 +00:00
David E. O'Brien
4ab605cf6d Clean up the formatting. 2001-10-14 01:57:19 +00:00
Ruslan Ermilov
946b7fa17e Fixed the buildworld breakage in cross-tools caused by
misuse of /usr/src/include headers.  This REALLY fixes
the 20010919 src/UPDATING entry.

With this patch the 4.2-RELEASE box was able to survive
the 5.0-CURRENT "make world".

Beat over the head with this patch:	obrien
2001-09-24 09:25:05 +00:00
David E. O'Brien
0644c58328 Upgrade to Binutils 2.11.0. 2001-06-01 05:30:31 +00:00
David E. O'Brien
bb59398935 Total hack to fix broken bootstrap. Add -I/usr/src/include at the tail
end of the include searching.  We really need a real fix for the issue of
which set of headers to use in compiling the cross-tools -- /usr/include,
or /usr/src/include.
2001-05-03 21:37:06 +00:00
David E. O'Brien
16833ea1d9 Allow "NOSHARED" to be overridden.
Submitted by:	bde
2001-02-28 10:46:50 +00:00
David E. O'Brien
23d39e7247 Make critical toolchain binaries staticly linked in this development
version of the OS.
2001-02-27 11:25:43 +00:00
David E. O'Brien
5ce16708c7 stringify.sed' has been replaced by astring.sed' [on ANSI-C systems]. 2000-11-25 13:56:28 +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
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
John Birrell
a719bd2fd1 Add a BINUTILSDISTDIR hook here too. 1999-11-06 22:36:40 +00:00
Peter Wemm
9b7a44a60e $Id$ -> $FreeBSD$ 1999-08-27 23:37:10 +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
Peter Wemm
fb8bc13e4e Add missing DPADD's. 1998-06-03 18:01:04 +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
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
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
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