* config/rs6000/sysv4.h (CC!_SPEC): Undefine it before defining it.
* config/rs6000/linux.h (CPLUSPLUS_CPP_SPEC): Delete define.
(LINK_GCC_C_SEQUENCE_SPEC): Likewise.
(USE_LD_AS_NEEDED): Likewise.
(ASM_APP_ON): Likewise.
(ASM_APP_OFF): Likewise.
(TARGET_POSIX_IO): Likewise.
* config/rs6000/linux64.h (CPLUSPLUS_CPP_SPEC): Likewise.
(LINK_GCC_C_SEQUENCE_SPEC): Likewise.
(USE_LD_AS_NEEDED): Likewise.
(ASM_APP_ON): Likewise.
(ASM_APP_OFF): Likewise.
(TARGET_POSIX_IO): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213125
138bc75d-0d04-0410-961f-
82ee72b054a4
+2014-07-28 Peter Bergner <bergner@vnet.ibm.com>
+
+ * config.gcc (powerpc*-*-linux*): Include gnu-user.h in tm_file.
+ * config/rs6000/sysv4.h (CC!_SPEC): Undefine it before defining it.
+ * config/rs6000/linux.h (CPLUSPLUS_CPP_SPEC): Delete define.
+ (LINK_GCC_C_SEQUENCE_SPEC): Likewise.
+ (USE_LD_AS_NEEDED): Likewise.
+ (ASM_APP_ON): Likewise.
+ (ASM_APP_OFF): Likewise.
+ (TARGET_POSIX_IO): Likewise.
+ * config/rs6000/linux64.h (CPLUSPLUS_CPP_SPEC): Likewise.
+ (LINK_GCC_C_SEQUENCE_SPEC): Likewise.
+ (USE_LD_AS_NEEDED): Likewise.
+ (ASM_APP_ON): Likewise.
+ (ASM_APP_OFF): Likewise.
+ (TARGET_POSIX_IO): Likewise.
+
2014-07-28 Eric Botcazou <ebotcazou@adacore.com>
PR middle-end/61734
tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-rtems rs6000/t-ppccomm"
;;
powerpc*-*-linux*)
- tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h rs6000/sysv4.h"
+ tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h freebsd-spec.h rs6000/sysv4.h"
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
extra_objs="$extra_objs rs6000-linux.o"
#undef CPP_OS_DEFAULT_SPEC
#define CPP_OS_DEFAULT_SPEC "%(cpp_os_linux)"
-/* The GNU C++ standard library currently requires _GNU_SOURCE being
- defined on glibc-based systems. This temporary hack accomplishes this,
- it should go away as soon as libstdc++-v3 has a real fix. */
-#undef CPLUSPLUS_CPP_SPEC
-#define CPLUSPLUS_CPP_SPEC "-D_GNU_SOURCE %(cpp)"
-
#undef LINK_SHLIB_SPEC
#define LINK_SHLIB_SPEC "%{shared:-shared} %{!shared: %{static:-static}}"
%{rdynamic:-export-dynamic} \
-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}"
-#define LINK_GCC_C_SEQUENCE_SPEC \
- "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
-
-/* Use --as-needed -lgcc_s for eh support. */
-#ifdef HAVE_LD_AS_NEEDED
-#define USE_LD_AS_NEEDED 1
-#endif
-
-/* Override rs6000.h definition. */
-#undef ASM_APP_ON
-#define ASM_APP_ON "#APP\n"
-
-/* Override rs6000.h definition. */
-#undef ASM_APP_OFF
-#define ASM_APP_OFF "#NO_APP\n"
-
/* For backward compatibility, we must continue to use the AIX
structure return convention. */
#undef DRAFT_V4_STRUCT_RET
#define RELOCATABLE_NEEDS_FIXUP \
(rs6000_isa_flags & rs6000_isa_flags_explicit & OPTION_MASK_RELOCATABLE)
-#define TARGET_POSIX_IO
-
#ifdef TARGET_LIBC_PROVIDES_SSP
/* ppc32 glibc provides __stack_chk_guard in -0x7008(2). */
#define TARGET_THREAD_SSP_OFFSET -0x7008
#undef CPP_OS_DEFAULT_SPEC
#define CPP_OS_DEFAULT_SPEC "%(cpp_os_linux)"
-/* The GNU C++ standard library currently requires _GNU_SOURCE being
- defined on glibc-based systems. This temporary hack accomplishes this,
- it should go away as soon as libstdc++-v3 has a real fix. */
-#undef CPLUSPLUS_CPP_SPEC
-#define CPLUSPLUS_CPP_SPEC "-D_GNU_SOURCE %(cpp)"
-
#undef LINK_SHLIB_SPEC
#define LINK_SHLIB_SPEC "%{shared:-shared} %{!shared: %{static:-static}}"
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE 32
-/* Override rs6000.h definition. */
-#undef ASM_APP_ON
-#define ASM_APP_ON "#APP\n"
-
-/* Override rs6000.h definition. */
-#undef ASM_APP_OFF
-#define ASM_APP_OFF "#NO_APP\n"
-
#undef RS6000_MCOUNT
#define RS6000_MCOUNT "_mcount"
#undef DRAFT_V4_STRUCT_RET
#define DRAFT_V4_STRUCT_RET (!TARGET_64BIT)
-#define TARGET_POSIX_IO
-
-#define LINK_GCC_C_SEQUENCE_SPEC \
- "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
-
-/* Use --as-needed -lgcc_s for eh support. */
-#ifdef HAVE_LD_AS_NEEDED
-#define USE_LD_AS_NEEDED 1
-#endif
-
#ifdef TARGET_LIBC_PROVIDES_SSP
/* ppc32 glibc provides __stack_chk_guard in -0x7008(2),
ppc64 glibc provides it at -0x7010(13). */
#endif
/* Pass -G xxx to the compiler. */
+#undef CC1_SPEC
#define CC1_SPEC "%{G*} %(cc1_cpu)" \
"%{meabi: %{!mcall-*: -mcall-sysv }} \
%{!meabi: %{!mno-eabi: \