r5959 - in glibc-package/trunk/debian: . debhelper.in
Author: aurel32
Date: 2014-02-23 11:30:28 +0000 (Sun, 23 Feb 2014)
New Revision: 5959
Modified:
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/debhelper.in/libc.preinst
Log:
debian/debhelper.in/libc.preinst: Disable ldconfig when a potentially
broken dynamic loader symlink is found. This happens when a biarch
package of the same architecture than the native one has been installed
(e.g.: libc6-amd64:i386 on amd64) and ldconfig is run afterwards.
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2014-02-23 00:00:27 UTC (rev 5958)
+++ glibc-package/trunk/debian/changelog 2014-02-23 11:30:28 UTC (rev 5959)
@@ -6,6 +6,10 @@
* any/local-ldconfig-ignore-ld.so.diff: new patch to ignore the dynamic
linker in ldconfig. Closes: #699206, #707185, #727786, #736097,
#739734, #739758.
+ * debian/debhelper.in/libc.preinst: Disable ldconfig when a potentially
+ broken dynamic loader symlink is found. This happens when a biarch
+ package of the same architecture than the native one has been installed
+ (e.g.: libc6-amd64:i386 on amd64) and ldconfig is run afterwards.
[ Petr Salinger ]
* kfreebsd/local-sysdeps.diff: update to revision 5443 (from glibc-bsd).
Modified: glibc-package/trunk/debian/debhelper.in/libc.preinst
===================================================================
--- glibc-package/trunk/debian/debhelper.in/libc.preinst 2014-02-23 00:00:27 UTC (rev 5958)
+++ glibc-package/trunk/debian/debhelper.in/libc.preinst 2014-02-23 11:30:28 UTC (rev 5959)
@@ -300,6 +300,20 @@
exit 1
fi
fi
+
+ # ldconfig might have broken the ld.so symlink in case a biarch package
+ # of the same architecture than the native one has been installed (e.g.:
+ # libc6-amd64:i386 on amd64). Try to detect this by checking that the
+ # ld.so symlink correctly points to ld-*.so in the slib directory, and
+ # disable ldconfig in such a case. The symlink will be fixed when
+ # unpacking the new libc version and ldconfig will be re-enabled when
+ # a new fixed version is unpacked.
+ if ! readlink -e RTLD_SO | grep -qE 'SLIBDIR/ld-[0-9.]+\.so' ; then
+ echo "Warning: found a potentially broken dynamic loader symlink,"
+ echo "disabling ldconfig to avoid a possible system breakage. It"
+ echo "will be reenabled when a new version of libc-bin is unpacked."
+ ln -sf /bin/true /sbin/ldconfig.real
+ fi
fi
if [ "$type" != abort-upgrade ]
Reply to: