Subject: CVS commit: src
To: None <source-changes@NetBSD.org>
From: Nick Hudson <skrll@netbsd.org>
List: source-changes
Date: 02/15/2004 19:52:27
Module Name:	src
Committed By:	skrll
Date:		Sun Feb 15 19:52:27 UTC 2004

Modified Files:
	src: Makefile
	src/distrib/sets/lists/comp: gcc.shl
	src/gnu/dist/gcc/gcc: gcc.c
	src/gnu/dist/gcc/gcc/config: netbsd.h
	src/gnu/lib/libgcc3: Makefile
	src/gnu/lib/libobjc3: Makefile
	src/gnu/usr.bin/gcc3: Makefile.inc
	src/share/mk: bsd.lib.mk bsd.prog.mk
	src/tools: Makefile.gnuhost
	src/tools/gcc: Makefile
Added Files:
	src/gnu/lib/libgcc3: Makefile.inc
	src/gnu/lib/libgcc3/libgcc: Makefile
	src/gnu/lib/libgcc3/libgcc_eh: Makefile
	src/gnu/lib/libgcc3/libgcc_s: Makefile

Log Message:
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.


To generate a diff of this commit:
cvs rdiff -r1.230 -r1.231 src/Makefile
cvs rdiff -r1.5 -r1.6 src/distrib/sets/lists/comp/gcc.shl
cvs rdiff -r1.6 -r1.7 src/gnu/dist/gcc/gcc/gcc.c
cvs rdiff -r1.5 -r1.6 src/gnu/dist/gcc/gcc/config/netbsd.h
cvs rdiff -r1.21 -r1.22 src/gnu/lib/libgcc3/Makefile
cvs rdiff -r0 -r1.1 src/gnu/lib/libgcc3/Makefile.inc
cvs rdiff -r0 -r1.1 src/gnu/lib/libgcc3/libgcc/Makefile
cvs rdiff -r0 -r1.1 src/gnu/lib/libgcc3/libgcc_eh/Makefile
cvs rdiff -r0 -r1.1 src/gnu/lib/libgcc3/libgcc_s/Makefile
cvs rdiff -r1.9 -r1.10 src/gnu/lib/libobjc3/Makefile
cvs rdiff -r1.2 -r1.3 src/gnu/usr.bin/gcc3/Makefile.inc
cvs rdiff -r1.248 -r1.249 src/share/mk/bsd.lib.mk
cvs rdiff -r1.197 -r1.198 src/share/mk/bsd.prog.mk
cvs rdiff -r1.24 -r1.25 src/tools/Makefile.gnuhost
cvs rdiff -r1.12 -r1.13 src/tools/gcc/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.