On Fri, 2007-06-22 at 17:25 -0700, Alan Coopersmith wrote:
> Laszlo (Laca) Peter wrote:
> > On Thu, 2007-06-21 at 13:53 -0700, Alan Coopersmith wrote:
> >> Can we state that libtool is highly not recommended and usually builds 
> >> worse
> >> libraries than other systems?    
> > 
> > Hmm... define 'worse libraries'.
> 
> It's insistence on overriding linker flags recommended by our linker
> experts has often annoyed me (so much that I use LD_OPTIONS to pass
> flags to ld behind libtool's back, so it can't overwrite them).

Oh yeah, that. (:
In JDS, we use a wrapper script around ld(1) and set LD to ld-wrapper
so that we can pass options to ld that libtool insists on dropping,
for example -z ignore.  Perhaps we should publish a guide for working
around libtool's "issues".

> >> Has this version of libtool at least fixed the "impossible to build a 
> >> 64-bit
> >> library correctly on Solaris" bugs?   (Would have to dig into my old Xorg
> >> builds to see if I could find all the ways I had to work around libtool's
> >> damage, but as I recall it was forcing use of the -64 flag, assuming you
> >> linked shared libaries with ld, not cc.)
> > 
> > Do you have more details of this bug?
> 
> This code it inserts into configure scripts to force linking 64-bit
> libraries with the -64 flag, which in turn forces use of ld instead
> of cc/CC to link, since cc/CC don't support -64:
> 
> sparc*-*solaris*)
>    # Find out which ABI we are using.
>    echo 'int i;' > conftest.$ac_ext
>    if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>    (eval $ac_compile) 2>&5
>    ac_status=$?
>    echo "$as_me:$LINENO: \$? = $ac_status" >&5
>    (exit $ac_status); }; then
>      case `/usr/bin/file conftest.o` in
>      *64-bit*)
>        case $lt_cv_prog_gnu_ld in
>        yes*) LD="${LD-ld} -m elf64_sparc" ;;
>        *)    LD="${LD-ld} -64" ;;
>        esac
>        ;;
>      esac
>    fi
>    rm -rf conftest*
>    ;;
> 
> It's in /opt/jdsbld/share/aclocal/libtool.m4 on a system with
> JDS CBE 1.5.1 installed - haven't checked in 1.6.

It's still there.  I never noticed this because we use ld for
linking anyway.

Thanks,
Laca



Reply via email to