OSDN Git Service

2007-02-15 Paolo Bonzini <bonzini@gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / cppdefault.h
1 /* CPP Library.
2    Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
3    1999, 2000, 2003, 2004, 2006 Free Software Foundation, Inc.
4    Contributed by Per Bothner, 1994-95.
5    Based on CCCP program by Paul Rubin, June 1986
6    Adapted to ANSI C, Richard Stallman, Jan 1987
7
8 This program is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published by the
10 Free Software Foundation; either version 2, or (at your option) any
11 later version.
12
13 This program 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 this program; if not, write to the Free Software
20 Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
21
22 #ifndef GCC_CPPDEFAULT_H
23 #define GCC_CPPDEFAULT_H
24
25 /* This is the default list of directories to search for include files.
26    It may be overridden by the various -I and -ixxx options.
27
28    #include "file" looks in the same directory as the current file,
29    then this list.
30    #include <file> just looks in this list.
31
32    All these directories are treated as `system' include directories
33    (they are not subject to pedantic warnings in some cases).  */
34
35 struct default_include
36 {
37   const char *const fname;      /* The name of the directory.  */
38   const char *const component;  /* The component containing the directory
39                                    (see update_path in prefix.c) */
40   const char cplusplus;         /* Only look here if we're compiling C++.  */
41   const char cxx_aware;         /* Includes in this directory don't need to
42                                    be wrapped in extern "C" when compiling
43                                    C++.  */
44   const char add_sysroot;       /* FNAME should be prefixed by
45                                    cpp_SYSROOT.  */
46   const char multilib;          /* FNAME should have the multilib path
47                                    specified with -imultilib
48                                    appended.  */
49 };
50
51 extern const struct default_include cpp_include_defaults[];
52 extern const char cpp_GCC_INCLUDE_DIR[];
53 extern const size_t cpp_GCC_INCLUDE_DIR_len;
54
55 extern const char cpp_PREFIX[];
56 extern const size_t cpp_PREFIX_len;
57 extern const char *gcc_exec_prefix;
58
59 /* Return true if the toolchain is relocated.  */
60 bool cpp_relocated (void);
61
62 #endif /* ! GCC_CPPDEFAULT_H */