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