FSF GCC merge 02/23/03
[official-gcc.git] / gcc / config / i386 / gnu.h
blobacf2d3fdac828d49492ef494650f683deff5ebd9
1 /* Configuration for an i386 running GNU with ELF as the target machine. */
3 #undef TARGET_VERSION
4 #define TARGET_VERSION fprintf (stderr, " (i386 GNU)");
6 #undef TARGET_OS_CPP_BUILTINS /* config.gcc includes i386/linux.h. */
7 #define TARGET_OS_CPP_BUILTINS() \
8 do \
9 { \
10 builtin_define_std ("MACH"); \
11 builtin_define_std ("unix"); \
12 builtin_define ("__ELF__"); \
13 builtin_define ("__GNU__"); \
14 builtin_define ("__gnu_hurd__"); \
15 builtin_assert ("system=gnu"); \
16 builtin_assert ("system=mach"); \
17 builtin_assert ("system=posix"); \
18 builtin_assert ("system=unix"); \
19 if (flag_pic) \
20 { \
21 builtin_define ("__PIC__"); \
22 builtin_define ("__pic__"); \
23 } \
24 } \
25 while (0)
27 #undef CPP_SPEC
28 #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{bsd:-D_BSD_SOURCE}"
30 #undef CC1_SPEC
31 #define CC1_SPEC "%(cc1_cpu)"
33 #undef LINK_SPEC
34 #define LINK_SPEC "-m elf_i386 %{shared:-shared} \
35 %{!shared: \
36 %{!static: \
37 %{rdynamic:-export-dynamic} \
38 %{!dynamic-linker:-dynamic-linker /lib/ld.so}} \
39 %{static:-static}}"
41 #undef STARTFILE_SPEC
42 #define STARTFILE_SPEC \
43 "%{!shared: \
44 %{!static: \
45 %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} %{!p:crt1.o%s}}} \
46 %{static:crt0.o%s}} \
47 crti.o%s %{static:crtbeginT.o%s}\
48 %{!static:%{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}}"
50 /* FIXME: Is a Hurd-specific fallback mechanism necessary? */
51 #undef MD_FALLBACK_FRAME_STATE_FOR