[Bug 46417] New: Gabble shouldn't install an unversioned library to ${libdir}

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Feb 21 22:54:47 CET 2012


https://bugs.freedesktop.org/show_bug.cgi?id=46417

             Bug #: 46417
           Summary: Gabble shouldn't install an unversioned library to
                    ${libdir}
    Classification: Unclassified
           Product: Telepathy
           Version: git master
          Platform: Other
        OS/Version: All
            Status: ASSIGNED
          Severity: normal
          Priority: medium
         Component: gabble
        AssignedTo: simon.mcvittie at collabora.co.uk
        ReportedBy: simon.mcvittie at collabora.co.uk
         QAContact: telepathy-bugs at lists.freedesktop.org
                CC: jonny.lamb at collabora.co.uk,
                    olli.salli at collabora.co.uk,
                    siraj.razick at collabora.co.uk


W: telepathy-gabble: shlib-without-versioned-soname
usr/lib/libgabble-plugins.so libgabble-plugins.so
N: 
N:    The listed shared library in a public library directory has an SONAME
N:    that does not contain any versioning information, either after the .so
N:    or before it and set off by a hyphen. It cannot therefore be represented
N:    in the shlibs system, and if linked by binaries its interface cannot
N:    safely change. There is no backward-compatible way to migrate programs
N:    linked against it to a new ABI.
N:    
N:    Normally, this means the shared library is a private library for a
N:    particular application and is not meant for general use. Policy
N:    recommends that such libraries be installed in a subdirectory of
N:    /usr/lib rather than in a public shared library directory.

Lintian is right about this, and so is Debian Policy. We shouldn't be putting
an unstable library with no version information in the library search path.

When (if ever) the Gabble plugin interface is stable (prerequisite: Wocky is
stable), we can install it as a shared library with proper versioning. That day
is not today.

Options include:

* Make it shared only on platforms where it has to be shared for technical
  reasons (Windows, Android), and a static convenience library on
  sensible platforms

* Put it in a private directory (e.g. alongside the plugins)

* Give it a SONAME, but one that changes every release (i.e. change from
  -avoid-version to -release $(VERSION))

I've prepared a patch for the first of these, which I'll attach soon.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA Contact for the bug.



More information about the telepathy-bugs mailing list