summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorljrittle <ljrittle@138bc75d-0d04-0410-961f-82ee72b054a4>2001-04-11 05:25:00 +0000
committerljrittle <ljrittle@138bc75d-0d04-0410-961f-82ee72b054a4>2001-04-11 05:25:00 +0000
commit6a9657369b78b9fed1152af6937e4fc0a360d395 (patch)
tree7e166152603047eabd9e2f4e7b50afbc37176914
parent4ae4fb0d8753c29c8cdddecb9b01b9eb4139e0fc (diff)
downloadgcc-6a9657369b78b9fed1152af6937e4fc0a360d395.tar.gz
2001-04-10 Loren J. Rittle <ljrittle@acm.org>
* ltcf-cxx.sh: Support creation of C++ shared libraries on recent versions of FreeBSD (release 3 or later). * ltconfig: On FreeBSD, -lc must not be provided when building a shared library or else the standard -pthread gcc option is rendered worthless to later users of the built library. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41237 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--ChangeLog8
-rw-r--r--ltcf-cxx.sh10
-rwxr-xr-xltconfig1
3 files changed, 16 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index b9dafdc0d9c..df4e6ca6af5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2001-04-10 Loren J. Rittle <ljrittle@acm.org>
+
+ * ltcf-cxx.sh: Support creation of C++ shared libraries on
+ recent versions of FreeBSD (release 3 or later).
+ * ltconfig: On FreeBSD, -lc must not be provided when building
+ a shared library or else the standard -pthread gcc option is
+ rendered worthless to later users of the built library.
+
2001-04-06 Joseph S. Myers <jsm28@cam.ac.uk>
* MAINTAINERS: Add self and RTH as C front end maintainers.
diff --git a/ltcf-cxx.sh b/ltcf-cxx.sh
index c399d34c9dc..a5f089be04f 100644
--- a/ltcf-cxx.sh
+++ b/ltcf-cxx.sh
@@ -233,11 +233,15 @@ case $host_os in
;;
esac
;;
- freebsd*)
- # FreeBSD uses GNU C++ and GNU ld
- # FIXME: insert proper C++ library support
+ freebsd[12]*)
+ # C++ shared libraries reported to be fairly broken before switch to ELF
ld_shlibs=no
;;
+ freebsd*)
+ # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
+ # conventions
+ ld_shlibs=yes
+ ;;
hpux*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
diff --git a/ltconfig b/ltconfig
index 739e6529ded..423e47bae0c 100755
--- a/ltconfig
+++ b/ltconfig
@@ -1108,6 +1108,7 @@ freebsd*)
freebsd-elf*)
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
need_version=no
+ need_lc=no
need_lib_prefix=no
;;
freebsd-*)