Mailinglist Archive: opensuse-packaging (68 mails)
| < Previous | Next > |
Re: [opensuse-packaging] .la files and dependencies, again
- From: Michael Matz <matz@xxxxxxx>
- Date: Mon, 26 Feb 2007 17:23:18 +0100 (CET)
- Message-id: <Pine.LNX.4.64.0702261716260.25448@xxxxxxxxxxxxx>
Hi,
On Mon, 26 Feb 2007, andreas.hanke@xxxxxxxxxxxxxx wrote:
> Unfortunately it doesn't actually work because nowadays, pango
> integrates with cairo and cairo.la has /usr/lib/libfreetype.la in its
> dependency_libs line. The result is very sad:
>
> # ldd -u -r /usr/bin/* 2>/dev/null | grep libfreetype\\.so\\.6 | wc -l
> 200
>
> 200 executables that possibly break if freetype breaks ABI although they
> don't have to.
While I agree with many of your points, this argumentation is flawed. If
libabc is not directly used (i.e. in the deplist without a relocation into
it) then any API change in libabc can't break the application. If it can
break the application then by definition it's not unused. Additionally,
if it breaks the API, then probably some of the libraries directly
depending on it, which are used by the application (otherwise the useless
dep wouldn't exist), will break too. That breakage will occur no matter
if the useless deps are removed or not.
Hence: removing the useless deps will not magically make API breakages go
away.
Ciao,
Michael.
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-packaging+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-packaging+help@xxxxxxxxxxxx
On Mon, 26 Feb 2007, andreas.hanke@xxxxxxxxxxxxxx wrote:
> Unfortunately it doesn't actually work because nowadays, pango
> integrates with cairo and cairo.la has /usr/lib/libfreetype.la in its
> dependency_libs line. The result is very sad:
>
> # ldd -u -r /usr/bin/* 2>/dev/null | grep libfreetype\\.so\\.6 | wc -l
> 200
>
> 200 executables that possibly break if freetype breaks ABI although they
> don't have to.
While I agree with many of your points, this argumentation is flawed. If
libabc is not directly used (i.e. in the deplist without a relocation into
it) then any API change in libabc can't break the application. If it can
break the application then by definition it's not unused. Additionally,
if it breaks the API, then probably some of the libraries directly
depending on it, which are used by the application (otherwise the useless
dep wouldn't exist), will break too. That breakage will occur no matter
if the useless deps are removed or not.
Hence: removing the useless deps will not magically make API breakages go
away.
Ciao,
Michael.
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-packaging+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-packaging+help@xxxxxxxxxxxx
| < Previous | Next > |