Package: eglibc Version: 2.13-8 Severity: important Tags: patch User: ubuntu-devel@lists.ubuntu.com Usertags: ubuntu-patch origin-ubuntu oneiric The updated preinst in the latest eglibc causes initial installation of libc packages for a foreign architecture to fail, because 'readlink -e' returns non-zero on a non-existent file (and the file is nonexistent before we've unpacked the package). I think the sensible thing here is probably to just skip the scan for old copies of libc when we're installing for other than the native architecture. Attached is a patch to do this, which will be uploaded to Ubuntu shortly. Thanks, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ slangasek@ubuntu.com vorlon@debian.org
# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: steve.langasek@linaro.org-20110703003644-\
# ms7qopl2wlz0gp9t
# target_branch: :parent
# testament_sha1: 511d897c550e105d0e7a28e852b9a02cd2b0e38d
# timestamp: 2011-07-02 17:37:09 -0700
# base_revision_id: svn-v4:6ef976f9-4de5-0310-a40d-91cae572ec18:glibc-\
# package/trunk:4776
#
# Begin patch
=== modified file 'debian/changelog'
--- debian/changelog 2011-07-02 21:02:09 +0000
+++ debian/changelog 2011-07-03 00:36:44 +0000
@@ -10,6 +10,11 @@
* debhelper.in/libc.preinst: replace unbreakable space by normal space.
Closes: #632453.
+ [ Steve Langasek ]
+ * debhelper.in/libc.preinst: don't probe for old copies of libc when we're
+ installing a libc for other than the default architecture; otherwise, we
+ can't bootstrap installing a foreign-arch libc onto the system.
+
-- Samuel Thibault <sthibault@debian.org> Thu, 30 Jun 2011 09:52:43 +0200
eglibc (2.13-8) unstable; urgency=low
=== modified file 'debian/debhelper.in/libc.preinst'
--- debian/debhelper.in/libc.preinst 2011-07-02 10:08:27 +0000
+++ debian/debhelper.in/libc.preinst 2011-07-03 00:36:44 +0000
@@ -249,29 +249,33 @@
# Try to detect copies of the libc library in the various places
# the dynamic linker uses.
- ldfile=$(readlink -e RTLD_SO)
- ldbytes=$(head -c 20 RTLD_SO | od -c)
- libcfiles=$(dpkg-query -L LIBC 2>/dev/null)
-
- dirs="SLIBDIR /lib /lib/tls /lib32 /lib64 /usr/local/lib /usr/local/lib32 /usr/local/lib64"
- for dir in $dirs ; do
- check_dir "in an unexpected directory" $dir
- done
-
- if test -n "$LD_LIBRARY_PATH"; then
- dirs=$(echo $LD_LIBRARY_PATH | sed 's/:/ /g')
+ if [ -e RTLD_SO ]; then
+ # if RTLD_SO isn't on the filesystem, this is clearly an initial unpack
+ # of a foreign-arch libc - don't worry about checking for old libraries.
+ ldfile=$(readlink -e RTLD_SO)
+ ldbytes=$(head -c 20 RTLD_SO | od -c)
+ libcfiles=$(dpkg-query -L LIBC 2>/dev/null)
+
+ dirs="SLIBDIR /lib /lib/tls /lib32 /lib64 /usr/local/lib /usr/local/lib32 /usr/local/lib64"
for dir in $dirs ; do
- check_dir "via LD_LIBRARY_PATH" $dir
+ check_dir "in an unexpected directory" $dir
done
- fi
- if test -e /etc/ld.so.conf; then
- dirs=$(echo $(cat /etc/ld.so.conf))
- if test -n "$dirs" ; then
+ if test -n "$LD_LIBRARY_PATH"; then
+ dirs=$(echo $LD_LIBRARY_PATH | sed 's/:/ /g')
for dir in $dirs ; do
- check_dir "via /etc/ld.so.conf" $dir
+ check_dir "via LD_LIBRARY_PATH" $dir
done
fi
+
+ if test -e /etc/ld.so.conf; then
+ dirs=$(echo $(cat /etc/ld.so.conf))
+ if test -n "$dirs" ; then
+ for dir in $dirs ; do
+ check_dir "via /etc/ld.so.conf" $dir
+ done
+ fi
+ fi
fi
if [ -e /lib/tls/i686/cmov/libc.so.6 ] || [ -e /lib/i686/cmov/libc.so.6 ] ; then
# Begin bundle
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
Attachment:
signature.asc
Description: Digital signature