On Sun, 23 Jul 2017 14:56:21 +0200, Axel Beckert wrote: > After the BinNMU for rebuilding against Perl 5.26, vile has the > following unsatisfiable dependencies: > > Depends: vile-common (= 9.8s-1), vile-common (= 9.8s-1+b1), […] > > This can be solved by any sourceful upload, but it should be fixed > permanently by making the package BinNMU-safe.
This looks like an interesting case. Indeed the Depends of vile now is: Depends: vile-common (= 9.8s-1), vile-common (= 9.8s-1+b1), libc6 (>= 2.15), libperl5.26 … while it was Depends: vile-common (= 9.8s-1), libc6 (>= 2.15), libperl5.24 … before. So we have a _second_ vile-common with the binNMU version. d/control looks as expected: Package: vile Depends: vile-common (= ${source:Version}), ${misc:Depends}, ${shlibs:Depends} d/rules doesn't do any manual substvar handling. So where does the second dependency com from? The only "suspicious" line in d/rules referring to vile-common is: dh_installdocs --link-doc=vile-common And indeed, dh_installdocs(1) says: CAVEAT 2: The use of --link-doc should only be done when the packages have same "architecture" type. A link from a architecture independent package to a architecture dependent package (or vice versa) will not work. Since compat 10, debhelper will actively reject unsupported combinations. Also: dh_installdocs --link-doc=vile-common dh_installdocs: Compatibility levels before 9 are deprecated (level 8 in use) dh_installdocs: WARNING: --link-doc between architecture all and not all packages breaks binNMUs dh_installdocs: WARNING: --link-doc between architecture all and not all packages breaks binNMUs dh_installdocs: WARNING: --link-doc between architecture all and not all packages breaks binNMUs And with DH_VERBOSE=1: dh_installdocs --link-doc=vile-common dh_installdocs: Compatibility levels before 9 are deprecated (level 8 in use) dh_installdocs: WARNING: --link-doc between architecture all and not all packages breaks binNMUs install -d debian/vile/usr/share/doc ln -s vile-common debian/vile/usr/share/doc/vile (grep -a -s -v misc:Depends debian/vile.substvars; echo "misc:Depends=vile-common (= \${binary:Version})") > debian/vile.substvars.new […] So that's where the second dependency comes from. It seems like this --link-doc needs to be removed (and the symlink converted to a directory with dpkg-maintscript-helper's symlink_to_dir). Cheers, gregor -- .''`. https://info.comodo.priv.at/ - Debian Developer https://www.debian.org : :' : OpenPGP fingerprint D1E1 316E 93A7 60A8 104D 85FA BB3A 6801 8649 AA06 `. `' Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe `- NP: Don McLean: He's Got You
signature.asc
Description: Digital Signature