Hello, On Mon, Mar 06, 2017 at 01:51:58PM +0100, Andreas Beckmann wrote: > Source: quagga > Version: 1.1.1-1 > Severity: serious > User: debian...@lists.debian.org > Usertags: piuparts > > Hi, > > during a test with piuparts I noticed libquagga-dev contains a > a broken symlink: /usr/lib/x86_64-linux-gnu/libzebra.so -> libzebra.so.0 [...]
So, libzebra.so.* is now libzebra.so.1 instead of .0 I see two options here... a/ drop the libzebra* (compatibility?) symlinks that's been carried since forever since hopefully they are no longer needed. The ABI (and API?) has even been broken since libzebra.so days. b/ hope that despite the ABI (and API?) break, most old code still compiles against libquagga.so.1 and bump the compat symlink so libzebra.so points to libzebra.so.1 While looking at this I also noticed another (somewhat related) issue. The links file seems to hard-code amd64 multi-arch triplet in http://sources.debian.net/src/quagga/1.1.1-1/debian/libquagga-dev.links/ which is likely very wrong on any other architecture. Two possible soutions for that would be: x/ add dh-exec as build-dependency, chmod +x libquagga-dev.links and use dh-exec shebang and a multi-arch-triplet variable expanded by dh-exec at build time. See https://manpages.debian.org/stretch/dh-exec/dh-exec-subst.1.en.html y/ create the symlinks directly from debian/rules instead of using a debian/*.links file, where the multi-arch triplet should also be available via some variable. Advice on which alternative is preferred (by the maintainer) welcome! Regards, Andreas Henriksson