OSDN Git Service

2008-11-09 Thomas Schwinge <tschwinge@gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / config / gnu.h
1 /* Configuration common to all targets running the GNU system.  */
2
3 /*
4 Copyright (C) 1994, 1995, 1997, 1998, 1999, 2002, 2003, 2004, 2007, 2008 Free
5 Software Foundation, Inc.
6
7 This file is part of GCC.
8
9 GCC is free software: you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation, either version 3 of the License, or
12 (at your option) any later version.
13
14 GCC is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 GNU General Public License for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with GCC.  If not, see <http://www.gnu.org/licenses/>.
21 */
22
23 /* Provide GCC options for standard feature-test macros.  */
24 #undef CPP_SPEC
25 #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{bsd:-D_BSD_SOURCE}"
26
27 /* Default C library spec.  Use -lbsd-compat for gcc -bsd.  */
28 #undef LIB_SPEC
29 #define LIB_SPEC "%{pthread:-lpthread} %{bsd:-lbsd-compat} %{pg|p|profile:-lc_p;:-lc}"
30
31 /* Standard include directory.  In GNU, "/usr" is a four-letter word.  */
32 #undef STANDARD_INCLUDE_DIR
33 #define STANDARD_INCLUDE_DIR "/include"
34
35 /* The system headers under GNU are C++-aware.  */
36 #define NO_IMPLICIT_EXTERN_C
37
38 #define HURD_TARGET_OS_CPP_BUILTINS()           \
39     do {                                        \
40         builtin_define ("__gnu_hurd__");        \
41         builtin_define ("__GNU__");             \
42         builtin_define_std ("unix");            \
43         builtin_define_std ("MACH");            \
44         builtin_assert ("system=gnu");          \
45         builtin_assert ("system=mach");         \
46         builtin_assert ("system=unix");         \
47         builtin_assert ("system=posix");        \
48     } while (0)