Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock
I identified three packages that don't ship a SONAME symlink and cause spurious creation and removal of this link by ldconfig. Spurious since the packages themselves don't call ldconfig, so another installation will trigger the ldconfig run - 2 seconds or 2 months later. As this makes the (dis-)appearance nondeterministic, this could produce heisenbugs that will be hard to debug. So better ship the link in the package and let dpkg instead of ldconfig manage creation/removal. libusb-dev is one of them (#706278), due to the /usr/lib/<triplet>/libusb.so -> /lib/<triplet>/libusb-0.1.so.4.4.4 link. The SONAME is libusb-0.1.so.4 and ldconfig will create /usr/lib/<triplet>/libusb-0.1.so.4 -> libusb.so The attached patch adds this link to the libusb-dev package: /usr/lib/<triplet>/libusb-0.1.so.4 > /lib/<triplet>/libusb-0.1.so.4 As libusb builds an udeb, too, this will probably have to wait for r1. libusb currently has a non-standard NMU version, we could fix this into 0.1.12-20.1 (or 0.1.12-20.2), but using the more canonical +deb7u1 suffix will be difficult. So I just incremented the "bad" version. Andreas unblock libusb/0.1.12-20+nmu2
diff -Nru libusb-0.1.12/debian/changelog libusb-0.1.12/debian/changelog --- libusb-0.1.12/debian/changelog 2012-09-22 16:02:30.000000000 +0200 +++ libusb-0.1.12/debian/changelog 2013-04-27 18:22:54.000000000 +0200 @@ -1,3 +1,12 @@ +libusb (2:0.1.12-20+nmu2) testing; urgency=low + + * Non-maintainer upload. + * libusb-dev: Ship /usr/lib/<triplet>/libusb-0.1.so.4 -> + /lib/<triplet>/libusb-0.1.so.4 symlink to prevent spurious creation of + that SONAME link by ldconfig. (Closes: #706278) + + -- Andreas Beckmann <a...@debian.org> Sat, 27 Apr 2013 18:16:00 +0200 + libusb (2:0.1.12-20+nmu1) testing-proposed-updates; urgency=low * Non-maintainer upload. diff -Nru libusb-0.1.12/debian/libusb-dev.install libusb-0.1.12/debian/libusb-dev.install --- libusb-0.1.12/debian/libusb-dev.install 2011-07-16 12:59:12.000000000 +0200 +++ libusb-0.1.12/debian/libusb-dev.install 2013-04-27 18:15:47.000000000 +0200 @@ -1,5 +1,6 @@ usr/bin/libusb-config usr/include/usb.h usr/lib/*/libusb.a +usr/lib/*/libusb-0.1.so.4 usr/lib/*/libusb.so usr/lib/*/pkgconfig/libusb.pc diff -Nru libusb-0.1.12/debian/rules libusb-0.1.12/debian/rules --- libusb-0.1.12/debian/rules 2011-12-31 01:56:04.000000000 +0100 +++ libusb-0.1.12/debian/rules 2013-04-27 18:34:34.000000000 +0200 @@ -147,6 +147,8 @@ $(CURDIR)/debian/tmp/lib/$(DEB_HOST_MULTIARCH) ln -sf /lib/$(DEB_HOST_MULTIARCH)/libusb-0.1.so.4.4.4 \ $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libusb.so + ln -sf /lib/$(DEB_HOST_MULTIARCH)/libusb-0.1.so.4 \ + $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libusb-0.1.so.4 # Move all files in their corresponding package dh_install -s -Nlibusb-0.1-udeb --list-missing --sourcedir=debian/tmp