Commit bc3a44db by Loren J. Rittle Committed by Loren J. Rittle

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
parent bce54832
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> 2002-03-29 Neil Booth <neil@daikokuya.demon.co.uk>
* Makefile.in (convert.o, calls.o, expmed.o): Update. * Makefile.in (convert.o, calls.o, expmed.o): Update.
......
...@@ -363,7 +363,7 @@ case $machine in ...@@ -363,7 +363,7 @@ case $machine in
*-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";; *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
*) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;; *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
esac esac
tmake_file=t-freebsd tmake_file="t-slibgcc-elf-ver t-freebsd"
xmake_file=none xmake_file=none
xm_defines=POSIX xm_defines=POSIX
case x${enable_threads} in case x${enable_threads} in
...@@ -371,6 +371,12 @@ case $machine in ...@@ -371,6 +371,12 @@ case $machine in
x | xyes | xpthreads | xposix) x | xyes | xpthreads | xposix)
thread_file='posix' thread_file='posix'
tmake_file="${tmake_file} t-freebsd-thread" 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;; *) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
esac esac
......
...@@ -6,11 +6,12 @@ SHLIB_NAME = @shlib_base_name@.so ...@@ -6,11 +6,12 @@ SHLIB_NAME = @shlib_base_name@.so
SHLIB_SONAME = @shlib_base_name@.so.1 SHLIB_SONAME = @shlib_base_name@.so.1
SHLIB_MAP = @shlib_map_file@ SHLIB_MAP = @shlib_map_file@
SHLIB_OBJS = @shlib_objs@ SHLIB_OBJS = @shlib_objs@
SHLIB_LC = -lc
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-Wl,--soname=$(SHLIB_SONAME) \ -Wl,--soname=$(SHLIB_SONAME) \
-Wl,--version-script=$(SHLIB_MAP) \ -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) && \ rm -f $(SHLIB_SONAME) && \
$(LN_S) $(SHLIB_NAME) $(SHLIB_SONAME) $(LN_S) $(SHLIB_NAME) $(SHLIB_SONAME)
# $(slibdir) double quoted to protect it from expansion while building # $(slibdir) double quoted to protect it from expansion while building
......
...@@ -2079,6 +2079,8 @@ should properly complete the bootstrap). Other CPU architectures ...@@ -2079,6 +2079,8 @@ should properly complete the bootstrap). Other CPU architectures
supported by FreeBSD will require additional configuration tuning in, at supported by FreeBSD will require additional configuration tuning in, at
the very least, both boehm-gc and libffi. the very least, both boehm-gc and libffi.
Shared @file{libgcc_s.so} is now built and installed by default.
@html @html
</p> </p>
<hr> <hr>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment