Bug#706281: t-p-u: libusb/0.1.12-20+nmu2
Package: release.debian.org
Severity: normal
User: release.debian.org@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 <anbe@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
Reply to: