[csw-maintainers] GAR: Checks for shared library names

Maciej (Matchek) Blizinski maciej at opencsw.org
Thu Oct 14 20:55:52 CEST 2010


I've just pushed a new change to checkpkg:

When it spots a set of sonames that look like good candidates for
splitting out, it prints out suggested GAR lines.  Here's output from
the analysis of CSWnspr:


 * Package CSWnspr contains shared libraries with sonames that don't have
   compatible versions: ['libnspr4.so', 'libplc4.so', 'libplds4.so'].  This
   means that they are best placed in own packages, with each package named
   after library name and version.

# Checkpkg suggests adding the following lines to the GAR recipe:
# This is a summary; see above for details.
# Suggesting how to separate out libnspr4.so
# You will most probably need to further edit these lines. Use with caution!
PACKAGES += CSWlibnspr4
CATALOGNAME_CSWlibnspr4 += libnspr4
PKGFILES_CSWlibnspr4 += /opt/csw/lib/libnspr4.so
PKGFILES_CSWlibnspr4 += /opt/csw/lib/libnspr4.so\.[0-9\.]+
RUNTIME_DEP_PKGS_CSWnspr += CSWlibnspr4

Out of the two lines with libnspr4.so, the first one is based on the
file name, and the latter is based on soname plus a version matching
regex.  It also suggests adding a dependency, to preserve the required
chain of dependencies if this is a modification of an already released
package.

As noted, this is to be used with caution; its purpose is to make it
easier to work with GAR builds, while still thinking about which lines
we put into the Makefiles and why.

Enjoy!

--Maciej


More information about the maintainers mailing list