diff --git a/ChangeLog b/ChangeLog index 421b86b995522e98f5349965c2ef9d94618a07a9..85ed2cae8b060df3c4c9810a9abb80fa8ed71252 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2000-11-22 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. + 2000-11-16 Fred Fish <fnf@be.com> * configure.in (enable_libstdcxx_v3): Fix typo, diff --git a/ltcf-cxx.sh b/ltcf-cxx.sh index cefa0085624a6868760c38c6a04d7032a9e50a2b..fbcf248faa7f5abb0f152d0d81d4d1ba9d031105 100644 --- a/ltcf-cxx.sh +++ b/ltcf-cxx.sh @@ -167,11 +167,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*) case "$cc_basename" in CC) diff --git a/ltconfig b/ltconfig index a79434264e437ec94f13544c56488e9c30032f4e..25d1c6479151e617beec2b0811f00816afad4d6b 100755 --- a/ltconfig +++ b/ltconfig @@ -1012,6 +1012,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-*)