Commit Graph

430 Commits

Author SHA1 Message Date
mrg
1fdd6e4cde build libopcodes separately from libbfd as in binutils 2.13 they have
separate CFLAGS name spaces, and the old combined method no longer works.
2003-03-01 13:18:28 +00:00
mrg
f2f9754b55 update / regenerate for binutils 2.13.2.1 2003-03-01 13:08:42 +00:00
jdolecek
ceb43cbb02 do not install libioP.h nor iostreamP.h 2003-01-28 14:40:59 +00:00
thorpej
1dd1ce77c1 Remove more old toolchain bits. 2002-09-17 23:24:52 +00:00
thorpej
3b08abd277 * Eliminate the USE_NEW_TOOLCHAIN variable. Instead, split it into
two variables:

  TOOLCHAIN_MISSING -- set to "yes" on platforms for which there is
  no working in-tree toolchain (hppa, ns32k, sh5, x86_64).

  EXTERNAL_TOOLCHAIN -- if defined by the user, points to the root of
  an external toolchain (e.g. /usr/local/gnu).  This enables the cross-build
  framework even for TOOLCHAIN_MISSING platforms.

  If TOOLCHAIN_MISSING is set to "yes", MKGDB, MKBFD, and MKGCC are all
  unconditionally set to "no", since the bits are not there to build.

  If EXTERNAL_TOOLCHAIN is set, MKGCC is unconditionally set to "no",
  since the external toolchain's compiler is not in-sync with the
  in-tree compiler support components (e.g. libgcc).

* Set MACHINE_CPU much earlier in bsd.own.mk, so that more tests in
  that file can use it.
2002-09-17 23:18:25 +00:00
lukem
16683a00df Explicitly move setting of NOxxx (et al) to the top of the Makefile
(before including <bsd.own.mk>)
2002-08-19 15:01:34 +00:00
lukem
8f96758140 Use ${NETBSDSRCDIR}/some/path instead of ${.CURDIR}/../../../some/path (etc).
(Reduces make output by ~ 20%)
2002-08-19 09:46:39 +00:00
fredette
f53ba8285a Now build profiled libraries on m68000. 2002-07-17 18:46:12 +00:00
itojun
18ef784f92 add some items to CLEANFILES 2002-06-19 16:10:48 +00:00
itojun
05e25409ab mistake in replacement for peXXigen.c 2002-06-18 08:48:29 +00:00
itojun
6d9d60e78d add rules needed for full-feature libbfd. usually not visited.
to build full-feature libbfd, do the following:
- add "--enable-targets=all --enable-64-bit-bfd" to
  src/tools/toolchain/Makefile configure arg
