Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Oct 2004 17:55:37 -0700
From:      Peter Wemm <peter@wemm.org>
To:        "Andrey A. Chernov" <ache@FreeBSD.org>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/gnu/lib/libreadline/readline Makefile
Message-ID:  <200410181755.37423.peter@wemm.org>
In-Reply-To: <200410180836.i9I8afRS060144@repoman.freebsd.org>
References:  <200410180836.i9I8afRS060144@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday 18 October 2004 01:36 am, Andrey A. Chernov wrote:
> ache        2004-10-18 08:36:40 UTC
>
>   FreeBSD src repository
>
>   Modified files:
>     gnu/lib/libreadline/readline Makefile
>   Log:
>   Back out termcap -> ncurses change in LDADD/DPADD
>   It expand functions scope too wide

No.  This is wrong, and a NOP change.  Please back this out.

The reason why is because libtermcap.so is a symlink to libncurses.  And 
libncurses has a DT_SONAME of "libncurses.so.5".  This means 

peter@daintree[5:51pm]~-25> objdump --all-headers /usr/lib/libtermcap.so 
| grep SONAME
  SONAME      libncurses.so.5

Any dependencies will be silently "fixed" by ld, so no matter what, you 
end up with a DT_NEEDED of libncurses.so.5.  Except that by using the 
wrong name, you obfuscate things.

peter@daintree[5:53pm]~-30> cc -o x x.c -ltermcap
peter@daintree[5:53pm]~-31> objdump --all-headers x | grep NEED
  NEEDED      libncurses.so.5
  NEEDED      libc.so.5
peter@daintree[5:53pm]~-32> cc -shared -o x.so x.c -ltermcap
peter@daintree[5:53pm]~-33> objdump --all-headers x.so | grep NEED
  NEEDED      libncurses.so.5

-- 
Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200410181755.37423.peter>