[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r4721 - in glibc-package/trunk/debian: . debhelper.in



Author: clint
Date: 2011-06-09 00:28:08 +0000 (Thu, 09 Jun 2011)
New Revision: 4721

Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/debhelper.in/libc.preinst
Log:
debian/debhelper.in/libc.preinst: additional check for extra copies of /lib/ld-2.*.so not known to dpkg, as these cause problems when the real linker moves to /lib/<triplet> for multiarch and ldconfig leaves /lib/ld-linux.so.N pointing at an old glibc.  Closes: #629534.

Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2011-06-09 00:03:15 UTC (rev 4720)
+++ glibc-package/trunk/debian/changelog	2011-06-09 00:28:08 UTC (rev 4721)
@@ -14,6 +14,12 @@
   * Remove spurious exclamation point in architecture dependency.
   * Add lintian overrides for eglibc-source, from Marcin Juszkiewicz.
 
+  [ Steve Langasek ]
+  * debian/debhelper.in/libc.preinst: additional check for extra copies of
+    /lib/ld-2.*.so not known to dpkg, as these cause problems when the real
+    linker moves to /lib/<triplet> for multiarch and ldconfig leaves
+    /lib/ld-linux.so.N pointing at an old glibc.  Closes: #629534.
+
  -- Clint Adams <clint@debian.org>  Wed, 08 Jun 2011 19:50:01 -0400
 
 eglibc (2.13-5) unstable; urgency=low

Modified: glibc-package/trunk/debian/debhelper.in/libc.preinst
===================================================================
--- glibc-package/trunk/debian/debhelper.in/libc.preinst	2011-06-09 00:03:15 UTC (rev 4720)
+++ glibc-package/trunk/debian/debhelper.in/libc.preinst	2011-06-09 00:28:08 UTC (rev 4721)
@@ -239,6 +239,15 @@
       exit 1
     fi
   done
+  for i in /lib/ld-2.*.so; do
+    if [ "$i" != "/lib/ld-2.*.so" ] && ! dpkg-query -L LIBC 2>/dev/null | grep -q $i; then
+      echo
+      echo "A non-dpkg owned copy of the C library was found in /lib/."
+      echo "It is not safe to upgrade the C library in this situation;"
+      echo "please remove that copy of the C library and try again."
+      exit 1
+    fi
+  done
   if [ -e /lib/tls/i686/cmov/libc.so.6 ] || [ -e /lib/i686/cmov/libc.so.6 ] ; then
     status_i686=$(dpkg -s libc6-i686 2>/dev/null | grep ^Status: | sed -e 's/^Status: \(.*\) \(.*\) \(.*\)/\3/g')
     status_xen=$(dpkg -s libc6-xen 2>/dev/null | grep ^Status: | sed -e 's/^Status: \(.*\) \(.*\) \(.*\)/\3/g')


Reply to: