This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RFA: Kill CPP_PREDEFINES in sparc/
- From: Neil Booth <neil at daikokuya dot co dot uk>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 16 May 2003 22:15:38 +0100
- Subject: RFA: Kill CPP_PREDEFINES in sparc/
I've created sparc/sysv4-only since sysv4 wants "sparc" defined but
almost no-one else does. I honestly doubt it's needed, I'll not add it
if requested.
I'm testing sparc/openbsd64.h and sparc/linux.h. OK to commit?
Neil.
* config.gcc (sparc-*-sysv4*): Add sparc/sysv4-only.h.
* sparc/aout.h, sparc/elf.h, sparc/freebsd.h, sparc/linux.h,
sparc/linux64.h, sparc/lite.h, sparc/litecoff.h, sparc/liteelf.h,
sparc/netbsd-elf.h, sparc/openbsd.h, sparc/openbsd64.h,
sparc/pbd.h, sparc/rtemself.h, sparc/sol2-64.h, sparc/sol2-bi.h,
sparc/sol2.h, sparc/sp64-elf.h, sparc/sp86-elf.h, sparc/sparc.h,
sparc/sysv4.h,
* sparc/sysv4-only.h: New.
Index: config.gcc
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config.gcc,v
retrieving revision 1.300
diff -u -p -r1.300 config.gcc
--- config.gcc 15 May 2003 21:47:28 -0000 1.300
+++ config.gcc 16 May 2003 21:16:07 -0000
@@ -1948,7 +1948,7 @@ sparc-*-solaris2*)
fi
;;
sparc-*-sysv4*)
- tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h"
+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sysv4-only.h"
tmake_file=t-svr4
extra_parts="crtbegin.o crtend.o"
;;
Index: config/sparc/aout.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/aout.h,v
retrieving revision 1.8
diff -u -p -r1.8 aout.h
--- config/sparc/aout.h 18 May 2002 23:47:21 -0000 1.8
+++ config/sparc/aout.h 16 May 2003 21:16:08 -0000
@@ -23,14 +23,6 @@ Boston, MA 02111-1307, USA. */
#define TARGET_VERSION fprintf (stderr, " (sparc)");
-/* Names to predefine in the preprocessor for this target machine.
- ??? It would be nice to not include any subtarget specific values here,
- however there's no way to portably provide subtarget values to
- CPP_PREFINES. Also, -D values in CPP_SUBTARGET_SPEC don't get turned into
- foo, __foo and __foo__. */
-
-#define CPP_PREDEFINES "-Dsparc -Acpu=sparc -Amachine=sparc"
-
/* These compiler options take an argument. We ignore -target for now. */
#define WORD_SWITCH_TAKES_ARG(STR) \
Index: config/sparc/elf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/elf.h,v
retrieving revision 1.7
diff -u -p -r1.7 elf.h
--- config/sparc/elf.h 3 Apr 2002 20:13:50 -0000 1.7
+++ config/sparc/elf.h 16 May 2003 21:16:08 -0000
@@ -19,9 +19,6 @@ along with GNU CC; see the file COPYING.
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-Dsparc -D__elf__"
-
#undef STARTFILE_SPEC
#define STARTFILE_SPEC "crt0.o%s crti.o%s crtbegin.o%s"
Index: config/sparc/freebsd.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/freebsd.h,v
retrieving revision 1.18
diff -u -p -r1.18 freebsd.h
--- config/sparc/freebsd.h 12 Mar 2003 02:29:08 -0000 1.18
+++ config/sparc/freebsd.h 16 May 2003 21:16:08 -0000
@@ -24,10 +24,6 @@ the Free Software Foundation, 675 Mass A
#undef CPP_CPU64_DEFAULT_SPEC
#define CPP_CPU64_DEFAULT_SPEC "-D__sparc64__ -D__sparc_v9__ -D__arch64__"
-/* Because we include sparc/sysv4.h. */
-#undef CPP_PREDEFINES
-/* Do not define it here, we now use TARGET_OS_CPP_BUILTINS. */
-
#define LINK_SPEC "%(link_arch) \
%{!mno-relax:%{!r:-relax}} \
%{p:%nconsider using `-pg' instead of `-p' with gprof(1)} \
Index: config/sparc/linux.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/linux.h,v
retrieving revision 1.44
diff -u -p -r1.44 linux.h
--- config/sparc/linux.h 16 Dec 2002 18:21:58 -0000 1.44
+++ config/sparc/linux.h 16 May 2003 21:16:08 -0000
@@ -19,6 +19,18 @@ along with GNU CC; see the file COPYING.
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("unix"); \
+ builtin_define_std ("linux"); \
+ builtin_define ("__gnu_linux__"); \
+ builtin_define ("__ELF__"); \
+ builtin_assert ("system=unix"); \
+ builtin_assert ("system=posix"); \
+ } \
+ while (0)
+
#define LINUX_DEFAULT_ELF
/* Don't assume anything about the header files. */
@@ -97,9 +109,6 @@ Boston, MA 02111-1307, USA. */
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE 32
-
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-D__ELF__ -Dunix -D__sparc__ -D__gnu_linux__ -Dlinux -Asystem=unix -Asystem=posix"
#undef CPP_SUBTARGET_SPEC
#ifdef USE_GNULIBC_1
Index: config/sparc/linux64.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/linux64.h,v
retrieving revision 1.65
diff -u -p -r1.65 linux64.h
--- config/sparc/linux64.h 16 Dec 2002 18:21:58 -0000 1.65
+++ config/sparc/linux64.h 16 May 2003 21:16:08 -0000
@@ -19,6 +19,19 @@ along with GNU CC; see the file COPYING.
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("unix"); \
+ builtin_define_std ("linux"); \
+ builtin_define ("_LONGLONG"); \
+ builtin_define ("__gnu_linux__"); \
+ builtin_define ("__ELF__"); \
+ builtin_assert ("system=unix"); \
+ builtin_assert ("system=posix"); \
+ } \
+ while (0)
+
#define LINUX_DEFAULT_ELF
/* Don't assume anything about the header files. */
@@ -44,7 +57,7 @@ Boston, MA 02111-1307, USA. */
#undef CPP_ARCH32_SPEC
#define CPP_ARCH32_SPEC "%{mlong-double-128:-D__LONG_DOUBLE_128__} \
--D__GCC_NEW_VARARGS__ -Acpu=sparc -Amachine=sparc"
+-D__GCC_NEW_VARARGS__"
#endif
@@ -110,9 +123,6 @@ Boston, MA 02111-1307, USA. */
#else
#define LIBGCC2_LONG_DOUBLE_TYPE_SIZE 64
#endif
-
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-D__ELF__ -Dunix -D_LONGLONG -D__sparc__ -D__gnu_linux__ -Dlinux -Asystem=unix -Asystem=posix"
#undef CPP_SUBTARGET_SPEC
#define CPP_SUBTARGET_SPEC "\
Index: config/sparc/lite.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/lite.h,v
retrieving revision 1.5
diff -u -p -r1.5 lite.h
--- config/sparc/lite.h 31 Mar 2002 03:11:20 -0000 1.5
+++ config/sparc/lite.h 16 May 2003 21:16:08 -0000
@@ -19,9 +19,6 @@ along with GNU CC; see the file COPYING.
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-Dsparc -Dsparclite -Acpu=sparc -Amachine=sparc"
-
#undef TARGET_VERSION
#define TARGET_VERSION fprintf (stderr, " (sparclite)");
Index: config/sparc/litecoff.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/litecoff.h,v
retrieving revision 1.11
diff -u -p -r1.11 litecoff.h
--- config/sparc/litecoff.h 18 May 2002 19:27:49 -0000 1.11
+++ config/sparc/litecoff.h 16 May 2003 21:16:08 -0000
@@ -21,8 +21,13 @@ Boston, MA 02111-1307, USA. */
#define BSS_SECTION_ASM_OP "\t.section\t\".bss\""
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-Dsparc -Dsparclite -Acpu=sparc -Amachine=sparc"
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("sparc"); \
+ builtin_define_std ("sparclite"); \
+ } \
+ while (0)
/* Default to stabs in COFF. */
Index: config/sparc/liteelf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/liteelf.h,v
retrieving revision 1.9
diff -u -p -r1.9 liteelf.h
--- config/sparc/liteelf.h 29 Aug 2002 21:40:18 -0000 1.9
+++ config/sparc/liteelf.h 16 May 2003 21:16:08 -0000
@@ -19,8 +19,12 @@ along with GNU CC; see the file COPYING.
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-D__sparc__ -D__sparclite__ -Acpu=sparc -Amachine=sparc"
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define ("__sparclite__"); \
+ } \
+ while (0)
/* Default to dwarf2 in ELF. */
Index: config/sparc/netbsd-elf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/netbsd-elf.h,v
retrieving revision 1.14
diff -u -p -r1.14 netbsd-elf.h
--- config/sparc/netbsd-elf.h 12 Mar 2003 20:30:06 -0000 1.14
+++ config/sparc/netbsd-elf.h 16 May 2003 21:16:08 -0000
@@ -39,10 +39,7 @@ Boston, MA 02111-1307, USA. */
#undef MD_EXEC_PREFIX
#undef MD_STARTFILE_PREFIX
-/* Make sure this is undefined. */
-#undef CPP_PREDEFINES
-
-/* CPP defines used by all NetBSD targets. */
+//* CPP defines used by all NetBSD targets. */
#undef CPP_SUBTARGET_SPEC
#define CPP_SUBTARGET_SPEC "%(netbsd_cpp_spec)"
Index: config/sparc/openbsd.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/openbsd.h,v
retrieving revision 1.8
diff -u -p -r1.8 openbsd.h
--- config/sparc/openbsd.h 20 Oct 2002 22:37:13 -0000 1.8
+++ config/sparc/openbsd.h 16 May 2003 21:16:08 -0000
@@ -22,8 +22,16 @@ Boston, MA 02111-1307, USA. */
#define OBSD_OLD_GAS
#include <openbsd.h>
-/* Run-time target specifications. */
-#define CPP_PREDEFINES "-D__unix__ -D__sparc__ -D__OpenBSD__ -Asystem=unix -Asystem=OpenBSD -Acpu=sparc -Amachine=sparc"
+/* Target OS builtins. */
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define ("__unix__"); \
+ builtin_define ("__OpenBSD__"); \
+ builtin_assert ("system=unix"); \
+ builtin_assert ("system=OpenBSD"); \
+ } \
+ while (0)
/* Layout of source language data types */
Index: config/sparc/openbsd64.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/openbsd64.h,v
retrieving revision 1.1
diff -u -p -r1.1 openbsd64.h
--- config/sparc/openbsd64.h 30 May 2002 20:35:58 -0000 1.1
+++ config/sparc/openbsd64.h 16 May 2003 21:16:08 -0000
@@ -30,9 +30,22 @@ Boston, MA 02111-1307, USA. */
#undef SPARC_DEFAULT_CMODEL
#define SPARC_DEFAULT_CMODEL CM_MEDMID
-/* Run-time target specifications. */
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-D__unix__ -D__sparc__ -D__sparc64__ -D__sparcv9__ -D__sparc_v9__ -D__arch64__ -D__ELF__ -D__OpenBSD__ -Asystem(unix) -Asystem(OpenBSD) -Acpu(sparc) -Amachine(sparc)"
+/* Target OS builtins. */
+#undef TARGET_OS_CPP_BUILTINS /* Defined in sp64-elf.h. */
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define ("__unix__"); \
+ builtin_define ("__OpenBSD__"); \
+ builtin_assert ("system=unix"); \
+ builtin_assert ("system=OpenBSD"); \
+ builtin_define ("__sparc64__"); \
+ builtin_define ("__sparcv9__"); \
+ builtin_define ("__sparc_v9__"); \
+ builtin_define ("__arch64__"); \
+ builtin_define ("__ELF__"); \
+ } \
+ while (0)
#undef CPP_SUBTARGET_SPEC
#define CPP_SUBTARGET_SPEC ""
Index: config/sparc/pbd.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/pbd.h,v
retrieving revision 1.13
diff -u -p -r1.13 pbd.h
--- config/sparc/pbd.h 16 Dec 2002 18:21:58 -0000 1.13
+++ config/sparc/pbd.h 16 May 2003 21:16:08 -0000
@@ -19,11 +19,16 @@ along with GNU CC; see the file COPYING.
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-
-/* Names to predefine in the preprocessor for this target machine. */
-
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-Dsparc -DUnicomPBD -Dunix -D__GCC_NEW_VARARGS__ -Asystem=unix -Acpu=sparc -Amachine=sparc"
+/* Target OS builtins. */
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("unix"); \
+ builtin_define_std ("UnicomPBD"); \
+ builtin_define ("__GCC_NEW_VARARGS__"); \
+ builtin_assert ("system=unix"); \
+ } \
+ while (0)
/* We want DBX format for use with gdb under COFF. */
Index: config/sparc/rtemself.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/rtemself.h,v
retrieving revision 1.8
diff -u -p -r1.8 rtemself.h
--- config/sparc/rtemself.h 12 Apr 2002 13:35:02 -0000 1.8
+++ config/sparc/rtemself.h 16 May 2003 21:16:08 -0000
@@ -19,8 +19,14 @@ along with GNU CC; see the file COPYING.
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-/* Specify predefined symbols in preprocessor. */
-
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-Dsparc -D__GCC_NEW_VARARGS__ -D__rtems__ \
- -D__USE_INIT_FINI__ -Asystem=rtems"
+/* Target OS builtins. */
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("sparc"); \
+ builtin_define ("__rtems__"); \
+ builtin_define ("__GCC_NEW_VARARGS__"); \
+ builtin_define ("__USE_INIT_FINI__"); \
+ builtin_assert ("system=rtems"); \
+ } \
+ while (0)
Index: config/sparc/sol2-64.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sol2-64.h,v
retrieving revision 1.3
diff -u -p -r1.3 sol2-64.h
--- config/sparc/sol2-64.h 12 Apr 2002 23:02:44 -0000 1.3
+++ config/sparc/sol2-64.h 16 May 2003 21:16:08 -0000
@@ -5,3 +5,11 @@
#define TARGET_DEFAULT \
(MASK_V9 + MASK_PTR64 + MASK_64BIT /* + MASK_HARD_QUAD */ + \
MASK_STACK_BIAS + MASK_FPU + MASK_LONG_DOUBLE_128)
+
+/* Target OS builtins. */
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("sparc"); \
+ } \
+ while (0)
Index: config/sparc/sol2-bi.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sol2-bi.h,v
retrieving revision 1.10
diff -u -p -r1.10 sol2-bi.h
--- config/sparc/sol2-bi.h 4 Apr 2003 13:00:09 -0000 1.10
+++ config/sparc/sol2-bi.h 16 May 2003 21:16:08 -0000
@@ -98,11 +98,9 @@
#define WINT_TYPE_SIZE 32
#undef CPP_ARCH32_SPEC
-#define CPP_ARCH32_SPEC "\
--D__GCC_NEW_VARARGS__ -Acpu=sparc -Amachine=sparc"
+#define CPP_ARCH32_SPEC "-D__GCC_NEW_VARARGS__"
#undef CPP_ARCH64_SPEC
-#define CPP_ARCH64_SPEC "\
--D__arch64__ -Acpu=sparc64 -Amachine=sparcv9 -D__sparcv9"
+#define CPP_ARCH64_SPEC "-D__arch64__ -D__sparcv9"
#undef CPP_ARCH_SPEC
#define CPP_ARCH_SPEC "\
Index: config/sparc/sol2.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sol2.h,v
retrieving revision 1.51
diff -u -p -r1.51 sol2.h
--- config/sparc/sol2.h 12 May 2003 09:51:35 -0000 1.51
+++ config/sparc/sol2.h 16 May 2003 21:16:08 -0000
@@ -23,9 +23,6 @@ Boston, MA 02111-1307, USA. */
/* Supposedly the same as vanilla sparc svr4, except for the stuff below: */
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-Dsparc"
-
/* This is here rather than in sparc.h because it's not known what
other assemblers will accept. */
Index: config/sparc/sp64-elf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sp64-elf.h,v
retrieving revision 1.24
diff -u -p -r1.24 sp64-elf.h
--- config/sparc/sp64-elf.h 29 Aug 2002 21:40:18 -0000 1.24
+++ config/sparc/sp64-elf.h 16 May 2003 21:16:08 -0000
@@ -38,8 +38,14 @@ Boston, MA 02111-1307, USA. */
#undef SPARC_DEFAULT_CMODEL
#define SPARC_DEFAULT_CMODEL CM_EMBMEDANY
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-Dsparc -D__ELF__ -Acpu=sparc -Amachine=sparc"
+/* Target OS builtins. */
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("sparc"); \
+ builtin_define ("__ELF__"); \
+ } \
+ while (0)
/* __svr4__ is used by the C library (FIXME) */
#undef CPP_SUBTARGET_SPEC
Index: config/sparc/sp86x-elf.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sp86x-elf.h,v
retrieving revision 1.10
diff -u -p -r1.10 sp86x-elf.h
--- config/sparc/sp86x-elf.h 29 Aug 2002 21:40:18 -0000 1.10
+++ config/sparc/sp86x-elf.h 16 May 2003 21:16:08 -0000
@@ -19,8 +19,13 @@ along with GNU CC; see the file COPYING.
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-D__sparc__ -D__sparclite86x__ -Acpu=sparc -Amachine=sparc"
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define ("__sparclite86x__"); \
+ builtin_define ("__ELF__"); \
+ } \
+ while (0)
/* Default to dwarf2 in ELF. */
Index: config/sparc/sparc.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sparc.h,v
retrieving revision 1.223
diff -u -p -r1.223 sparc.h
--- config/sparc/sparc.h 12 May 2003 09:51:35 -0000 1.223
+++ config/sparc/sparc.h 16 May 2003 21:16:09 -0000
@@ -25,6 +25,24 @@ Boston, MA 02111-1307, USA. */
/* Note that some other tm.h files include this one and then override
whatever definitions are necessary. */
+/* Target CPU builtins. */
+#define TARGET_CPU_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define ("__sparc__"); \
+ if (TARGET_64BIT) \
+ { \
+ builtin_assert ("cpu=sparc"); \
+ builtin_assert ("machine=sparc"); \
+ } \
+ else \
+ { \
+ builtin_assert ("cpu=sparc64"); \
+ builtin_assert ("machine=sparc64"); \
+ } \
+ } \
+ while (0)
+
/* Specify this in a cover file to provide bi-architecture (32/64) support. */
/* #define SPARC_BI_ARCH */
@@ -246,8 +264,8 @@ extern enum cmodel sparc_cmodel;
sparc64 in 32 bit environments, so for now we only use `sparc64' in
64 bit environments. */
-#define CPP_ARCH32_SPEC "-D__GCC_NEW_VARARGS__ -Acpu=sparc -Amachine=sparc"
-#define CPP_ARCH64_SPEC "-D__arch64__ -Acpu=sparc64 -Amachine=sparc64"
+#define CPP_ARCH32_SPEC "-D__GCC_NEW_VARARGS__"
+#define CPP_ARCH64_SPEC "-D__arch64__"
#define CPP_ARCH_DEFAULT_SPEC \
(DEFAULT_ARCH32_P ? CPP_ARCH32_SPEC : CPP_ARCH64_SPEC)
Index: config/sparc/sysv4-only.h
===================================================================
RCS file: config/sparc/sysv4-only.h
diff -N config/sparc/sysv4-only.h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ config/sparc/sysv4-only.h 16 May 2003 21:16:09 -0000
@@ -0,0 +1,35 @@
+/* Target macros for GNU compiler for SPARC running System V.4
+ Copyright (C) 2003
+ Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GCC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+/* Provide a set of pre-definitions and pre-assertions appropriate for
+ the SPARC running svr4. __svr4__ is our extension. */
+
+/* Target OS builtins. */ \
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("sparc"); \
+ builtin_define_std ("unix"); \
+ builtin_define ("__svr4__"); \
+ builtin_assert ("system=unix"); \
+ builtin_assert ("system=svr4"); \
+ } \
+ while (0)
Index: config/sparc/sysv4.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sparc/sysv4.h,v
retrieving revision 1.28
diff -u -p -r1.28 sysv4.h
--- config/sparc/sysv4.h 16 Dec 2002 18:21:59 -0000 1.28
+++ config/sparc/sysv4.h 16 May 2003 21:16:09 -0000
@@ -48,13 +48,6 @@ Boston, MA 02111-1307, USA. */
#undef SKIP_ASM_OP
#undef SET_ASM_OP /* Has no equivalent. See ASM_OUTPUT_DEF below. */
-/* Provide a set of pre-definitions and pre-assertions appropriate for
- the SPARC running svr4. __svr4__ is our extension. */
-
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES \
-"-Dsparc -Dunix -D__svr4__ -Asystem=unix -Asystem=svr4"
-
/* The native assembler can't compute differences between symbols in different
sections when generating pic code, so we must put jump tables in the
text section. */