deb-symbols(5) | dpkg suite | deb-symbols(5) |
deb-symbols - Debian's extended shared library information file
DEBIAN/symbols
The symbol files are shipped in Debian binary packages, and its format is a subset of the template symbol files used by dpkg-gensymbols(1) in Debian source packages, see deb-src-symbols(5).
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 column is separated by exactly a single whitespace.
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:
libftp.so.3 libftp3 #MINVER# DefaultNetbuf@Base 3.1-1-6 FtpAccess@Base 3.1-1-6 [...]
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 [...]
<https://wiki.debian.org/Projects/ImprovedDpkgShlibdeps>, deb-src-symbols(5), dpkg-shlibdeps(1), dpkg-gensymbols(1).
2024-09-26 | 1.22.6 |