forked from pool/glibc
23 lines
816 B
Diff
23 lines
816 B
Diff
|
Patch for elf/dl-load.c taken from Debian:
|
||
|
For backward compatibility with armhf binaries built with the
|
||
|
old linker SONAME, we need to fake out the linker to believe
|
||
|
the new is the old, until such a point as everything is rebuilt.
|
||
|
|
||
|
--- glibc-2.15/elf/dl-load.c.~1~ 2011-12-30 23:13:56.000000000 +0100
|
||
|
+++ glibc-2.15/elf/dl-load.c 2012-04-18 15:05:33.203485389 +0200
|
||
|
@@ -2082,10 +2082,13 @@
|
||
|
soname = ((const char *) D_PTR (l, l_info[DT_STRTAB])
|
||
|
+ l->l_info[DT_SONAME]->d_un.d_val);
|
||
|
if (strcmp (name, soname) != 0)
|
||
|
+#ifdef __arm__
|
||
|
+ if (strcmp(name, "ld-linux.so.3") || strcmp(soname, "ld-linux-armhf.so.3"))
|
||
|
+#endif
|
||
|
continue;
|
||
|
|
||
|
/* We have a match on a new name -- cache it. */
|
||
|
- add_name_to_object (l, soname);
|
||
|
+ add_name_to_object (l, name);
|
||
|
l->l_soname_added = 1;
|
||
|
}
|
||
|
|