xref: /openbsd-src/gnu/usr.bin/gcc/gcc/config/i386/linux-aout.h (revision c87b03e512fc05ed6e0222f6fb0ae86264b1d05b)
1 /* Definitions for Intel 386 running Linux-based GNU systems using a.out.
2    Copyright (C) 1992, 1994, 1995, 1997, 1998, 2002
3    Free Software Foundation, Inc.
4    Contributed by H.J. Lu (hjl@nynexst.com)
5 
6 This file is part of GNU CC.
7 
8 GNU CC is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2, or (at your option)
11 any later version.
12 
13 GNU CC is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 GNU General Public License for more details.
17 
18 You should have received a copy of the GNU General Public License
19 along with GNU CC; see the file COPYING.  If not, write to
20 the Free Software Foundation, 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA.  */
22 
23 #undef ASM_COMMENT_START
24 #define ASM_COMMENT_START "#"
25 
26 #define TARGET_OS_CPP_BUILTINS()		\
27   do						\
28     {						\
29 	builtin_define_std ("linux");		\
30 	builtin_define_std ("unix");		\
31 	builtin_define ("__gnu_linux__");	\
32 	builtin_assert ("system=posix");	\
33 	if (flag_pic)				\
34 	  {					\
35 	    builtin_define ("__PIC__");		\
36 	    builtin_define ("__pic__");		\
37 	  }					\
38     }						\
39   while (0)
40 
41 #undef CPP_SPEC
42 #define CPP_SPEC "%{posix:-D_POSIX_SOURCE}"
43 
44 #undef SIZE_TYPE
45 #define SIZE_TYPE "unsigned int"
46 
47 #undef PTRDIFF_TYPE
48 #define PTRDIFF_TYPE "int"
49 
50 #undef WCHAR_TYPE
51 #define WCHAR_TYPE "long int"
52 
53 #undef WCHAR_TYPE_SIZE
54 #define WCHAR_TYPE_SIZE BITS_PER_WORD
55 
56 /* Don't default to pcc-struct-return, because gcc is the only compiler,
57    and we want to retain compatibility with older gcc versions.  */
58 #define DEFAULT_PCC_STRUCT_RETURN 0
59 
60 #undef LIB_SPEC
61 
62 #if 1
63 /* We no longer link with libc_p.a or libg.a by default. If you
64    want to profile or debug the GNU/Linux C library, please add
65    -lc_p or -ggdb to LDFLAGS at the link time, respectively.  */
66 #define LIB_SPEC \
67 "%{mieee-fp:-lieee} %{p:-lgmon} %{pg:-lgmon} %{!ggdb:-lc} %{ggdb:-lg}"
68 #else
69 #define LIB_SPEC \
70 "%{mieee-fp:-lieee} %{p:-lgmon -lc_p} %{pg:-lgmon -lc_p} \
71  %{!p:%{!pg:%{!g*:-lc} %{g*:-lg -static}}}"
72 #endif
73 
74 
75 #undef LINK_SPEC
76 #define LINK_SPEC	"-m i386linux"
77