diff --git a/ChangeLog b/ChangeLog index b9dafdc0d9c..df4e6ca6af5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2001-04-10 Loren J. Rittle + + * 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 * 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-*)