aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2005-03-01 03:39:03 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2005-03-01 03:39:03 +0000
commit65f527e0a581ca9563784ce6f7725fbb119893b7 (patch)
tree588797781456b376d3982ccc08434b9250a1d1a1
parent0b5383eba096fa2bec2d62242ea0f1bc5350ebc3 (diff)
downloadgcc-65f527e0a581ca9563784ce6f7725fbb119893b7.zip
gcc-65f527e0a581ca9563784ce6f7725fbb119893b7.tar.gz
gcc-65f527e0a581ca9563784ce6f7725fbb119893b7.tar.bz2
linux.h (MD_EXEC_PREFIX, [...]): Don't undefine here.
* config/sh/linux.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Don't undefine here. (HANDLE_PRAGMA_PACK_PUSH_POP): Delete. (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC): Likewise. (TARGET_OS_CPP_BUILTINS): Use LINUX_TARGET_OS_CPP_BUILTINS. (LIB_SPEC, LINK_EH_SPEC, STARTFILE_SPEC, ENDFILE_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED, TARGET_C99_FUNCTIONS): Delete. * config.gcc (sh*-*-linux*): Use config/linux.h. From-SVN: r95726
-rw-r--r--gcc/ChangeLog12
-rw-r--r--gcc/config.gcc2
-rw-r--r--gcc/config/sh/linux.h72
3 files changed, 23 insertions, 63 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 18a3070..f6b1f8b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,15 @@
+2005-02-28 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/linux.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX):
+ Don't undefine here.
+ (HANDLE_PRAGMA_PACK_PUSH_POP): Delete.
+ (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC): Likewise.
+ (TARGET_OS_CPP_BUILTINS): Use LINUX_TARGET_OS_CPP_BUILTINS.
+ (LIB_SPEC, LINK_EH_SPEC, STARTFILE_SPEC, ENDFILE_SPEC,
+ LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED, TARGET_C99_FUNCTIONS):
+ Delete.
+ * config.gcc (sh*-*-linux*): Use config/linux.h.
+
2005-02-28 Dale Johannesen <dalej@apple.com>
Stan Shebs <shebs@apple.com>
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 0bbd958..bfe6947 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1761,7 +1761,7 @@ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
tm_file="${tm_file} sh/elf.h"
case ${target} in
sh*-*-linux*) tmake_file="${tmake_file} sh/t-linux"
- tm_file="${tm_file} sh/linux.h" ;;
+ tm_file="${tm_file} linux.h sh/linux.h" ;;
sh*-*-kaos*) tm_file="${tm_file} sh/embed-elf.h kaos.h sh/kaos-sh.h"
;;
sh*-*-netbsd*) tm_file="${tm_file} netbsd.h netbsd-elf.h sh/netbsd-elf.h" ;;
diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h
index 47a71ac..412ce46 100644
--- a/gcc/config/sh/linux.h
+++ b/gcc/config/sh/linux.h
@@ -24,20 +24,6 @@ Boston, MA 02111-1307, USA. */
#undef TARGET_VERSION
#define TARGET_VERSION fputs (" (SH GNU/Linux with ELF)", stderr);
-/* We're not SYSVR4, not having /usr/ccs */
-#undef MD_EXEC_PREFIX
-#undef MD_STARTFILE_PREFIX
-
-/* This was defined in linux.h. Define it here also. */
-#define HANDLE_PRAGMA_PACK_PUSH_POP
-
-/* Don't assume anything about the header files. */
-#define NO_IMPLICIT_EXTERN_C
-
-/* The GNU C++ standard library requires that these macros be defined. */
-#undef CPLUSPLUS_CPP_SPEC
-#define CPLUSPLUS_CPP_SPEC "-D_GNU_SOURCE %(cpp)"
-
/* Enable DWARF 2 exceptions. */
#undef DWARF2_UNWIND_INFO
#define DWARF2_UNWIND_INFO 1
@@ -49,14 +35,16 @@ Boston, MA 02111-1307, USA. */
"
#define TARGET_OS_CPP_BUILTINS() \
-do { \
- builtin_define_std ("unix"); \
- builtin_define ("__gnu_linux__"); \
- builtin_define_std ("linux"); \
- builtin_assert ("system=linux"); \
- builtin_assert ("system=unix"); \
- builtin_assert ("system=posix"); \
-} while (0)
+ do \
+ { \
+ LINUX_TARGET_OS_CPP_BUILTINS(); \
+ if (flag_pic) \
+ { \
+ builtin_define ("__PIC__"); \
+ builtin_define ("__pic__"); \
+ } \
+ } \
+ while (0)
#undef TARGET_DEFAULT
#define TARGET_DEFAULT \
@@ -74,46 +62,6 @@ do { \
%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
%{static:-static}"
-#undef LIB_SPEC
-#define LIB_SPEC \
- "%{pthread:-lpthread} \
- %{shared: -lc} \
- %{!shared: \
- %{mieee-fp:-lieee} \
- %{profile:-lc_p} %{!profile: -lc}}"
-
-#if defined(HAVE_LD_EH_FRAME_HDR)
-#undef LINK_EH_SPEC
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
-#endif
-
-#undef STARTFILE_SPEC
-#if defined HAVE_LD_PIE
-#define STARTFILE_SPEC \
- "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \
- crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
-#else
-#define STARTFILE_SPEC \
- "%{!shared: %{pg|p|profile:gcrt1.o%s;:crt1.o%s}} \
- crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
-#endif
-
-#undef ENDFILE_SPEC
-#define ENDFILE_SPEC \
- "%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s"
-
-#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
-
-/* Determine whether the the entire c99 runtime
- is present in the runtime library. */
-#define TARGET_C99_FUNCTIONS 1
-
/* Output assembler code to STREAM to call the profiler. */
#undef FUNCTION_PROFILER