summaryrefslogtreecommitdiffstats
path: root/toolchain/uClibc/patches-0.9.33.2/480-powerpc_rel24_support.patch
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-05-15 13:42:32 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-05-15 13:42:32 +0000
commitf318c1e45242b9ba124c3804afd1542fd5f51682 (patch)
tree193d261d889fdae8c02a18f097562759424adc4c /toolchain/uClibc/patches-0.9.33.2/480-powerpc_rel24_support.patch
parentc691ce8b791b1cdf89bed6d9ffeae8131853b184 (diff)
uClibc: update to 0.9.33.2, fixes #4420
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31740 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/uClibc/patches-0.9.33.2/480-powerpc_rel24_support.patch')
-rw-r--r--toolchain/uClibc/patches-0.9.33.2/480-powerpc_rel24_support.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches-0.9.33.2/480-powerpc_rel24_support.patch b/toolchain/uClibc/patches-0.9.33.2/480-powerpc_rel24_support.patch
new file mode 100644
index 000000000..19c2b2c8a
--- /dev/null
+++ b/toolchain/uClibc/patches-0.9.33.2/480-powerpc_rel24_support.patch
@@ -0,0 +1,26 @@
+--- a/ldso/ldso/powerpc/elfinterp.c
++++ b/ldso/ldso/powerpc/elfinterp.c
+@@ -297,22 +297,17 @@ _dl_do_reloc (struct elf_resolve *tpnt,s
+ break;
+ #endif
+ case R_PPC_REL24:
+-#if 0
+ {
+ Elf32_Sword delta = finaladdr - (Elf32_Word)reloc_addr;
+ if (unlikely(delta<<6>>6 != delta)) {
+ _dl_dprintf(2, "%s: symbol '%s' R_PPC_REL24 is out of range.\n\t"
+ "Compile shared libraries with -fPIC!\n",
+ _dl_progname, symname);
+- _dl_exit(1);
++ return -1;
+ }
+ *reloc_addr = (*reloc_addr & 0xfc000003) | (delta & 0x3fffffc);
+ break;
+ }
+-#else
+- _dl_dprintf(2,"R_PPC_REL24: Compile shared libraries with -fPIC!\n");
+- return -1;
+-#endif
+ case R_PPC_NONE:
+ goto out_nocode; /* No code code modified */
+ default: