Initial revision
[official-gcc.git] / gcc / config / i386 / osfelf.h
blob4604a341175cbd60b61c376c590d18ab672582c4
1 /* Definitions of target machine for GNU compiler.
2 Intel 386 (OSF/1 with ELF) version.
3 Copyright (C) 1993 Free Software Foundation, Inc.
5 This file is part of GNU CC.
7 GNU CC is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
12 GNU CC is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GNU CC; see the file COPYING. If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA. */
22 #include "config/i386/osfrose.h"
24 #undef CPP_PREDEFINES
25 #define CPP_PREDEFINES "-DOSF -DOSF1 -Dunix -Asystem(xpg4)"
27 #undef CPP_SPEC
28 #define CPP_SPEC "%(cpp_cpu) %[cpp_cpu] \
29 %{mrose: -D__ROSE__ %{!pic-none: -D__SHARED__}} \
30 %{!mrose: -D__ELF__ %{fpic: -D__SHARED__}} \
31 %{mno-underscores: -D__NO_UNDERSCORES__} \
32 %{!mrose: %{!munderscores: -D__NO_UNDERSCORES__}} \
33 %{.S: %{!ansi:%{!traditional:%{!traditional-cpp:%{!ftraditional: -traditional}}}}} \
34 %{.S: -D__LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY}} \
35 %{.cc: -D__LANGUAGE_C_PLUS_PLUS} \
36 %{.cxx: -D__LANGUAGE_C_PLUS_PLUS} \
37 %{.C: -D__LANGUAGE_C_PLUS_PLUS} \
38 %{.m: -D__LANGUAGE_OBJECTIVE_C} \
39 %{!.S: -D__LANGUAGE_C %{!ansi:-DLANGUAGE_C}}"
41 /* Turn on -pic-extern by default for OSF/rose, -fpic for ELF. */
42 #undef CC1_SPEC
43 #define CC1_SPEC "\
44 %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \
45 %{!melf: %{!mrose: -melf }} \
46 %{!mrose: %{!munderscores: %{!mno-underscores: -mno-underscores }} \
47 %{!mmcount: %{!mno-mcount: %{!mmcount-ptr: -mmcount-ptr }}}} \
48 %{mrose: %{!mmcount: %{!mno-mcount: %{!mmcount-ptr: -mmcount }}} \
49 %{pic-extern: -mhalf-pic } %{pic-lib: -mhalf-pic } \
50 %{!pic-extern: %{!pic-lib: %{pic-none: -mno-half-pic} %{!pic-none: -mhalf-pic}}} \
51 %{pic-calls: } %{pic-names*: }}"
53 #undef ASM_SPEC
54 #define ASM_SPEC "%{v*: -v}"
56 #undef LINK_SPEC
57 #define LINK_SPEC "%{v*: -v} \
58 %{mrose: %{!noshrlib: %{pic-none: -noshrlib} %{!pic-none: -warn_nopic}} \
59 %{nostdlib} %{noshrlib} %{glue}} \
60 %{!mrose: %{dy} %{dn} %{glue: } \
61 %{h*} %{z*} \
62 %{static:-dn -Bstatic} \
63 %{shared:-G -dy} \
64 %{symbolic:-Bsymbolic -G -dy} \
65 %{G:-G} \
66 %{!dy: %{!dn: %{!static: %{!shared: %{!symbolic: \
67 %{noshrlib: -dn } %{pic-none: -dn } \
68 %{!noshrlib: %{!pic-none: -dy}}}}}}}}"
70 #undef TARGET_VERSION_INTERNAL
71 #undef TARGET_VERSION
73 #undef I386_VERSION
74 #define I386_VERSION " 80386, ELF objects"
76 #define TARGET_VERSION_INTERNAL(STREAM) fputs (I386_VERSION, STREAM)
77 #define TARGET_VERSION TARGET_VERSION_INTERNAL (stderr)
79 #undef OBJECT_FORMAT_ROSE