Bug#893934: openssh-client: Potentially unintended dependency on libbsd
Sven Joachim
svenjoac at gmx.de
Sat Jun 2 07:32:27 BST 2018
On 2018-04-20 01:24 +0200, Guillem Jover wrote:
> On Tue, 2018-04-03 at 12:39:54 +0100, Colin Watson wrote:
>> Control: reassign -1 libedit-dev 3.1-20170329-1
>>
>> On Sat, Mar 24, 2018 at 02:37:57AM +0100, Guillem Jover wrote:
>> > I just noticed that the latest version of this package depends on
>> > libbsd0, which at first thought it was nice given my previous bug
>> > request :), but then realized it was probably unintended when I
>> > checked the actual sources. Here's the reasons why:
>> >
>> > * Build-Depends on libedit-dev, which pulls in libbsd-dev.
>> > * configure.ac uses AC_CHECK_LIB instead of AC_SEARCH_LIBS to
>> > check for daemon(), which detects daemon() from glibc and
>> > concludes that libsd is needed.
>
>> Nope. The check you mention is in the false branch of an
>> AC_CHECK_FUNC([daemon], ...), so isn't run because we detect glibc's
>> version first.
>
> Argh! Sorry, you are right, should have stared at the code a bit
> longer. :)
>
>> The actual reason is:
>>
>> $ pkg-config --libs libedit
>> -ledit -lncurses -lbsd
>>
>> Maybe -lbsd should be moved to Libs.private? But I don't know the
>> libedit interface in detail, and in any case this is up to the libedit
>> maintainers, so reassigning.
>
> I think so, yes. This seems like an actual regression from upstream,
> because the patch to switch it to use libbsd which I sent and got
> carried for a while in Debian was using Requires.private.
In version 3.1-20180525 -lbsd (and -lncurses) was moved back to
Libs.private, and openssh-client no longer depends on libbsd0 when I
rebuild it.
However, is linking libedit with -lbsd necessary at all on a recent
glibc version? At least dpkg-shlibdeps warns that libedit does not use
any of libbsd's symbols.
Cheers,
Sven
More information about the Pkg-llvm-team
mailing list