Package: dpkg-dev Version: 1.14.16.6 Severity: minor Tags: patch The deb-shlibs(5) manpage is brief and not very helpful. I had to read through the source to dpkg-shlibdeps to figure out that yes, there was a comment syntax for these files.
I attach a suggested revision. It still defers to the Policy Manual for most of the details, but it clarifies the basic syntax and provides an example. -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 2.6.24-1-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages dpkg-dev depends on: ii binutils 2.18.1~cvs20080103-1 The GNU assembler, linker and bina ii bzip2 1.0.4-3 high-quality block-sorting file co ii cpio 2.9-11 GNU cpio -- a program to manage ar ii dpkg 1.14.16.6 package maintenance system for Deb ii libtimedate-perl 1.1600-9 Time and date functions for Perl ii lzma 4.43-12 Compression method of 7z format in ii make 3.81-3 The GNU version of the "make" util ii patch 2.5.9-4 Apply a diff file to an original ii perl [perl5] 5.8.8-12 Larry Wall's Practical Extraction ii perl-modules 5.8.8-12 Core Perl modules Versions of packages dpkg-dev recommends: ii build-essential 11.3 informational list of build-essent ii gcc [c-compiler] 4:4.2.2-2 The GNU C compiler ii gcc-3.4 [c-compiler] 3.4.6-6 The GNU C compiler ii gcc-4.2 [c-compiler] 4.2.3-1 The GNU C compiler ii gcc-4.3 [c-compiler] 4.3-20080202-1 The GNU C compiler -- no debconf information
--- deb-shlibs.5.orig 2008-02-16 14:39:31.000000000 -0500 +++ deb-shlibs.5 2008-02-16 14:36:46.000000000 -0500 @@ -17,14 +17,57 @@ .SH NAME deb\-shlibs \- Debian shared library information file . -.SH SYNOPSIS -shlibs -. .SH DESCRIPTION -The format for a shared library dependency information entry in these -files is (see the Debian Policy Manual for details): .PP -<library name> <version/soname> <dependencies> +.B shlibs +files map shared library names and versions +.RI ( sonames ) +to dependencies suitable for a package control file. There is one +entry per line. Blank lines are +.I not +allowed. Lines beginning with an +.I # +character are considered commentary, and are ignored. All other lines +must have the format +.IP +.RI [ tag: ] +.I library +.I version +.I dependencies +.PP +The +.I library +and +.I version +fields are whitespace-delimited, but the +.I dependencies +field extends to the end of the line. The +.I tag +field is optional and normally not needed. +.PP +See the Debian Policy Manual for further details. +. +.SH EXAMPLES +.PP +The +.B shlibs +file for a typical library package, named +.IR libcrunch1 , +that provides one library whose soname is +.IR libcrunch.so.1 , +might read +.IP +libcrunch 1 libcrunch1 (>= 1.2-1) +.PP +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 +.IR libcrunch . +This is not the only reason the dependencies might need to be +tightened; again, see the Debian Policy Manual for details. . .SH SEE ALSO -.BR dpkg\-shlibdeps (1). +.BR dpkg\-shlibdeps (1), +.BR deb\-symbols (5).

