libpri1, libpri1.2, SONAMES etc.
Faidon Liambotis
paravoid at debian.org
Sun Jul 22 05:00:32 UTC 2007
Hello,
I'm having a look at the libpri mess that upstream created and
unfortunately got to Debian.
--
PLEASE DO NOT UPLOAD A NEW libpri TO Debian BEFORE DISCUSSING THIS.
It will only make the mess worse.
--
As I understand it, libpri 1.2 is _not_ API/ABI compatible with 1.4.
IOW, Asterisk 1.4 doesn't work with libpri 1.2 and Asterisk 1.2 doesn't
work with libpri 1.4. Correct me if I'm wrong.
I see that now you (Kilian, mostly?) are trying to fix this mess by
renaming the 1.4 package again.
Some initial notes:
You've named the 1.4 package libpri1. lintian produces a warning about
this and is right. The SONAME is 1.0, not 1. The package should be named
libpri1.0.
Even better would be to do upstream's job and SONAME version the libraries.
So,
libpri 1.4:
SONAME: 1.4
-dev package name: libpri1.4-dev
i.e. contains: /usr/lib/libpri.1.4
libpri 1.2:
package name: libpri1.2
-dev package name: libpri1.2-dev
SONAME: 1.2
i.e. contains: /usr/lib/libpri.1.2
The binary packages must not containt a /usr/lib/libpri.so.1 or
/usr/lib/libpri.so soft-link. The -dev can contain those.
Hence, they MUST NOT CONFLICT each other.
That's the standard practice (and for a good reason) for shared
libraries in Debian.
The -dev package for 1.4 must have a Conflicts:/Replaces: however,
beacuse of conflicting files.
The binary packages
Asterisk 1.4:
Build-Depends: libpri1.4-dev
Depends: libpri1.4
Asterisk 1.2
Build-Depends: libpri1.2-dev
Depends: libpri1.2
I think that's the ideal solution, and is safe for all future versions
(1.6) of Asterisk and perhaps other users of libpri (what about callweaver).
Comments, thoughts?
Regards,
Faidon
More information about the Pkg-voip-maintainers
mailing list