OSDN Git Service

* config/freebsd-spec.h (FBSD_CPP_PREDEFINES): Remove.
[pf3gnuchains/gcc-fork.git] / gcc / config / freebsd-spec.h
index 3fc4dcc..4d81d80 100644 (file)
@@ -48,30 +48,31 @@ Boston, MA 02111-1307, USA.  */
    || !strcmp ((STR), "soname") || !strcmp ((STR), "defsym")           \
    || !strcmp ((STR), "assert") || !strcmp ((STR), "dynamic-linker"))
 
-#if FBSD_MAJOR == 6
-#define FBSD_CPP_PREDEFINES \
-  "-D__FreeBSD__=6 -Dunix -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -Asystem=unix -Asystem=bsd -Asystem=FreeBSD"
-#endif
-
-#if FBSD_MAJOR == 5
-#define FBSD_CPP_PREDEFINES \
-  "-D__FreeBSD__=5 -Dunix -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -Asystem=unix -Asystem=bsd -Asystem=FreeBSD"
-#endif
-
-#if FBSD_MAJOR == 4
-#define FBSD_CPP_PREDEFINES \
-  "-D__FreeBSD__=4 -Dunix -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -Asystem=unix -Asystem=bsd -Asystem=FreeBSD"
-#endif
-
-#if FBSD_MAJOR == 3
-#define FBSD_CPP_PREDEFINES \
-  "-D__FreeBSD__=3 -Dunix -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -Asystem=unix -Asystem=bsd -Asystem=FreeBSD"
-#endif
-
-#ifndef FBSD_CPP_PREDEFINES
-#define FBSD_CPP_PREDEFINES \
-  "-D__FreeBSD__   -Dunix -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -Asystem=unix -Asystem=bsd -Asystem=FreeBSD"
-#endif
+#define FBSD_TARGET_OS_CPP_BUILTINS()                                  \
+  do                                                                   \
+    {                                                                  \
+       if (FBSD_MAJOR == 6)                                            \
+         builtin_define ("__FreeBSD__=6");                             \
+       else if (FBSD_MAJOR == 5)                                       \
+         builtin_define ("__FreeBSD__=5");                             \
+       else if (FBSD_MAJOR == 4)                                       \
+         builtin_define ("__FreeBSD__=4");                             \
+       else if (FBSD_MAJOR == 3)                                       \
+         builtin_define ("__FreeBSD__=3");                             \
+       else                                                            \
+         builtin_define ("__FreeBSD__");                               \
+       builtin_define_std ("unix");                                    \
+       builtin_define ("__ELF__");                                     \
+       builtin_define ("__KPRINTF_ATTRIBUTE__");                       \
+       builtin_assert ("system=unix");                                 \
+       builtin_assert ("system=bsd");                                  \
+       builtin_assert ("system=FreeBSD");                              \
+       FBSD_TARGET_CPU_CPP_BUILTINS();                                 \
+    }                                                                  \
+  while (0)
+
+/* Define the default FreeBSD-specific per-CPU hook code. */
+#define FBSD_TARGET_CPU_CPP_BUILTINS() do {} while (0)
 
 /* Provide a CPP_SPEC appropriate for FreeBSD.  We just deal with the GCC 
    option `-posix', and PIC issues.  */