Discussion:
Bug#945973: Please add symbols files for improved shlibs dependencies
Add Reply
Michael Biebl
2019-12-01 23:50:01 UTC
Reply
Permalink
Source: pcre2
Version: 10.34-1
Severity: wishlist
Tags: patch

Hi,

please consider applying the attached patch which adds symbols files for
the libraries shipped in src:pcre2

See man dpkg-gensymbols(1), man deb-symbols(5),
https://wiki.debian.org/Projects/ImprovedDpkgShlibdeps

Thanks for considering,
Michael

-- System Information:
Debian Release: bullseye/sid
APT prefers unstable
APT policy: (500, 'unstable'), (200, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.3.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Matthew Vernon
2019-12-02 10:10:02 UTC
Reply
Permalink
Hi,
Post by Michael Biebl
please consider applying the attached patch which adds symbols files for
the libraries shipped in src:pcre2
I'm afraid I'm very reluctant to do this. Maintaining the symbols files
for pcre3 is a complete nightmare - every gcc change results in FTBFS
bugs, and the process for updating the symbols file is pretty opaque. I
really don't want to go there again.

Regards,

Matthew
Michael Biebl
2019-12-02 10:30:01 UTC
Reply
Permalink
Post by Matthew Vernon
I'm afraid I'm very reluctant to do this. Maintaining the symbols files
for pcre3 is a complete nightmare - every gcc change results in FTBFS
So, I had a quick look at pcre3 and I think the problem you are running
into is, that pcre3 builds a C++ library (libcprecpp0v5)
Maintaining a symbols file for a C++ ABI is indeed painful, but a C ABI
only like exposed by pcre2 is a breeze in comparison.

I use symbols files for all my (C) libraries for many years now and
never really ran into any issues.

Michael
--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
Michael Biebl
2019-12-02 15:00:01 UTC
Reply
Permalink
Hi Matthew,

since I wanted to provide symbols files with minimal versions,
I built 10.22-3 from stretch and used that as a base (10.22.diff),
updated to buster (10.32.diff) and finally upgrade to sid (10.34.diff).

The improved symbols files are attached as
0001-Add-symbols-files-for-impoved-shlibs-dependencies.patch

The required work was minimal and what I did find was
- between stretch and buster, the soname of
libpcre2-posix0 changed. This probably went unnoticed.
The binary package name should reflect the soname of the library, so
strictly speaking it was already wrong in stretch.

- between 10.32 and 10.34 the custom Debian defines were dropped. Most
likely and oversight. But this went unnoticed as well.

Maybe this additional information convinces you to ship symbols files
for pcre2 as such obvious mistakes would have been caught automatically.

Regards,
Michael
--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
Matthew Vernon
2019-12-03 20:30:02 UTC
Reply
Permalink
Hi,

Thanks for your work on this; I am persuaded, and an upload has just
been made with symbols files in. Hopefully I will not regret this...

Regards,

Matthew

Loading...