]>
Commit | Line | Data |
---|---|---|
f2feed2c | 1 | /* Definitions for Intel 386 running QNX/Neutrino. |
2f83c7d6 | 2 | Copyright (C) 2002, 2003, 2007 Free Software Foundation, Inc. |
f2feed2c | 3 | |
a805d35f | 4 | This file is part of GCC. |
f2feed2c | 5 | |
a805d35f | 6 | GCC is free software; you can redistribute it and/or modify |
f2feed2c | 7 | it under the terms of the GNU General Public License as published by |
2f83c7d6 | 8 | the Free Software Foundation; either version 3, or (at your option) |
f2feed2c GP |
9 | any later version. |
10 | ||
a805d35f | 11 | GCC is distributed in the hope that it will be useful, |
f2feed2c GP |
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. | |
15 | ||
16 | You should have received a copy of the GNU General Public License | |
2f83c7d6 NC |
17 | along with GCC; see the file COPYING3. If not see |
18 | <http://www.gnu.org/licenses/>. */ | |
f2feed2c | 19 | |
f2feed2c GP |
20 | #undef DEFAULT_PCC_STRUCT_RETURN |
21 | #define DEFAULT_PCC_STRUCT_RETURN 1 | |
22 | ||
23 | #undef TARGET_VERSION | |
24 | #define TARGET_VERSION fprintf (stderr, " (QNX/Neutrino/i386 ELF)"); | |
25 | ||
26 | #undef TARGET_OS_CPP_BUILTINS | |
27 | #define TARGET_OS_CPP_BUILTINS() \ | |
28 | do \ | |
29 | { \ | |
30 | builtin_define_std ("__X86__"); \ | |
31 | builtin_define_std ("__QNXNTO__"); \ | |
32 | builtin_define_std ("__QNX__"); \ | |
33 | builtin_define_std ("__ELF__"); \ | |
34 | builtin_define_std ("__LITTLEENDIAN__");\ | |
35 | builtin_assert ("system=qnx"); \ | |
36 | builtin_assert ("system=qnxnto"); \ | |
37 | builtin_assert ("system=nto"); \ | |
38 | builtin_assert ("system=unix"); \ | |
f2feed2c GP |
39 | } \ |
40 | while (0) | |
41 | ||
42 | #undef THREAD_MODEL_SPEC | |
43 | #define THREAD_MODEL_SPEC "posix" | |
44 | ||
2989d30c | 45 | #ifdef CROSS_DIRECTORY_STRUCTURE |
f2feed2c GP |
46 | #define SYSROOT_SUFFIX_SPEC "x86" |
47 | #endif | |
48 | ||
49 | #undef STARTFILE_SPEC | |
50 | #define STARTFILE_SPEC \ | |
51 | "%{!shared: \ | |
52 | %{!symbolic: \ | |
53 | %{pg:mcrt1.o%s} \ | |
54 | %{!pg:%{p:mcrt1.o%s} \ | |
55 | %{!p:crt1.o%s}}}} \ | |
56 | crti.o%s \ | |
57 | %{fexceptions: crtbegin.o%s} \ | |
58 | %{!fexceptions: %R/lib/crtbegin.o}" | |
59 | ||
60 | #undef ENDFILE_SPEC | |
61 | #define ENDFILE_SPEC \ | |
62 | "crtend.o%s crtn.o%s" | |
63 | ||
64 | #undef LINK_SPEC | |
65 | #define LINK_SPEC \ | |
66 | "%{h*} %{v:-V} \ | |
67 | %{b} \ | |
68 | %{static:-dn -Bstatic} \ | |
69 | %{shared:-G -dy -z text} \ | |
70 | %{symbolic:-Bsymbolic -G -dy -z text} \ | |
71 | %{G:-G} \ | |
72 | %{YP,*} \ | |
73 | %{!YP,*:%{p:-Y P,%R/lib} \ | |
74 | %{!p:-Y P,%R/lib}} \ | |
75 | %{Qy:} %{!Qn:-Qy} \ | |
76 | -m i386nto \ | |
77 | %{!shared: --dynamic-linker /usr/lib/ldqnx.so.2}" | |
78 | ||
79 | ||
80 | #undef SIZE_TYPE | |
81 | #define SIZE_TYPE "unsigned int" | |
82 | ||
83 | #undef PTRDIFF_TYPE | |
84 | #define PTRDIFF_TYPE "int" | |
85 | ||
86 | #undef WCHAR_TYPE | |
87 | #define WCHAR_TYPE "long unsigned int" | |
88 | ||
89 | #undef WCHAR_TYPE_SIZE | |
90 | #define WCHAR_TYPE_SIZE BITS_PER_WORD | |
91 | ||
92 | #define NO_IMPLICIT_EXTERN_C 1 | |
93 |