2006-07-11 Jakub Jelinek * config/i386/linux.h (LINK_SPEC): Add --hash-style=gnu. * config/i386/linux64.h (LINK_SPEC): Likewise. * config/rs6000/sysv4.h (LINK_OS_LINUX_SPEC): Likewise. * config/rs6000/linux64.h (LINK_OS_LINUX_SPEC32, LINK_OS_LINUX_SPEC64): Likewise. * config/s390/linux.h (LINK_SPEC): Likewise. * config/ia64/linux.h (LINK_SPEC): Likewise. * config/sparc/linux.h (LINK_SPEC): Likewise. * config/sparc/linux64.h (LINK_SPEC, LINK_ARCH32_SPEC, LINK_ARCH64_SPEC): Likewise. * config/alpha/linux-elf.h (LINK_SPEC): Likewise. --- gcc/config/rs6000/sysv4.h.jj 2006-07-11 10:54:00.000000000 +0200 +++ gcc/config/rs6000/sysv4.h 2006-07-11 12:51:39.000000000 +0200 @@ -1039,7 +1039,7 @@ extern int fixuplabelno; #define LINK_START_LINUX_SPEC "" -#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \ +#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --hash-style=gnu %{!shared: %{!static: \ %{rdynamic:-export-dynamic} \ %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" --- gcc/config/rs6000/linux64.h.jj 2006-07-11 10:54:00.000000000 +0200 +++ gcc/config/rs6000/linux64.h 2006-07-11 12:52:14.000000000 +0200 @@ -337,11 +337,11 @@ extern int dot_symbols; #undef LINK_OS_DEFAULT_SPEC #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" -#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \ +#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux --hash-style=gnu %{!shared: %{!static: \ %{rdynamic:-export-dynamic} \ %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" -#define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \ +#define LINK_OS_LINUX_SPEC64 "-m elf64ppc --hash-style=gnu %{!shared: %{!static: \ %{rdynamic:-export-dynamic} \ %{!dynamic-linker:-dynamic-linker /lib64/ld64.so.1}}}" --- gcc/config/alpha/linux-elf.h.jj 2006-07-11 10:54:01.000000000 +0200 +++ gcc/config/alpha/linux-elf.h 2006-07-11 12:53:48.000000000 +0200 @@ -29,7 +29,7 @@ Boston, MA 02110-1301, USA. */ #define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" -#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ +#define LINK_SPEC "-m elf64alpha --hash-style=gnu %{G*} %{relax:-relax} \ %{O*:-O3} %{!O*:-O1} \ %{shared:-shared} \ %{!shared: \ --- gcc/config/s390/linux.h.jj 2006-07-11 10:54:02.000000000 +0200 +++ gcc/config/s390/linux.h 2006-07-11 12:52:39.000000000 +0200 @@ -79,7 +79,7 @@ Software Foundation, 51 Franklin Street, #undef LINK_SPEC #define LINK_SPEC \ - "%{m31:-m elf_s390}%{m64:-m elf64_s390} \ + "%{m31:-m elf_s390}%{m64:-m elf64_s390} --hash-style=gnu \ %{shared:-shared} \ %{!shared: \ %{static:-static} \ --- gcc/config/sparc/linux.h.jj 2006-07-11 10:54:03.000000000 +0200 +++ gcc/config/sparc/linux.h 2006-07-11 12:54:16.000000000 +0200 @@ -127,7 +127,7 @@ Boston, MA 02110-1301, USA. */ /* If ELF is the default format, we should not use /lib/elf. */ #undef LINK_SPEC -#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ +#define LINK_SPEC "-m elf32_sparc --hash-style=gnu -Y P,/usr/lib %{shared:-shared} \ %{!mno-relax:%{!r:-relax}} \ %{!shared: \ %{!ibcs: \ --- gcc/config/sparc/linux64.h.jj 2006-07-11 10:54:03.000000000 +0200 +++ gcc/config/sparc/linux64.h 2006-07-11 12:55:10.000000000 +0200 @@ -157,7 +157,7 @@ Boston, MA 02110-1301, USA. */ { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ { "link_arch", LINK_ARCH_SPEC }, -#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ +#define LINK_ARCH32_SPEC "-m elf32_sparc --hash-style=gnu -Y P,/usr/lib %{shared:-shared} \ %{!shared: \ %{!ibcs: \ %{!static: \ @@ -166,7 +166,7 @@ Boston, MA 02110-1301, USA. */ %{static:-static}}} \ " -#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \ +#define LINK_ARCH64_SPEC "-m elf64_sparc --hash-style=gnu -Y P,/usr/lib64 %{shared:-shared} \ %{!shared: \ %{!ibcs: \ %{!static: \ @@ -247,7 +247,7 @@ Boston, MA 02110-1301, USA. */ #else /* !SPARC_BI_ARCH */ #undef LINK_SPEC -#define LINK_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \ +#define LINK_SPEC "-m elf64_sparc --hash-style=gnu -Y P,/usr/lib64 %{shared:-shared} \ %{!shared: \ %{!ibcs: \ %{!static: \ --- gcc/config/i386/linux.h.jj 2006-07-11 10:54:05.000000000 +0200 +++ gcc/config/i386/linux.h 2006-07-11 12:44:45.000000000 +0200 @@ -113,7 +113,7 @@ Boston, MA 02110-1301, USA. */ { "dynamic_linker", DYNAMIC_LINKER } #undef LINK_SPEC -#define LINK_SPEC "-m %(link_emulation) %{shared:-shared} \ +#define LINK_SPEC "-m %(link_emulation) --hash-style=gnu %{shared:-shared} \ %{!shared: \ %{!ibcs: \ %{!static: \ --- gcc/config/i386/linux64.h.jj 2006-07-11 10:54:04.000000000 +0200 +++ gcc/config/i386/linux64.h 2006-07-11 12:45:02.000000000 +0200 @@ -55,7 +55,7 @@ Boston, MA 02110-1301, USA. */ done. */ #undef LINK_SPEC -#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \ +#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} --hash-style=gnu \ %{shared:-shared} \ %{!shared: \ %{!static: \ --- gcc/config/ia64/linux.h.jj 2006-07-11 10:54:06.000000000 +0200 +++ gcc/config/ia64/linux.h 2006-07-11 12:48:19.000000000 +0200 @@ -40,7 +40,7 @@ do { \ linux.h file. */ #undef LINK_SPEC -#define LINK_SPEC "\ +#define LINK_SPEC "--hash-style=gnu \ %{shared:-shared} \ %{!shared: \ %{!static: \