- invoke nbmake-<platform> native, to regenerate files under src/gnu
2002-06-18 08:19:04 +00:00
thorpej
a2213fccd7 Add native toolchain bigs for "armeb" (big-endian ARM). 2002-05-20 15:03:38 +00:00
thorpej
887ea411f8 Remove bfd_elf32_{big,little}arm_nbsd_vec 2002-04-11 21:46:29 +00:00
thorpej
5269e780e1 Update DEFAULT_VECTOR and SELECT_VECS for arm--netbsdelf BFD changes. 2002-04-01 20:25:50 +00:00
jmc
1347ab1b90 Remove check for sparc64 which adds -msoft-quad-float as that is now the
default for the compiler on sparc64.
2002-03-28 09:58:09 +00:00
fredette
f3cbb9ef0a Added ${G_CONFIGDIR} to .PATH. This is needed on m68000 so that
libgcc1 gets built.
2002-03-26 23:10:58 +00:00
bjh21
e00fcca843 MACHINE_ARCH can't be "arm26" any more. 2002-03-24 22:23:43 +00:00
fredette
99db91e2e0 Add m68000-specific `toolchain2netbsd' generated toolchain build/config files. 2002-03-22 00:07:45 +00:00
tv
a2ba138feb Fix fallout from collapsing libiberty to MI config.h: libstdc++ includes
little bits of libiberty, so -I the non-arch specific directory now.
2002-02-28 02:13:34 +00:00
tv
ac1299bdfb New toolchain infrastructure for sh3eb, generated with mknative. 2002-02-27 18:45:14 +00:00
tv
8d7b76f87a Fix OBJS dependency. 2002-02-27 17:58:52 +00:00
tv
6080b95ae4 Make libobjc configury MI. 2002-02-27 17:55:32 +00:00
tv
b69d8cc8b2 New toolchain framework for sh3el platforms, generated with mknative. 2002-02-27 17:10:09 +00:00
tv
bfa4c6d7c2 Make new toolchain conf files for libiberty MI. 2002-02-27 17:03:49 +00:00
tv
1c986fdf46 Skip building anything if the target's .mk files are missing. (Allows the
toolchain to be built in segments, or not at all if the in-tree toolchain
is inappropriate for the target.)
2002-02-11 21:36:33 +00:00
mrg
6bdbccbb59 regenerate. 2002-01-22 15:52:53 +00:00
tron
2ece7637b1 Add "_eh.c" to list of files which are supposed to get cleaned. 2002-01-02 09:17:48 +00:00
thorpej
89b1a9ca73 Introduce 3 new MK* variables that have effect in the USE_NEW_TOOLCHAIN
case:

	MKBFD	If set to "no", disables building of libbfd, libiberty,
		and all things that depend on them (binutils/gas/ld, gdb,
		dbsym, mdsetimage).

	MKGDB	If set to "no", disables bulding of gdb.

	MKGCC	If set to "no", disables building of gcc and the
		gcc-related libraries (libg2c, libgcc, libobjc, libstdc++).

These are useful for building platforms for which either of the following
situations are true:

	(1) You have no userland from which to run toolchain2netbsd
	    in order to build the appropriate toolchain build framework.

	(2) The platform which you are building requires a newer set
	    of tools than are currently in the tree (e.g. x86-64, ia64).
2001-12-31 23:04:11 +00:00
mrg
d750ba5f81 this is really libstdc++ 2.8.0 2001-12-30 17:21:19 +00:00
lukem
efcc9a4c9d * Add user-controlled mk.conf variables
- SHLIBDIR	Location to install shared libraries if ${USE_SHLIBDIR}
			is "yes".  Defaults to "/usr/lib".

	- USE_SHLIBDIR	If "yes", install shared libraries in ${SHLIBDIR}
			instead of ${LIBDIR}.  Defaults to "no".
			Sets ${_LIBSODIR} to the appropriate value.
			This may be set by individual Makefiles as well.

	- SHLINKDIR	Location of shared linker.  Defaults to "/usr/libexec".
			If != "/usr/libexec", change the dynamic-linker
			encoded in shared programs

* Set USE_SHLIBDIR for libraries used by /bin and /sbin:
	libc libcrypt libcrypto libedit libipsec libkvm libm libmi387
	libtermcap libutil libz

* If ${_LIBSODIR} != ${LIBDIR}, add symlinks from ${LIBDIR}/${LIB}.so*
  to ${_LIBSODIR}/${LIB}.so* for compatibility.

* Always install /sbin/init statically (for now)


The net effect of these changes depends on how the variables are set:

  1.)	If nothing is set or changed, there is no change from the
	current behaviour:
		- Static /bin, /sbin, and bits of /usr/*
		- Dynamic rest
		- Shared linker is /usr/libexec/ld*so

  2.)	If the following make variables are set:
		LDSTATIC=
		SHLINKDIR=/lib
		SHLIBDIR=/lib
	Then the behaviour becomes:
		- Dynamic tools
		- .so libraries used by /bin and /sbin are installed to /lib,
		  with symlinks from /usr/lib/lib*so to -> /lib/lib*so
		  where appropriate
		- Shared linker is /lib/ld*so

  3.)	As per 2.), but add the following variable:
		USE_SHLIBDIR=yes
	This forces all .so's to be instaleld in /lib (with compat
	symlinks), not just those tagged by their Makefiles to be.
	Again, compat symlinks are installed
2001-12-28 01:32:37 +00:00
thorpej
d103096c14 Fixup VERSION. 2001-12-20 18:26:30 +00:00
tv
4c9a2ef7d3 * Add protoize and unprotoize. (Closes PR 6894.)
* Regen files with proper OS names and version numbers.

* Clean up toolchain2netbsd somewhat, to get it ready to be cross-host
  compatible (more work to be done here, but it's getting closer).

* Add framework for gdbreplay and gdbserver, but hold off on enabling these
  by default until low-nbsd.c is verified to work everywhere.
2001-12-19 23:54:16 +00:00
tv
7fb95bfb35 Remove iostdio.h from the list of system-installed headers; intended to
address parts of PR toolchain/14896.  This header file is nonstandard
(and doesn't even exist in gcc 3.0); an out-of-the-box gcc build also
doesn't provide the missing functions.  So just drop the .h completely.
2001-12-19 20:52:11 +00:00
thorpej
3faae759ba Allow a new-toolchain build to be done without actually building
the target "native toolchain" if BOOTSTRAP_NEW_TOOLCHAIN is set.

This is important if you don't have any userland at all, and you're
trying to make one from which you can run toolchain2netbsd.
2001-12-15 03:37:36 +00:00
thorpej
17f1178fc6 More toolchain2netbsd output for the Alpha, after coaxing
toolchain2netbsd to actually spit it out.
2001-12-14 22:29:12 +00:00
thorpej
01768cb6da Update to reflect latest toolchain2netbsd. 2001-12-14 22:26:03 +00:00
thorpej
2812f0e978 Kludge to make old toolchain builds work again after the NOxxx changes. 2001-12-14 16:55:14 +00:00
thorpej
74ed46fbb4 Commit the results of running toolchain2netbsd on the Alpha. 2001-12-14 07:12:09 +00:00
lukem
df91d4a185 move NOxxx= 2001-12-12 23:09:13 +00:00
lukem
0a3f147fdd move NOLINT 2001-12-12 23:08:26 +00:00
thorpej
39c9a8ba17 We apparently must now set NOLINT= *BEFORE* including bsd.own.mk. 2001-12-12 23:00:50 +00:00
thorpej
5722ce0152 Make LIB2FUNCS_EH work like the rest of LIB2FUNCS, and clean
up the special rules required to build those objects.
2001-12-12 17:27:50 +00:00
lukem
4c650ea52b we need a .c file to build _eh.{o,so,po} from, so add libgcc2.c back
in as a source for the rules.
2001-12-12 09:30:55 +00:00
lukem
22cf1d253e pull in <bsd.own.mk> after NOLINT is defined, so that MKLINT=no is
correctly determined
2001-12-12 08:58:45 +00:00
tv
8e6f7afb5b MKfoo=no -> NOfoo 2001-12-12 01:48:43 +00:00
thorpej
cf11c3964c Fix building of _eh.o and friends. 2001-12-11 23:43:04 +00:00
thorpej
b149da874b Clone from mipseb.mk 2001-12-11 03:45:06 +00:00
jmc
d08eaff246 While gcc may automatically add -fexecptions to c++ code it will only do that
for files named .cc or .C. _eh gets generated into a .c file so we need
explicit rules for it's targets (.o .po and .so) to compile it correctly.

Without this exceptions just plain don't work. Nothing ever gets caught.
2001-12-02 12:23:52 +00:00
jmc
3508f7583d Need -msoft-quad-float on sparc64 as double->int promote to quad math. 2001-12-02 03:06:55 +00:00
tv
8eb663859b Make the .cc->NULL transform do nothing (so that "exception.cc" doesn't
get compiled into "exception" during "make includes").
2001-11-28 14:29:13 +00:00
tv
d5533f8e6c PIC me! PIC me! (libgcc_pic.a)
...And while we're at it, add a profiled libgcc too.

Use the "generate .c files and let <bsd.lib.mk> sort it out" method
for compiling these libraries.  Only one real divergence (-fexceptions)
existed, but exceptions are turned on for C++ code by default in gcc
2.95.3, so this option was redundant anyway.
2001-11-28 04:39:55 +00:00
thorpej
84392553e1 Remove special-case for ARM. 2001-11-26 00:02:40 +00:00
simonb
23be609b8c New toolchain files for mipsel.
From Rafal's commit for mipseb (which applies here too):
 WARNING: Binutils 2.11.2 (maybe earlier) changed the MIPS ABI, so any
 shared libs built by this toolchain WILL NOT WORK without either a whack
 to BFD to fix that or a patch to ld_elf.so to work around it.  I need to
 chase the binutils folks on this issue still.
2001-11-17 04:41:44 +00:00
rafal
f317d28b1a New toolchain files for mipseb. Mainly toolchain2netbsd output with some
changes to configuration stuff to (a) recognize `mipseb', and (b) build a
BE-default GCC on mipseb.  gprof and gdb still not done.

