Author: adconrad
Date: 2013-01-24 02:46:06 +0000 (Thu, 24 Jan 2013)
New Revision: 5450

Added:
   
glibc-package/branches/eglibc-2.17/debian/patches/arm/unsubmitted-ldso-multilib.diff
Modified:
   glibc-package/branches/eglibc-2.17/debian/changelog
   glibc-package/branches/eglibc-2.17/debian/patches/series
Log:
debian/patches/arm/unsubmitted-ldso-multilib.diff: Stop ld.so from
exiting prematurely when it encounters wrong-float ABI libraries.

Modified: glibc-package/branches/eglibc-2.17/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.17/debian/changelog 2013-01-23 07:38:27 UTC 
(rev 5449)
+++ glibc-package/branches/eglibc-2.17/debian/changelog 2013-01-24 02:46:06 UTC 
(rev 5450)
@@ -70,6 +70,10 @@
     libc-prof arbitrarily, and disable it for arm64, which lacks support.
   * debian/rules.d/build.mk: Fix armhf multilib with WITH_BUILD_SYSROOT.
 
+  [ Steve McIntyre ]
+  * debian/patches/arm/unsubmitted-ldso-multilib.diff: Stop ld.so from
+    exiting prematurely when it encounters wrong-float ABI libraries.
+
  -- Adam Conrad <[email protected]>  Mon, 26 Nov 2012 02:20:40 -0700
 
 eglibc (2.16-0experimental1) experimental; urgency=low

Added: 
glibc-package/branches/eglibc-2.17/debian/patches/arm/unsubmitted-ldso-multilib.diff
===================================================================
--- 
glibc-package/branches/eglibc-2.17/debian/patches/arm/unsubmitted-ldso-multilib.diff
                                (rev 0)
+++ 
glibc-package/branches/eglibc-2.17/debian/patches/arm/unsubmitted-ldso-multilib.diff
        2013-01-24 02:46:06 UTC (rev 5450)
@@ -0,0 +1,19 @@
+--- glibc/elf/dl-load.c        2013-01-23 19:29:03.412797023 -0700
++++ glibc/elf/dl-load.c        2013-01-23 19:30:02.556794931 -0700
+@@ -1999,6 +2000,16 @@
+             *found_other_class = true;
+             goto close_and_out;
+           }
++#ifdef __arm__
++          else if (!VALID_FLOAT_ABI (ehdr->e_flags))
++          {
++            /* This is not a fatal error.  On architectures where
++               soft-float and hard-float binaries can be run this
++               might happen.  */
++            *found_other_class = true;
++            goto close_and_out;
++          }
++#endif
+         else if (ehdr->e_ident[EI_DATA] != byteorder)
+           {
+             if (BYTE_ORDER == BIG_ENDIAN)

Modified: glibc-package/branches/eglibc-2.17/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.17/debian/patches/series    2013-01-23 
07:38:27 UTC (rev 5449)
+++ glibc-package/branches/eglibc-2.17/debian/patches/series    2013-01-24 
02:46:06 UTC (rev 5450)
@@ -54,6 +54,7 @@
 arm/unsubmitted-ldso-abi-check.diff
 arm/local-soname-hack.diff
 arm/local-vfp-sysdeps.diff
+arm/unsubmitted-ldso-multilib.diff
 
 hppa/local-inlining.diff
 hppa/submitted-fadvise64_64.diff


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Reply via email to