diff options
Diffstat (limited to 'man/deb-shlibs.pod')
-rw-r--r-- | man/deb-shlibs.pod | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/man/deb-shlibs.pod b/man/deb-shlibs.pod new file mode 100644 index 0000000..3bc9ae5 --- /dev/null +++ b/man/deb-shlibs.pod @@ -0,0 +1,111 @@ +# dpkg manual page - deb-shlibs(5) +# +# Copyright © 1996 Michael Shields <shields@crosslink.net> +# Copyright © 2008 Zack Weinberg <zackw@panix.com> +# +# This is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <https://www.gnu.org/licenses/>. + +=encoding utf8 + +=head1 NAME + +deb-shlibs - Debian shared library information file + +=head1 SYNOPSIS + +B<debian/shlibs>, B<debian/>I<binary-name>B<.shlibs>, B<DEBIAN/shlibs> + +=head1 DESCRIPTION + +B<shlibs> +files map shared library names and versions +(I<SONAMEs>) +to dependencies suitable for a package control file. +There is one entry per line. +Blank lines are B<not> allowed. +Lines beginning +with a B<#> character are considered commentary, and are ignored. +All other lines must have the format: + +=over + +[I<type>B<:>] +I<library> +I<version> +I<dependencies> + +=back + +The I<library> and I<version> fields are whitespace-delimited, +but the I<dependencies> field extends to the end of the line. +The +I<type> field is optional and normally not needed. + +The I<dependencies> field has the same syntax as the B<Depends> +field in a binary control file, see L<deb-control(5)>. + +=head1 SONAME FORMATS + +The SONAME formats supported are: + +=over + +I<name>.so.I<version> + +=back + +and + +=over + +I<name>-I<version>.so + +=back + +where I<name> is usually prefixed by B<lib>. + +The former tends to be used by shared libraries with stable interfaces. +The latter by shared libraries with unstable interfaces, where the whole +version becomes part of the SONAME and needs to be specified in full +when linking against those libraries. + +=head1 EXAMPLES + +The +B<shlibs> +file for a typical library package, named +I<libcrunch1>, +that provides one library whose SONAME is +I<libcrunch.so.1>, +might read + +=over + + libcrunch 1 libcrunch1 (>= 1.2-1) + +=back + +The I<dependencies> +must mention the most recent version of the package that added new +symbols to the library: in the above example, new symbols were added to +version 1.2 of +I<libcrunch>. +This is not the only reason the dependencies might need to be +tightened. + +=head1 SEE ALSO + +L<deb-control(5)>, +L<deb-symbols(5)>, +L<dpkg-shlibdeps(1)>. |