aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/i386/beos-elf.h
diff options
context:
space:
mode:
authorNeil Booth <neil@daikokuya.demon.co.uk>2002-06-05 17:01:31 +0000
committerNeil Booth <neil@gcc.gnu.org>2002-06-05 17:01:31 +0000
commitf23a084df7341350693b43f1bee2317a35cbcd8d (patch)
tree5ceb7f827fd279587802dbcf6d2e5bf81649bfc0 /gcc/config/i386/beos-elf.h
parentb80ee165bdf5173d9a4f55f41b11a2ceaaae4c18 (diff)
downloadgcc-f23a084df7341350693b43f1bee2317a35cbcd8d.zip
gcc-f23a084df7341350693b43f1bee2317a35cbcd8d.tar.gz
gcc-f23a084df7341350693b43f1bee2317a35cbcd8d.tar.bz2
gnu.h: Undef TARGET_OS_CPP_BUILTINS.
config: * alpha/gnu.h: Undef TARGET_OS_CPP_BUILTINS. * i386/beos-elf.h: Use TARGET_OS_CPP_BUILTINS rather than CPP_PREDEFINES and part of CPP_SPEC. i386/freebsd-aout.h, i386/gas.h, i386/gnu.h, i386/linux-aout.h, i386/linux.h, i386/moss.h, i386/xm-vsta.h: Similarly. From-SVN: r54286
Diffstat (limited to 'gcc/config/i386/beos-elf.h')
-rw-r--r--gcc/config/i386/beos-elf.h29
1 files changed, 19 insertions, 10 deletions
diff --git a/gcc/config/i386/beos-elf.h b/gcc/config/i386/beos-elf.h
index e7613b8..7f9c2e2 100644
--- a/gcc/config/i386/beos-elf.h
+++ b/gcc/config/i386/beos-elf.h
@@ -67,17 +67,26 @@ Boston, MA 02111-1307, USA. */
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE 16
-
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-D__ELF__ -D__BEOS__ -D__INTEL__ -D_X86_=1 \
--D__stdcall=__attribute__((__stdcall__)) \
--D__cdecl=__attribute__((__cdecl__)) \
--D__declspec(x)=__attribute__((x)) \
--Asystem=beos"
-
-#undef CPP_SPEC
-#define CPP_SPEC "%{!no-fPIC:%{!no-fpic:-D__PIC__ -D__pic__}}"
+#define TARGET_OS_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define ("__ELF__"); \
+ builtin_define ("__BEOS__"); \
+ builtin_define ("__INTEL__"); \
+ builtin_define ("_X86_"); \
+ builtin_define ("__stdcall=__attribute__((__stdcall__))"); \
+ builtin_define ("__cdecl=__attribute__((__cdecl__))"); \
+ builtin_define ("__declspec(x)=__attribute__((x))"); \
+ builtin_assert ("system=beos"); \
+ if (flag_pic) \
+ { \
+ builtin_define ("__PIC__"); \
+ builtin_define ("__pic__"); \
+ } \
+ } \
+ while (0)
+
/* BeOS uses lots of multichars, so don't warn about them unless the
user explicitly asks for the warnings with -Wmultichar. Note that
CC1_SPEC is used for both cc1 and cc1plus. */