Commit Graph

686 Commits

Author SHA1 Message Date
skrll
9d777fb2bb (pretend to) run mknative for hppa and pick up the -DNETBSD=1 addition
to LIBGCC2_CFLAGS.
2004-04-30 08:15:47 +00:00
uwe
562404165e Copy .s.so rule we use for libgcc_pic to make sure the millicode is
.hidden in libgcc_s.so as well.  Enable it for sh3.  Other CPUs for
which gcc uses millicode probably need this too.
Per discussion with Nick Hudson <skrll>.
2004-04-28 01:44:59 +00:00
lukem
6d15c512f3 remove AINC support; it is now unnecessary 2004-04-18 04:32:51 +00:00
tron
79dac9a13b Remove generated sources files "__gcc_bcmp.c", "_bb.c" and "_eprintf.c"
in "cleandir" target.
2004-03-29 09:32:49 +00:00
skrll
79ddf7b5dc Remove the LIB2FUNCS_ST objects from libgcc_s. 2004-03-25 07:48:34 +00:00
skrll
db31f1ccba Build the -fPIC exception handling objects with the right flags, e.g.
-fexceptions and link the shared library with the standard startup files.
2004-03-22 17:08:23 +00:00
skrll
ddc6c41839 Remove ${CPICFLAGS} from .o rules 2004-03-22 17:02:57 +00:00
scw
a8bb5642ca Results of mknative run with gcc3.3.3 on sh5el. 2004-03-17 09:02:06 +00:00
skrll
44d317c631 Remove local variables when building the .hidden objects. 2004-03-10 22:18:17 +00:00
skrll
b09e6d0dfe Whitespace 2004-03-08 14:47:27 +00:00
skrll
3539722ee8 Check for G_LIB1ASMFUNCS (not LIB1ASMFUNCS) being non-empty before
creating rules for LIB1ASMFUNCS. This is better for old makes (and
readability.)

As highlighted by grifo3000@interfree.it on current-users
2004-03-08 14:45:07 +00:00
skrll
0aae540257 Backout recent changes made to gnu/lib/libgcc3 for a forced MKPIC=no build.
Fix the behaviour of native and tools gcc when MKPIC=no is specified for
platforms that mknative has determined support shared libraries.

XXX distrib/sets/sets.subr doesn't support MKPIC=no
2004-02-27 14:52:01 +00:00
matt
a9a2fcf9dd Turns out we need libgcc_s for MKPIC=no too (C++ wants it). 2004-02-25 22:11:14 +00:00
matt
e88bf5d8c7 Always build libgcc_eh. It's still needed when MKPIC=no 2004-02-25 21:53:49 +00:00
skrll
869ddf30e8 Whitespace 2004-02-23 21:41:05 +00:00
skrll
f8314ad5e5 mknative sweep. mainly version string differences and STDC_HEADERs.
no need for the signbit stuff on sparc as libc got fixed.
2004-02-19 08:11:31 +00:00
skrll
7354ecab79 Re-run mknative for mipseb (sgimips). Should close PR 24438. 2004-02-16 16:06:38 +00:00
skrll
b263dbdd73 Be more gcc like in the way we deal with libgcc so that sh3/hppa millicode
and exception handling have a chance of working properly.

        - creates libgcc, libgcc_eh and libgcc_s

        - updates LIBGCC_SPEC to use them appropriately.

          There's a hack in here at the moment with respect to libgcc_so in that it
          is preferable to link against libgcc_so will only when -shared-libgcc is
          specified (the c++ frontend does this automatically.) Configurations where
          LINK_EH_SPEC is defined already do this. The gcc configuration for
          NetBSD/alpha and another NetBSD platform (I forget which) actually define
          LINK_EH_SPEC probably by accident rather than design.

        - updates share/mk to use the compiler's knowledge of what needs linking into
          libraries and executables. This removes an hppa hack.

        - updates the sets for the newly created libgcc* files.

	- support for linking against the _pg version of libgcc has been removed.
2004-02-15 19:52:27 +00:00
simonb
3e7ae7aefb Re-run mknative with latest mknative-gcc. 2004-02-14 08:39:07 +00:00
mrg
e38f9bc603 pass all required -I paths:
+CPPFLAGS+=    -I${G_EXTRA_HEADERS:H:u}

