I had been under the impression that Debian had a written policy of respecting upstream choices for sonames, when possible, but when I checked today, I couldn't find it in the policy manual. (I believe it would go in section 3.3.3.)
I think that this is an unwritten policy of Debian (I have been told that it is a policy of Red Hat). I'd like to see it in the policy manual: "Shared libraries should use the upstream soname, when possible." The purpose of this is to maintain compatibility between distributions. (Here, by "when possible", I mean: when it doesn't cause a conflict with another library or an incompatible version of the same library.) On a similar point, it would also be nice to have a policy about interlibrary references, namely: "If a shared library calls functions in another library, then it should be explicitly reference the other library. (This is done with the "-l" option when the library is created.)" The purpose of this is to improve the stability of programs. It makes it much easier to detect mismatched libraries both at link time and runtime. (It is particularly useful at detecting link-time problems.) Debian, in general does a very good job of adhering to both of these rules. In particular, adherence to the second rule, in combination with the packaging system, has saved Debian from a lot of the headaches that Red Hat is having with their gnome packages. (Lots of library mismatch problems - some occuring undetected at runtime.) Nonetheless, it would be nice to have them set down in the policy manual. (BTW, libjpeg6b_6b-1 has the wrong soname.) Steve [EMAIL PROTECTED] (CC: me or debian-devel, if you want me to read the response.)