[pacman-dev] implement .so dependencies?

Allan McRae allan at archlinux.org
Wed Feb 10 01:08:37 EST 2010


On 05/02/10 01:38, Thomas Bächler wrote:
> Am 04.02.2010 15:32, schrieb Allan McRae:
>> 3) I would like the sodeps to be listed like (e.g) "libreadline.so".
>> This makes the dependency named closer to what is actually is.  Makepkg
>> could recognize the ".so" at the end and use readelf on the binaries and
>> automatically add the relevant version.  The "soname-arch" type prefix
>> is ugly.  "soname" is covered by the ".so" and multi-lib stuff is not
>> really as critical so "arch" is not really needed either.
>
> I disagree in the "arch" part. It might not be as important now, but in
> the future it could cause problems if we end up havnig multiple
> architecture libraries in one system (and ultimately I want to make that
> possible, if I ever get to it). If we could agree on this scheme:
>
> soprovides=(libreadline.so)
> would generate
> provides=("${provides[@]}" libreadline.so-x86_64=6)
>
> Then the "weak -d" flag could ignore the =6 version above and we still
> have everything we would need for matching so-names.

OK.  I will concede the need for the arch part then.  But it needs some 
changing.  As I said before, I would prefer soprovides detected by 
ending in ".so" in the provides array and I do not really like entries 
in the provides array automatically changing apart from versioning.  So...

provides=(foobar libfoo.so)

would result in

provides = foobar
provides = libfoo.so=6-x86_64   (does that order look right...?)

in the .PKGINFO file.

I am fairly sure that pacman can handle two packages providing different 
versions of libfoo.so but that needs checked.

A patch that did this would be very acceptable to me.

Allan


More information about the pacman-dev mailing list