deb-symbols

Section: dpkg utilities (5)
Updated: 2011-08-14
Index Return to Main Contents
 

NAME

deb-symbols - Debian's extended shared library information file  

SYNOPSIS

symbols  

DESCRIPTION

The format for an extended shared library dependency information entry in these files is:

library-soname main-dependency-template
[| alternative-dependency-template]
[...]
[* field-name: field-value]
[...]
 symbol minimal-version [id-of-dependency-template]

The library-soname is exactly the value of the SONAME field as exported by objdump(1). A dependency-template is a dependency where #MINVER# is dynamically replaced either by a version check like "(>= minimal-version)" or by nothing (if an unversioned dependency is deemed sufficient).

Each exported symbol (listed as name@version, with version being "Base" if the library is not versioned) is associated to a minimal-version of its dependency template (the main dependency template is always used and will end up being combined with the dependency template referenced by id-of-dependency-template if present). The first alternative dependency template is numbered 1, the second one 2, etc.

Each entry for a library can also have some fields of meta-information. Those fields are stored on lines starting with an asterisk. Currently, the only valid fields are:

Build-Depends-Package
It indicates the name of the "-dev" package associated to the library and is used by dpkg-shlibdeps to make sure that the dependency generated is at least as strict as the corresponding build dependency.
Ignore-Blacklist-Groups
It indicates what blacklist groups should be ignored, as a whitespace separated list, so that the symbols contained in those groups get included in the output file. This should only be necessary for toolchain packages providing those blacklisted symbols. The available groups are system dependent, for ELF and GNU-based systems these are aeabi and gomp.
 

EXAMPLES

 

Simple symbols file

libftp.so.3 libftp3 #MINVER#
 DefaultNetbuf@Base 3.1-1-6
 FtpAccess@Base 3.1-1-6
 [...]  

Advanced symbols file

libGL.so.1 libgl1
| libgl1-mesa-glx #MINVER#
* Build-Depends-Package: libgl1-mesa-dev
 publicGlSymbol@Base 6.3-1
 [...]
 implementationSpecificSymbol@Base 6.5.2-7 1
 [...]  

SEE ALSO

https://wiki.debian.org/Projects/ImprovedDpkgShlibdeps
dpkg-shlibdeps(1), dpkg-gensymbols(1).


 

Index

NAME
SYNOPSIS
DESCRIPTION
EXAMPLES
Simple symbols file
Advanced symbols file
SEE ALSO