Building newer libiberty for s390x targets fails with relocation errors: libiberty/pic/libiberty.a(hashtab.o): In function 'htab_create': libiberty/hashtab.c:408:(.text+0x5e4): relocation truncated to fit: R_390_GOT12 against symbol 'xcalloc' defined in .text section in libiberty/pic/libiberty.a(xmalloc.o) libiberty/pic/libiberty.a(hashtab.o): In function 'htab_try_create': libiberty/hashtab.c:414:(.text+0x61c): relocation truncated to fit: R_390_GOT12 against symbol 'calloc@@GLIBC_2.2' defined in .text section in /lib/libc.so.6 collect2: ld returned 1 exit status
Building with larger GOT (-fPIC rather than -fpic) fixes this. CC: Aurelien Jarno <aurel...@aurel32.net> CC: Martin Schwidefsky <schwidef...@de.ibm.com> Signed-off-by: Mike Frysinger <vap...@gentoo.org> config/: 2011-12-06 Mike Frysinger <vap...@gentoo.org> * picflag.m4 (_GCC_PICFLAG): Set $1 to -fPIC for s390x*-*-*. gcc/: libada/: libgcc/: libiberty/: 2011-12-06 Mike Frysinger <vap...@gentoo.org> * configure: Regenerate. --- config/picflag.m4 | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/config/picflag.m4 b/config/picflag.m4 index f6f1b44..db2ce0f 100644 --- a/config/picflag.m4 +++ b/config/picflag.m4 @@ -51,6 +51,9 @@ case "${$2}" in m68k-*-*) $1=-fpic ;; + s390x*-*-*) + $1=-fpic + ;; s390*-*-*) $1=-fpic ;; -- 1.7.6.1