libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: libtool patches for FreeBSD configuration (found while tuning libstd


From: Loren James Rittle
Subject: Re: libtool patches for FreeBSD configuration (found while tuning libstdc++-v3 for this platform)
Date: Tue, 21 Nov 2000 18:33:48 -0600 (CST)
User-agent: SEMI/1.13.7 (Awazu) FLIM/1.13.2 (Kasanui) Emacs/20.5 (i386-unknown-freebsdelf3.2) MULE/4.0 (HANANOEN)

In article <address@hidden>,
Alexandre Oliva <address@hidden> writes:

> The patches look ok to me.  But I'm curious.  Do you have any reason
> to believe the same set-up wouldn't work on FreeBSD 2?

I don't have enough direct knowledge or a machine to test to know
either way for sure.  I figured I would be conservative in my change.
AFAIK, the main issue is that anything before FreeBSD 3.0 is not ELF
and a.out, C++ and (SunOS-style) shared libraries didn't mix well on
FreeBSD.  I have included an update of the patch with a better comment.

I also note that FreeBSD uses collect2 (even though I explicitly told
gcc's configure that we have GNU ld), thus I'm concerned that I'm not
yet handling the issue raised here:

http://gcc.gnu.org/ml/gcc-patches/2000-11/msg00689.html

In article <address@hidden>,
Benjamin Kosnik <address@hidden> writes:

> Ping. This patch is not i[n], and it looks fine to me. What's the status?

> http://gcc.gnu.org/ml/libstdc++/2000-11/msg00225.html

Here is the status since I posted the message with the patch:

Now tested on these hosts:

i386-unknown-freebsd3.4
i686-unknown-freebsd3.4
i386-unknown-freebsd4.2
i386-unknown-freebsd5.0

Thanks,
Loren

2000-11-21  Loren J. Rittle  <address@hidden>

        * 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.

Index: ltcf-cxx.sh
===================================================================
RCS file: /cvs/gcc/egcs/ltcf-cxx.sh,v
retrieving revision 1.5
diff -c -r1.5 ltcf-cxx.sh
*** ltcf-cxx.sh 2000/11/09 21:41:11     1.5
--- ltcf-cxx.sh 2000/11/22 00:32:15
***************
*** 167,176 ****
          ;;
      esac
      ;;
!   freebsd*)
!     # FreeBSD uses GNU C++ and GNU ld
!     # FIXME: insert proper C++ library support
      ld_shlibs=no
      ;;
    hpux*)
      case "$cc_basename" in
--- 167,179 ----
          ;;
      esac
      ;;
!   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
Index: ltconfig
===================================================================
RCS file: /cvs/gcc/egcs/ltconfig,v
retrieving revision 1.11
diff -c -r1.11 ltconfig
*** ltconfig    2000/11/09 21:41:11     1.11
--- ltconfig    2000/11/22 00:32:16
***************
*** 1012,1017 ****
--- 1012,1018 ----
      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-*)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]