remove the custom Build/Prepare override in binutils, use PATCH_DIR, refresh patches...
[openwrt/svn-archive/archive.git] / toolchain / binutils / patches / 2.17 / 502-avr32-bfd-dont-allow-direct-refs-to-bss.patch
1 Index: binutils-2.17/bfd/elf32-avr32.c
2 ===================================================================
3 --- binutils-2.17.orig/bfd/elf32-avr32.c 2007-06-28 09:19:38.494384416 +0200
4 +++ binutils-2.17/bfd/elf32-avr32.c 2007-06-28 09:19:38.682355840 +0200
5 @@ -2449,9 +2449,13 @@
6 after the relaxation code is done, so we can't really
7 trust that our "distance" is correct. There's really no
8 easy solution to this problem, so we'll just disallow
9 - direct references to SEC_DATA sections. */
10 + direct references to SEC_DATA sections.
11 +
12 + Oh, and .bss isn't actually SEC_DATA, so we disallow
13 + !SEC_HAS_CONTENTS as well. */
14 if (!dynamic && defined
15 && !(sym_sec->flags & SEC_DATA)
16 + && (sym_sec->flags & SEC_HAS_CONTENTS)
17 && next_state->direct)
18 {
19 next_state = &relax_state[next_state->direct];