config.gcc (*-*-freebsd*): Enable creation of libgcc_s.so.

* config.gcc (*-*-freebsd*): Enable creation of libgcc_s.so.
	* config/t-slibgcc-elf-ver (SHLIB_LC): Add macro and use it.
	No functional change except ...
	* config/t-slibgcc-nolc-override (SHLIB_LC): Override it.  New file.
	* doc/install.texi (*-*-freebsd*): Document port configuration.

From-SVN: r51574
This commit is contained in:
Loren J. Rittle 2002-03-29 22:01:18 +00:00 committed by Loren J. Rittle
parent bce54832de
commit bc3a44dbca
5 changed files with 20 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2002-03-29 Loren J. Rittle <ljrittle@acm.org>
* config.gcc (*-*-freebsd*): Enable creation of libgcc_s.so.
* config/t-slibgcc-elf-ver (SHLIB_LC): Add macro and use it.
No functional change except ...
* config/t-slibgcc-nolc-override (SHLIB_LC): Override it. New file.
* doc/install.texi (*-*-freebsd*): Document port configuration.
2002-03-29 Neil Booth <neil@daikokuya.demon.co.uk>
* Makefile.in (convert.o, calls.o, expmed.o): Update.

View File

@ -363,7 +363,7 @@ case $machine in
*-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
*) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
esac
tmake_file=t-freebsd
tmake_file="t-slibgcc-elf-ver t-freebsd"
xmake_file=none
xm_defines=POSIX
case x${enable_threads} in
@ -371,6 +371,12 @@ case $machine in
x | xyes | xpthreads | xposix)
thread_file='posix'
tmake_file="${tmake_file} t-freebsd-thread"
# Before 5.0, FreeBSD can't bind shared libraries to -lc
# when "optionally" threaded via weak pthread_* checks.
case $machine in
*-*-freebsd[34] | *-*-freebsd[34].*)
tmake_file="${tmake_file} t-slibgcc-nolc-override";;
esac
;;
*) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
esac

View File

@ -6,11 +6,12 @@ SHLIB_NAME = @shlib_base_name@.so
SHLIB_SONAME = @shlib_base_name@.so.1
SHLIB_MAP = @shlib_map_file@
SHLIB_OBJS = @shlib_objs@
SHLIB_LC = -lc
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-Wl,--soname=$(SHLIB_SONAME) \
-Wl,--version-script=$(SHLIB_MAP) \
-o $(SHLIB_NAME) @multilib_flags@ $(SHLIB_OBJS) -lc && \
-o $(SHLIB_NAME) @multilib_flags@ $(SHLIB_OBJS) $(SHLIB_LC) && \
rm -f $(SHLIB_SONAME) && \
$(LN_S) $(SHLIB_NAME) $(SHLIB_SONAME)
# $(slibdir) double quoted to protect it from expansion while building

View File

@ -0,0 +1 @@
SHLIB_LC =

View File

@ -2079,6 +2079,8 @@ should properly complete the bootstrap). Other CPU architectures
supported by FreeBSD will require additional configuration tuning in, at
the very least, both boehm-gc and libffi.
Shared @file{libgcc_s.so} is now built and installed by default.
@html
</p>
<hr>