Mailinglist Archive: opensuse-factory (824 mails)

< Previous Next >
Re: [opensuse-factory] Package naming conventions
On Fri, 2017-10-27 at 11:55 +0200, Roger Oberholtzer wrote:
I am going to follow up on the ABI version number stuff in proj. I do
know that is how this works. I am a software developer. I am checking
with the proj people to see how they are tracking the ABI
compatibility. For as long as I have used proj, I do not recall
seeing
this number reported. Since I link against -lproj, my Makefiles just
reference the current development RPM that is installed.

This is all correct... -lproj references to libproj.so and it is the
-devel package providing this. In turn, it is a symlink on the
libproj.so.12 (current version); as long as your API is safe, anything
linking -lproj will automatically link libproj.so.12 (on a runtime
system, you don't need libproj.so - when you inspect your target
binaries, they all use libproj.so.12)

I didn't mention that there is also a libproj0 on OBS. I don't think
that is ABI version 0. Maybe it is before proj defined ABI version
numbers...

IT starts counting at 0; so that is indeed just 'the starting point'

Perhaps one should use a label like ABIversion in the spec file. Then
it is more obvious that this is where the number is from. There is no
guarantee that everyone setting this number is doing so for the same
reason.

A lot of spec files use %define sover 0; but it does not change
anything practiclaly speaking. there is also rpmlint checking that the
number picked matches what the library claims it to be. Those numbers
are really not picked by random by packagers.

Cheers,
Dominique
< Previous Next >
Follow Ups