2011-08-16 Matthias Klose Backport from FSF: 2010-12-20 Joseph Myers * config/rs6000/freebsd.h (SVR4_ASM_SPEC): Don't define. (DBX_REGISTER_NUMBER): Define. * config/rs6000/lynx.h (DBX_REGISTER_NUMBER): Define. * config/rs6000/netbsd.h (DBX_REGISTER_NUMBER): Define. * config/rs6000/sysv4.h (SIZE_TYPE): Define. (ASM_SPEC): Define without using SVR4_ASM_SPEC. (DBX_REGISTER_NUMBER): Undefine. * config.gcc (powerpc-*-eabispe*, powerpc-*-eabisimaltivec*, powerpc-*-eabisim*, powerpc-*-elf*, powerpc-*-eabialtivec*, powerpc-xilinx-eabi*, powerpc-*-eabi*, powerpc-*-rtems*, powerpc-*-linux* | powerpc64-*-linux*, powerpc64-*-gnu*, powerpc-*-gnu-gnualtivec*, powerpc-*-gnu*, powerpc-wrs-vxworks|powerpc-wrs-vxworksae, powerpcle-*-elf*, powerpcle-*-eabisim*, powerpcle-*-eabi*): Don't use svr4.h. === modified file 'gcc/config.gcc' Index: gcc-4_5-branch/gcc/config.gcc =================================================================== --- gcc-4_5-branch.orig/gcc/config.gcc 2011-09-16 23:01:43.000000000 -0700 +++ gcc-4_5-branch/gcc/config.gcc 2011-09-17 10:54:32.763299018 -0700 @@ -2028,7 +2028,7 @@ powerpc-*-rtems*) tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-rtems t-rtems rs6000/t-ppccomm" ;; powerpc-*-linux* | powerpc64-*-linux*) - tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h" + tm_file="${tm_file} dbxelf.h elfos.h linux.h freebsd-spec.h rs6000/sysv4.h" extra_options="${extra_options} rs6000/sysv4.opt" tmake_file="t-dfprules rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" maybe_biarch=yes Index: gcc-4_5-branch/gcc/config/freebsd-spec.h =================================================================== --- gcc-4_5-branch.orig/gcc/config/freebsd-spec.h 2011-06-16 17:59:03.000000000 -0700 +++ gcc-4_5-branch/gcc/config/freebsd-spec.h 2011-09-17 10:54:32.763299018 -0700 @@ -154,6 +154,7 @@ is built with the --enable-threads confi #endif #if defined(HAVE_LD_EH_FRAME_HDR) +#undef LINK_EH_SPEC #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " #endif Index: gcc-4_5-branch/gcc/config/rs6000/linux64.h =================================================================== --- gcc-4_5-branch.orig/gcc/config/rs6000/linux64.h 2011-09-16 23:01:43.000000000 -0700 +++ gcc-4_5-branch/gcc/config/rs6000/linux64.h 2011-09-17 10:56:01.043298999 -0700 @@ -339,6 +339,9 @@ extern int dot_symbols; #undef LINK_OS_DEFAULT_SPEC #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" +#undef LINUX_DYNAMIC_LINKER32 +#undef LINUX_DYNAMIC_LINKER64 +#undef CHOOSE_DYNAMIC_LINKER #define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1" #define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64.so.1" Index: gcc-4_5-branch/gcc/config/rs6000/sysv4.h =================================================================== --- gcc-4_5-branch.orig/gcc/config/rs6000/sysv4.h 2011-09-16 23:01:44.000000000 -0700 +++ gcc-4_5-branch/gcc/config/rs6000/sysv4.h 2011-09-17 10:54:32.773299018 -0700 @@ -617,6 +617,7 @@ SVR4_ASM_SPEC \ #define CC1_SECURE_PLT_DEFAULT_SPEC "" #endif +#undef CC1_SPEC /* Pass -G xxx to the compiler and set correct endian mode. */ #define CC1_SPEC "%{G*} %(cc1_cpu) \ %{mlittle|mlittle-endian: %(cc1_endian_little); \ @@ -900,22 +901,13 @@ SVR4_ASM_SPEC \ #define LINK_START_LINUX_SPEC "" #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -#if DEFAULT_LIBC == LIBC_UCLIBC -#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" -#elif DEFAULT_LIBC == LIBC_GLIBC -#define CHOOSE_DYNAMIC_LINKER(G, U) "%{muclibc:" U ";:" G "}" -#else -#error "Unsupported DEFAULT_LIBC" -#endif -#define LINUX_DYNAMIC_LINKER \ - CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) #define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \ %{rdynamic:-export-dynamic} \ %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}" #if defined(HAVE_LD_EH_FRAME_HDR) +# undef LINK_EH_SPEC # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " #endif @@ -1110,6 +1102,7 @@ ncrtn.o%s" be stacked, so that invocations of #pragma pack(pop)' will return to the previous value. */ +#undef HANDLE_PRAGMA_PACK_PUSH_POP #define HANDLE_PRAGMA_PACK_PUSH_POP 1 /* Select a format to encode pointers in exception handling data. CODE