crosstool-ng/patches/glibc/ports-2.12.1/630-mips_shn_undef-hack.patch

17 lines
599 B
Diff
Raw Normal View History

diff -durN glibc-2.12.1.orig/elf/dl-lookup.c glibc-2.12.1/elf/dl-lookup.c
--- glibc-2.12.1.orig/elf/dl-lookup.c 2009-03-30 23:14:32.000000000 +0200
+++ glibc-2.12.1/elf/dl-lookup.c 2009-11-13 00:51:36.000000000 +0100
@@ -301,6 +301,12 @@
/* FALLTHROUGH */
case STB_GLOBAL:
success:
+#ifdef __mips__
+ /* HACK: MIPS marks its lazy evaluation stubs with SHN_UNDEF
+ symbols, we skip them. */
+ if (sym->st_shndx == SHN_UNDEF)
+ break;
+#endif
/* Global definition. Just what we need. */
result->s = sym;
result->m = (struct link_map *) map;