WARNING: Binutils 2.11.2 (maybe earlier) changed the MIPS ABI, so any
shared libs built by this toolchain WILL NOT WORK without either a whack
to BFD to fix that or a patch to ld_elf.so to work around it.  I need to
chase the binutils folks on this issue still.

That said, the new toolchain seems to work quite well once the ABI change
is worked around/fixed -- I'm committing from a machine running a user-
land built with the new compiler.
2001-11-08 07:21:53 +00:00
scw
ec53366faa Add m68k-specific `toolchain2netbsd' generated toolchain build/config files. 2001-11-05 19:10:55 +00:00
tv
ec5a9a312e Add REQUIRETOOLS to make version-specific new toolchain compiler libs fail
to build if USETOOLS is set to "no" by the builder.  (Sanity check; as an
override, USETOOLS may be set to "never", but see warnings in BUILDING.)
2001-10-31 16:27:31 +00:00
tv
32bac67e87 Exclude Y2K bug flag files from the build; fixes undefined symbol errors
reported by jbernard@mines.edu in PR bin/14222.
2001-10-19 03:33:35 +00:00
matt
9744d3aebc If MACHINE_ARCH == arm, install into /usr/include/${MACHINE_ARCH} 2001-10-18 06:12:48 +00:00
matt
1532b67157 Update from toolchain2netbsd run. (though some only have the updated
toolchain2netbsd version run)
2001-10-18 05:45:26 +00:00
tv
3ab74bd348 Set SHLIB_{MAJOR,MINOR} explicitly instead of using shlib_version files.
(This currently means that checkver doesn't work with these libs, but that
will be fixed.)
2001-09-21 15:38:15 +00:00
simonb
2db48f4c88 Add "Remember to update distrib/sets..." lines (and NetBSD RCS IDs in
some cases).
2001-09-10 11:18:41 +00:00
matt
6be82855aa Final config file for VAX ELF. 2001-09-10 06:04:02 +00:00
matt
f6225f91fb Rebuild USE_NEW_TOOLCHAIN files for vax. Add binutils, etc. .. 2001-09-08 18:26:05 +00:00
matt
33ebc9435e Regenerate so that ${DIST} is not expanded. 2001-08-30 01:31:49 +00:00
mrg
69879ba2e5 regenerate. 2001-08-25 12:23:49 +00:00
matt
f5c0264a5d New toolchain support for ARM ELF. 2001-08-19 16:05:02 +00:00
mrg
7f85f1f0c3 build & install info documentation. 2001-08-19 14:19:38 +00:00
mrg
318911587e regenerate. 2001-08-15 02:44:58 +00:00
tv
8f264ae2fc Regen. 2001-08-14 05:18:26 +00:00
tv
75c2396dcc Regen. 2001-08-14 05:14:59 +00:00
tv
dabda76181 For now, just to make sure we don't conflict with an out-of-the-box
gcc 3.0 build (as noted by mrg), bump shlib major again, to version 4.0.

There might be a better solution to this kind of thing in the future; I'll
have to think about it.
2001-08-14 01:21:23 +00:00
mrg
5b25536c3b build libbfd for sparc & sparc64. 2001-08-10 12:42:37 +00:00
mrg
14c389e8b1 regenerate 2001-08-10 12:41:19 +00:00
mrg
5f38c885be build libstdc++ for sparc & sparc64. 2001-08-10 11:59:50 +00:00
mrg
8375332080 regenerate. 2001-08-10 11:59:22 +00:00
mrg
220ef62d75 with USE_NEW_TOOLCHAIN, install all required libstdc++ headers. this needs
toolchain2netbsd to be re-run for each platform.  (sparc, sparc64 and i386
updates coming shortly.)
2001-08-10 11:57:48 +00:00
matt
4ce1ea0d33 USE_NEW_TOOLCHAIN powerpc files for libg2c & libstdc++ 2001-08-10 06:46:31 +00:00
matt
f88f89f0d4 Update/add new files for powerpc with USE_NEW_TOOLCHAIN 2001-08-10 06:44:06 +00:00
mrg
19a0a03e84 install the C++ headers with the new toolchain. 2001-08-09 16:10:56 +00:00
mrg
4a850cf2d7 include bsd.own.mk before testing USE_NEW_TOOLCHAIN. 2001-08-09 16:09:52 +00:00
tv
b15841eee9 Add MKPIC=no explicitly for old-toolchain build structure, to avoid shlib
version mismatch with new toolchain.
2001-08-07 03:28:07 +00:00
tv
e9a42fcb22 Re-add these files; they're needed by the old-toolchain bfd build until
that has been nuked.
2001-08-06 15:49:42 +00:00
tv
a70f325713 BFD library for new toolchain. Currently uses the non-unified layout; once
several architectures are available, I'll test and add the unified layout
bits.
2001-08-06 15:47:17 +00:00
matt
71986448fd Don't make libstdc++ with old toolchain on ARM ELF 2001-07-28 06:59:02 +00:00
matt
faa73ac4d2 Regen new toolchain ARM ELF files with toolchain2netbsd.
Include libg2c, libobjc, libstdc++ ARM ELF config files.
2001-07-28 06:57:07 +00:00
mrg
c9a8c7833a build new sparc & sparc64 fortran libraries. 2001-07-26 11:40:26 +00:00
mrg
7aa1593d24 build new sparc & sparc64 objective c libraries. 2001-07-26 11:36:05 +00:00
mrg
4c86457e13 regenerate. 2001-07-26 11:30:07 +00:00
mrg
160521eb33 install the C++ libgcc headers (exception, new, new.h & typeinfo.) 2001-07-26 11:28:21 +00:00
tv
f6709db6c6 Add new toolchain build structure for libg2c, libobjc, and libstdc++.
Note that old build system still exists under .if conditionals; this
will be removed once all platforms are using the new toolchain.
2001-07-24 19:44:47 +00:00
matt
c8e381be8c Adding VAX gcc 2.95.3 (ELF). 2001-07-20 04:59:06 +00:00
matt
5ac8a0b7ba powerpc support for 2.95.3 2001-07-19 22:13:23 +00:00
mrg
4523fd67d7 build a mipsel-netbsd gcc & libgcc. 2001-07-19 18:35:22 +00:00
matt
acfa102212 Rework Makefile (perhaps not optimally) to keep all ojbects in ${.OBJDIR}.
Due to SRCS containing directories, the objects went in those same
directories.
2001-07-19 18:06:19 +00:00
matt
ac07e0c6c6 ARMELF support for libgcc 2001-07-19 15:33:09 +00:00
matt
3847d1eab8 ARM support for -liberty 2001-07-19 15:30:36 +00:00
mrg
4acc89ca46 build sparc libiberty. 2001-07-19 15:17:59 +00:00
mrg
3963922c9b build a sparc libgcc 2001-07-19 15:16:39 +00:00
mrg
ac4b8b619b mipsel libiberty. 2001-07-19 13:46:14 +00:00
mrg
96b4d81d72 sparc64 libiberty. 2001-07-19 13:45:09 +00:00