From 04e83aec3c6f7e1ca794349d057390c4fbc3b12e Mon Sep 17 00:00:00 2001 From: Nicholas Clifton Date: Apr 08 2010 12:11:28 +0000 Subject: oops - add patch for: Do not allow unique symbols to be bound locally. (PR ld/11434) --- diff --git a/binutils-2.20.51.0.2-do-not-bind-unique-symbols-locally.patch b/binutils-2.20.51.0.2-do-not-bind-unique-symbols-locally.patch new file mode 100644 index 0000000..a8268f8 --- /dev/null +++ b/binutils-2.20.51.0.2-do-not-bind-unique-symbols-locally.patch @@ -0,0 +1,42 @@ +diff -rcp ../binutils-2.20.51.0.2.original/bfd/ChangeLog bfd/ChangeLog +*** ../binutils-2.20.51.0.2.original/bfd/ChangeLog 2010-04-08 11:27:14.000000000 +0100 +--- bfd/ChangeLog 2010-04-08 11:28:18.000000000 +0100 +*************** +*** 1,3 **** +--- 1,12 ---- ++ 2010-04-07 Nick Clifton ++ ++ Import this patch from the mainline: ++ ++ 2010-03-26 H.J. Lu ++ ++ PR ld/11434 ++ * elf-bfd.h (SYMBOLIC_BIND): Don't bind unique symbols locally. ++ + 2010-02-18 H.J. Lu + + * elf32-i386.c (elf_i386_add_symbol_hook): Don't set +diff -rcp ../binutils-2.20.51.0.2.original/bfd/elf-bfd.h bfd/elf-bfd.h +*** ../binutils-2.20.51.0.2.original/bfd/elf-bfd.h 2010-04-08 11:27:13.000000000 +0100 +--- bfd/elf-bfd.h 2010-04-08 11:27:35.000000000 +0100 +*************** extern asection _bfd_elf_large_com_secti +*** 2313,2320 **** + while (0) + + /* Will a symbol be bound to the the definition within the shared +! library, if any. */ + #define SYMBOLIC_BIND(INFO, H) \ +! ((INFO)->symbolic || ((INFO)->dynamic && !(H)->dynamic)) + + #endif /* _LIBELF_H_ */ +--- 2313,2321 ---- + while (0) + + /* Will a symbol be bound to the the definition within the shared +! library, if any. A unique symbol can never be bound locally. */ + #define SYMBOLIC_BIND(INFO, H) \ +! (! (H)->unique_global \ +! && ((INFO)->symbolic || ((INFO)->dynamic && !(H)->dynamic))) + + #endif /* _LIBELF_H_ */ +