inspect-library: Add support for consuming deb-symbols(5) files
(This branch includes !20 (merged))
The Steam Runtime is built using dpkg/apt, so we have this information
already for a lot of the shared libraries, for example in
/var/lib/dpkg/info/zlib1g:amd64.symbols
in a SDK container.
For those that we don't, such as libcurl3, we can generate a deb-symbols(5) file by either improving the packaging, or using for example
dpkg-gensymbols -q -v0 -plibcurl3 -e/usr/lib/x86_64-linux-gnu/libcurl.so.3 -I/dev/null -O
(although the output of such commands will require some postprocessing and common sense to filter out private symbols that are not meant to be part of the ABI).
Format reference: deb-symbols(5)
Edited by Simon McVittie