this fixes ppc builds (reported by hannken & briggs)
2004-02-12 23:17:59 +00:00
skrll
13145e5f28 Results of re-running mknative for a few MACHINE_ARCHs 2004-02-12 22:34:57 +00:00
mrg
41ba62f48c - some libgcc3/Makefile updates for new mknative
- re-run mknative for ~nearly everyone
2004-02-11 16:22:51 +00:00
mrg
0e4a80d700 regenerate with GCC 3.3.3-pre20040209.
XXX: missing vax, sh3*, hppa
2004-02-11 04:04:02 +00:00
skrll
2879279c43 Move libgcc3/*.mk to libgcc3/arch.
Update mknative-gcc.
2004-01-02 11:58:32 +00:00
mrg
416b3a63d6 do not link xmalloc.c or xexit.c. 2003-12-21 07:05:25 +00:00
matt
020ecacc80 Don't use -traditional-cpp when assembling the PowerPC .S files. 2003-12-11 22:37:27 +00:00
matt
cfbf1414f1 initial GCC3 support for VAX. (barely tested). No PIC support (aka no
shared libraries).  This is an initial step to full GCC3 support for VAX.
2003-12-08 03:33:13 +00:00
scw
b8191da53a Gcc3 for sh5 gets an ICE compiling libbfd's elf32.c and elf64.c at -O2.
Drop to -O1 for now when building for sh5.
2003-12-07 21:13:04 +00:00
scw
a72cb1203e MD glue for binutils on sh5. 2003-12-07 19:42:03 +00:00
simonb
32820e3ec5 Use gthr-single.h ("no real pthreads support") on ns32k for now. 2003-12-07 12:25:43 +00:00
simonb
3155813857 ns32k c++ (probably a.out?) currently doesn't support the
-ffunction-sections andd -fdata-sections flags; disabled them
for now.
2003-12-07 12:23:35 +00:00
scw
03aed749f0 Update for gcc 3.3.2 support (with in-tree binutils). 2003-12-07 10:02:45 +00:00
simonb
3952da3765 Add ns32k binutils 2.14 support. 2003-12-05 12:08:47 +00:00
simonb
f0467a5c13 Add ns32k GCC3 support. 2003-12-05 12:05:32 +00:00
mrg
4dd4b4772e regenerate with a working compiler 2003-12-05 04:53:27 +00:00
mrg
51b0c7cbfa regenerate these such that they (mostly) work.. 2003-12-05 02:57:02 +00:00
mrg
228f85d62e regenerate non-broken 2003-12-04 14:39:09 +00:00
mrg
abda1a5442 libopcodes.so.1/libbfd.so.6 2003-12-04 12:18:57 +00:00
mrg
ce29aa2370 build lib{opcodes,bfd,iberty} back in gnu/lib instead of gnu/usr.bin/binutils
as they are needed earlier than when gnu/usr.bin/binutils is built when
"make -j" is used.
2003-12-04 09:29:31 +00:00
mrg
65e91005fa don't build libopcodes/bfd/iberty here if we have binutils 2.14 2003-11-27 13:53:11 +00:00
scw
437384a077 Regen for TARGET_ENDIAN_DEFAULT=ARM_FLAG_BIG_END fix in config.gcc. 2003-11-04 14:46:59 +00:00
lukem
b43426c867 Move the rule to disable .cc -> NULL transforms, so it works again. 2003-10-28 08:13:39 +00:00
lukem
b947f38eae don't need .cc->NULL rule here 2003-10-28 08:12:32 +00:00
lukem
5966f94e07 Move the rule to disable .cc -> NULL transforms, so it works again.
Fixes "includes" when exception.cc is newer than inc/exception.
Noted in private mail by Havard Eidnes.
2003-10-28 07:38:57 +00:00
mrg
45e224e8d4 fix a typo in previous pointed out by lukem 2003-10-28 01:25:33 +00:00
mrg
f8fa4ee590 sun2 lib*3 for GCC3. 2003-10-27 17:19:58 +00:00
mrg
8d8c032590 add armeb-netbsdelf GCC3 support. (not tested) 2003-10-27 01:37:08 +00:00
lukem
130ab7336b Rework how MAKEVERBOSE operates:
*	Don't bother prefixing commands with a line of  ${_MKCMD}\
	and instead rely upon "make -s".  This is less intrusive on
	all the Makefiles than the former.  Idea from David Laight.

    *	Rename the variables use to print messages.  The scheme now is:
	    _MKMSG_FOO		Run  _MKMSG 'foo'
	    _MKTARGET_FOO	Run  _MKMSG_FOO ${.TARGET}
	From discussion with Alistair Crooks.
2003-10-21 10:01:19 +00:00
lukem
d4a55392c2 Support MAKEVERBOSE.
Use BUILDSYMLINKS instead of home-grown equivalents.
2003-10-19 14:52:03 +00:00
tron
00c8e095d9 Add "cs-tconfig.h" to "CLEANFILES". 2003-10-16 06:15:20 +00:00
matt
046e9000ba Make etime_.* and dtime_.* explicitly depend on the libU77 version.
Include *.d so that when make depend emit the dependencies, it picks up
the right file and so that the right file is used when making the objects.
2003-10-10 23:34:20 +00:00
veego
fd5c6da435 Fix part 1 of toolchain/23067 by removing the -nostdinc++, which will be
added if $DESTDIR is set by the bsd.dep.mk and bsd.prog.mk magic, but caused
problems while not using build.sh.
2003-10-06 21:36:59 +00:00
matt
39caecb211 Add in-tree toolchain support for HPPA. 2003-10-06 05:10:13 +00:00
tron
cc5dbcf926 Add dynamically generated sources to "CLEANFILES". 2003-10-01 09:39:50 +00:00
mrg
1b9c8708c3 x86_64 libgcc3 support 2003-09-27 02:08:07 +00:00
matt
f47a587ee6 Redo/fix gcc3 files for PowerPC. 2003-09-23 09:06:33 +00:00
fvdl
0135fe160a x86_64 gcc3 and binutils glue. Not yet used. 2003-09-07 21:24:53 +00:00
mrg
71889b67f5 make sure we build the unwind handlers with "-fexception". they were
supposed to, but the wrong variable was used as a base...

should fix PR#22673.
2003-09-05 09:54:30 +00:00
mrg
57b205e71d in-tree toolchain support for sh5el. not really tested yet, but it
seems to mostly work..  libcurses.so fails to link with an out of memory
error i haven't looked at yet, and nothing has actually been run..

XXX: gdb53 missing.
2003-09-04 04:34:14 +00:00
mrg
6e28e939f1 don't install iostream.info anymore - it goes away with GCC3. 2003-09-02 05:26:43 +00:00
matt
9de4f868de Regenerated. 2003-08-31 19:45:25 +00:00
tls
be39aeba77 Fix .include to reflect move of this Makefile. 2003-08-29 03:54:46 +00:00
mrg
277fd0e642 build libfrtbegin 2003-08-29 01:57:04 +00:00
mrg
58aefb674b oops, move this to the right location 2003-08-29 01:00:49 +00:00
mrg
f4b7364d5d build libfrtbegin.a with GCC3.3 2003-08-29 00:53:22 +00:00
mrg
1a086c6b25 introduce an additional switch to enable building GCC3 instead of GCC2:
HAVE_GCC3.  if this is set, we also set USE_TOOLS_TOOLCHAIN=no.  change
the definition of the former to be restricted to whether tools/toolchain
is used or not.
2003-08-27 16:03:17 +00:00
mrg
33eed2cc61 regenerate 2003-08-25 06:09:11 +00:00
mrg
bde3717628 regenerate. 2003-08-22 16:01:12 +00:00
mrg
74cfa6bb4b regenerate 2003-08-22 09:46:57 +00:00
mrg
023ae3cdb4 regenerate 2003-08-22 02:45:22 +00:00
mrg
22660a6384 add a patch from <sdegler@degler.net> to build .asm files by copying them
to .S files first.
2003-08-22 02:39:56 +00:00
mrg
2fe59400d5 bump the major on these 2003-08-04 01:53:51 +00:00
lukem
64b5a0fe7b Add INCSYMLINKS to <bsd.inc.mk> and <bsd.kinc.mk>, and use that instead of
SYMLINKS to install symlinked header files.  INCSYMLINKS are installed with
'make includes'.  This avoids using SYMLINKS and hacks with the 'linkinstall'
target in <bsd.links.mk>, as linksinstall occurs in 'make install' and hacks
to get it to occur in 'make includes' weren't robust, as seen in lib/libdes.

Yet more improvements to bsd.README.
2003-08-03 09:23:14 +00:00
matt
4e5cf29ef5 Add new files for gcc3 from native-gcc build. (alpha distribution builds
now successfully build).
2003-08-02 18:47:40 +00:00
lukem
a93ea220fc Rework how dependency generation is performed:
* DPSRCS contains extra dependencies, but is _NOT_ added to CLEANFILES.
  This is a change of behaviour.  If a Makefile wants the clean semantics
  it must specifically append to CLEANFILES.
  Resolves PR toolchain/5204.

* To recap: .d (depend) files are generated for all files in SRCS and DPSRCS
  that have a suffix of: .c .m .s .S .C .cc .cpp .cxx

* If YHEADER is set, automatically add the .y->.h to DPSRCS & CLEANFILES

* Ensure that ${OBJS} ${POBJS} ${LOBJS} ${SOBJS} *.d  depend upon ${DPSRCS}

* Deprecate the (short lived) DEPENDSRCS


Update the various Makefiles to these new semantics; generally either
adding to CLEANFILES (because DPSRCS doesn't do that anymore), or replacing
specific .o dependencies with DPSRCS entries.

Tested with "make -j 8 distribution" and "make distribution".
2003-08-01 17:03:41 +00:00
mrg
391773a711 - fix several build problems
- regenerate for most platforms.  missing:
	m68000, alpha, sh3eb.
2003-08-01 13:55:36 +00:00
matt
5166de08fb back out inadvertant commit (however, -D_PTHREADS needs to be supplied
somewhere so that gthr-posix.h is included).
2003-07-30 21:21:46 +00:00
matt
e379d89a35 Remove the alpha specific -mieee flag 2003-07-30 21:20:33 +00:00
matt
774cd5317a Remove the alpha specific -mieee 2003-07-30 21:19:35 +00:00
matt
53808daf5c Regenerate gcc3 configuration for alpha 2003-07-30 06:22:54 +00:00
mrg
2c5b77b2d3 - find gthr-default.h for libgcc3
- adapt for gcc3/libiberty change
- regenerate
2003-07-30 05:33:25 +00:00
mrg
9f1ca98b0a regenerate with --enable-threads 2003-07-29 06:49:53 +00:00
uwe
7c38c5c675 Adapt to bsd.dep.mk changes. 2003-07-29 00:13:21 +00:00
mrg
b7a9236e8e set GNUHOSTDIST 2003-07-28 02:53:24 +00:00
mrg
975645453d *correctly* regenerate with correct non-hardcoded paths 2003-07-28 02:39:34 +00:00
mrg
30c88832e7 regenerate with correct non-hardcoded paths 2003-07-28 01:31:15 +00:00
mrg
3335e363cf turn back on profiling - thanks luke 2003-07-28 01:10:51 +00:00
mrg
57dc195231 build-tested support for m68000, m68k, sh3el and sh3eb.
XXX: sun2 seems to be currently generally busted but most of the world
     builds.  of course it is untested..
XXX: sh3* and -pg goes BOOM with gcc3.3... it generates code that uses
     the same labels twice... need to set NOPROFILE for now.
2003-07-27 14:41:32 +00:00
mrg
5a8170433a actually build libstdc++-v3 now.
XXX NOPROFILE has been set as for some very very very strange reason i
don't understand yet this is causing the compiler to barf...
2003-07-27 14:38:57 +00:00
mrg
0d07d92566 regenerate 2003-07-27 14:34:43 +00:00
mrg
354caa5839 add working alpha support - including working cross builds from x86 2003-07-27 05:10:47 +00:00
mrg
5e6550b28e working mips support (mipsel runs fine, mipseb compiles, untested so far) 2003-07-26 18:41:26 +00:00
mrg
5a9a1bb768 - build/install a libsupc++.a
- clean up commented & wrong rules
- find the right bits/ headers for sparc64 & arm
- make sure libsupc++/libstdc++ have all the symbols from libiberty they want
- disable the build of libstdc++ for now (but keep the includes installing)
2003-07-26 14:55:12 +00:00
mrg
9a2ca8e117 working arm & sparc64 support 2003-07-26 14:48:06 +00:00
mrg
82dc526688 make sure tconfig.h exists before .depend 2003-07-25 19:20:07 +00:00
mrg
ae9855d2fe maybe build gcc3 instead of gcc2 2003-07-25 16:57:06 +00:00
mrg
a9fc136dbd new reach-over infrastructure (largely based on GCC2.95 one) that (mostly)
works.  sparc & i386 support is included here.  libstdc++-v3 does not yet
properly build for some strange reasons (that may be due to broken netbsd
header files, it's not yet clear) but i have been able to compile, link and
run both i386 & sparc hello.c.
2003-07-25 16:32:23 +00:00
lukem
70e86ffb8d add more rules to disable default '.cc -> NULL' transforms,
because the default rules cause problems if "valarray.cc" is newer
than "valarray" (for example)
2003-07-22 02:52:37 +00:00
uwe
b659db9760 When MKPIC is "no" and we force MKLINKLIB to "yes" to provide
something for BFD-using programs to link against, also provide an
empty libinstall target so that libbfd.a does not get installed.
2003-06-26 02:49:31 +00:00
thorpej
4563b128e1 * If MKGCC == no, don't build this library, which is bundled with the
compiler.
* Set GNUHOSTDIST (transitional, for use with new mknative).
* Add -I${.CURDIR} to CPPFLAGS (to support a future change).
2003-06-01 02:09:31 +00:00
thorpej
a20987422e If MKGCC == no, don't build these libraries (which are bundled with
the compiler).
2003-06-01 02:08:07 +00:00
thorpej
0a1127cb30 Run mknative to regenerate for binutils 2.13.2.1. 2003-05-26 01:03:05 +00:00
thorpej
a63a02e3b9 If MKPIC is "no", then we need to provide *something* for BFD-using
programs to link against, so reset MKLINKLIB to "yes" in that case.
2003-04-09 22:33:26 +00:00
mycroft
2add147359 Actually rerun mknative on these... 2003-03-20 14:47:36 +00:00
mycroft
f63d692921 Build COFF targets. Some embedded tools really, really want this. 2003-03-17 15:53:50 +00:00
mrg
c8e7bd6d18 back out previous:
- didn't need to/mean to update libstdc++ yet

	- mknative generated bogus files that ended having libstc++ not install
	various required headers.

should fix the "can't find iostream.h" lossage in src/regress.
2003-03-03 13:58:24 +00:00
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
tv
178c5459ad Another missing ${.CURDIR}. 2001-07-19 12:51:05 +00:00
mrg
8666107a13 build a sparc64 libgcc. 2001-07-19 12:39:26 +00:00
mrg
ba4c57fc10 opdel.o needs to be built with -DL_op_delete, not -DL_op_del. add a special
rule for this...
2001-07-19 06:14:27 +00:00
tv
d370057cd9 Add a missing ${.CURDIR}. 2001-07-18 20:20:01 +00:00
tv
0b01c492fb i386 libgcc makefile bits from toolchain2netbsd. 2001-07-18 18:29:17 +00:00
tv
f59cc167de Add build structure for the new gnu/dist/toolchain/gcc based libgcc, preserving
old structure for now in an .if based on USE_NEW_TOOLCHAIN.
2001-07-18 18:29:02 +00:00
tv
b1e9e38236 First framework for libiberty, now used by all the toolchain components (so
no longer merged with libbfd).  Conditional on USE_NEW_TOOLCHAIN for now.
2001-07-18 12:17:15 +00:00
matt
a126663857 Compile fixu* for MACHINE_ARCH of arm 2001-07-13 19:54:28 +00:00
mason
0f5d49210e Don't build libstdc++ on sparc64. 2001-05-10 12:53:02 +00:00
tsubai
dbe09b485b sh3 --> sh3eb / sh3el. 2001-02-02 19:32:38 +00:00
enami
6ebf26b574 Define variables before it is used. 2001-01-09 08:33:46 +00:00
itojun
99b0df5333 use MACIHNE_CPU to determine architecture-dependent source code directory.
is use of exists(foo) safe enough?
TODO: many other places to fix
2001-01-08 08:29:59 +00:00
itojun
df319c7c4c sh3 split 2001-01-04 09:22:06 +00:00
itojun
8bd2552493 sh3 split 2001-01-04 09:11:47 +00:00
itojun
8145e73c70 sh3 split 2001-01-04 08:59:24 +00:00
matt
c18fd403d1 Add __udiv_w_sdiv for VAX. gnupg requires it. And since it's a libgcc
function it makes sense to put it in libgcc.
2000-11-20 05:47:41 +00:00
msaitoh
8ca9f7f132 fix one of the two fixunsdfsi with fixunssfsi 2000-08-21 14:05:25 +00:00
msaitoh
e2509d0d3e add _fixunsdfsi.o and _fixunsdfsi.o when MACHINE_ARCH= sh3 or arm26 2000-08-17 00:28:07 +00:00
matt
3e50ef53a3 Add <stdlib.h> 2000-07-03 05:05:43 +00:00
matt
cb3d52d53a Define STDC_HEADERS so it uses mem* instead b* routines. 2000-07-03 05:05:25 +00:00
kristerw
f9d920a4e3 Added netbsdaout.c for i386 2000-05-20 20:30:48 +00:00
thorpej
11e15dda8b Oops, botched test for GCC 2.9. 2000-05-10 22:39:29 +00:00
thorpej
2b09e161ae Don't build compiler-related libraries if using GCC 2.9. 2000-05-09 06:23:40 +00:00
msaitoh
52b61c34d2 set MKLINKLIB = "no" only if ${MKPIC} != "no" 2000-03-27 19:15:32 +00:00
mycroft
2ced2ffc7d Make this at least pretend to work when cross-compiling. 2000-03-26 09:54:28 +00:00
shin
ac9896415f remove MIPS SOFTFLOAT. 2000-03-05 05:41:03 +00:00
matt
b9db4a8140 Add rudimentry VAX COFF support. enough so objdump, size, nm, etc. are happy
but no near enough for gas or ld.
2000-01-11 05:48:27 +00:00
msaitoh
bec61173c4 libbfd for NetBSD/sh3 1999-12-26 19:48:00 +00:00
eeh
b18e309569 Allow building of PIC or profiling libraries to be disabled. 1999-11-27 23:46:09 +00:00
wrstuden
6a4a304da0 Add rs6000coff_vec, which adds aixcoff-rs6000 support. Used with fixcoff. 1999-11-23 02:08:03 +00:00
takemura
cdabc2eb91 Hpcmips needs completely FPU instruction free user land.
XXX, this modification is kinda ad-hoc.
1999-09-29 13:19:13 +00:00
sommerfeld
65bfbb747a If target is BFD64, define -DBFD_TARG_64 on command line.
If BFD_TARG_64 is defined, set BFD_ARCH_SIZE to 64 even on 32-bit platforms.
(BFD_ARCH_SIZE is an attribute of the target, not (just) the host platform)

This is intended for building 32bit->64bit cross libbfd's (e.g.,
x86->alpha or x86->sparc64)
1999-08-01 04:25:39 +00:00
kristerw
9873bbaebf Don't define USE_MMP. Applications using libbfd assumes that the
memory is malloc:ed and tries to free() it...
1999-06-25 23:04:40 +00:00
kleink
5b44632935 Shuffle around vectors for ELF on m68k. 1999-04-30 14:41:38 +00:00
thorpej
6d2943920a Make it a tad bit easier to bootstrap an a.out system to ELF. Introduce
a BOOTSTRAP_ELF Makefile variable that, when set (e.g. in the environment),
builds a targeted-to-ELF toolchain without requiring OBJECT_FMT to be set
to "ELF" (which affects how e.g. libraries are built).

This basically means you don't need fake crtbegin.o and crtend.o files to
be present in /usr/lib while bootstrapping the toolchain.
1999-03-17 00:46:35 +00:00
ragge
87b768a236 DEFUALT_VEC -> DEFAULT_VEC. Thanks, Ken Wellsch. 1999-03-07 10:43:59 +00:00
tv
d793874bfe Turn off the mipselnetbsd a.out vector, for now. 1999-03-03 13:23:34 +00:00
tv
a3effc3cd4 We also want to read core files. (oops.) 1999-02-26 22:53:14 +00:00
drochner
7ccfa38c7a make this build after mips->mipse? transition 1999-02-24 17:18:26 +00:00
drochner
536eb455f4 ${MACHINE_ARCH} == "mips" loses anyway, so remove this case 1999-02-24 17:17:29 +00:00
lukem
868ca23db4 remove NOPROG (nothing uses it). however, set MKOBJ=no if appropriate 1999-02-13 23:53:56 +00:00
lukem
dcab0210a0 convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
1999-02-13 02:54:17 +00:00
tv
3e2114fabc Provide a definition of CPP for gen-params that works with DESTDIR. 1999-02-11 18:20:58 +00:00
tv
838e0a1db3 Add Texinfo doc. 1999-02-11 17:37:34 +00:00