FSF GCC merge 02/23/03
[official-gcc.git] / gcc / config / pa / pa-hiux.h
blobc1d945c6daa63dcf4207e1c092df1f9094b9bd68
1 /* Definitions of target machine for GNU compiler, for HI-UX.
2 Copyright (C) 1993, 1995, 1996, 2002 Free Software Foundation, Inc.
4 This file is part of GNU CC.
6 GNU CC is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
11 GNU CC is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GNU CC; see the file COPYING. If not, write to
18 the Free Software Foundation, 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
21 /* HIUX is just a HPUX variant. We can simply use the HPUX configuration
22 for just about everything. */
24 /* OS cpp builtins are the one noteworthy difference between HPUX and HIUX.
25 The following defines are similar to those for hpux10 with the addition
26 of __H3050R and __H3050RX. */
27 #undef TARGET_OS_CPP_BUILTINS
28 #define TARGET_OS_CPP_BUILTINS() \
29 do \
30 { \
31 builtin_assert ("system=hiux"); \
32 builtin_assert ("system=unix"); \
33 builtin_define ("__hp9000s800"); \
34 builtin_define ("__hp9000s800__"); \
35 builtin_define ("__hiux"); \
36 builtin_define ("__hiux__"); \
37 builtin_define ("__unix"); \
38 builtin_define ("__unix__"); \
39 builtin_define ("__H3050R"); \
40 builtin_define ("__H3050RX"); \
41 if (c_language == clk_cplusplus) \
42 { \
43 builtin_define ("_HIUX_SOURCE"); \
44 builtin_define ("_INCLUDE_LONGLONG"); \
45 } \
46 else if (!flag_iso) \
47 { \
48 builtin_define ("_HIUX_SOURCE"); \
49 if (preprocessing_trad_p ()) \
50 { \
51 builtin_define ("hp9000s800"); \
52 builtin_define ("hppa"); \
53 builtin_define ("hiux"); \
54 builtin_define ("unix"); \
55 builtin_define ("__CLASSIC_C__"); \
56 builtin_define ("_PWB"); \
57 builtin_define ("PWB"); \
58 } \
59 else \
60 builtin_define ("__STDC_EXT__"); \
61 } \
62 if (TARGET_SIO) \
63 builtin_define ("_SIO"); \
64 else \
65 { \
66 builtin_define ("__hp9000s700"); \
67 builtin_define ("__hp9000s700__"); \
68 builtin_define ("_WSIO"); \
69 } \
70 } \
71 while (0)
73 #undef SUBTARGET_SWITCHES
74 #define SUBTARGET_SWITCHES \
75 { "sio", MASK_SIO, N_("Generate cpp defines for server IO") }, \
76 { "wsio", -MASK_SIO, N_("Generate cpp defines for workstation IO") },