cppdefault.h 2.71 KB
Newer Older
1 2
/* CPP Library.
   Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
3
   1999, 2000, 2003, 2004, 2006, 2007 Free Software Foundation, Inc.
4 5 6 7
   Contributed by Per Bothner, 1994-95.
   Based on CCCP program by Paul Rubin, June 1986
   Adapted to ANSI C, Richard Stallman, Jan 1987

8 9 10 11
   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU General Public License as published by the
   Free Software Foundation; either version 3, or (at your option) any
   later version.
12

13 14 15 16
   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
17

18 19 20
   You should have received a copy of the GNU General Public License
   along with this program; see the file COPYING3.  If not see
   <http://www.gnu.org/licenses/>.  */
21

22 23
#ifndef GCC_CPPDEFAULT_H
#define GCC_CPPDEFAULT_H
24 25 26 27 28 29 30 31 32 33 34 35 36

/* This is the default list of directories to search for include files.
   It may be overridden by the various -I and -ixxx options.

   #include "file" looks in the same directory as the current file,
   then this list.
   #include <file> just looks in this list.

   All these directories are treated as `system' include directories
   (they are not subject to pedantic warnings in some cases).  */

struct default_include
{
37 38
  const char *const fname;	/* The name of the directory.  */
  const char *const component;	/* The component containing the directory
39
				   (see update_path in prefix.c) */
40 41
  const char cplusplus;		/* Only look here if we're compiling C++.  */
  const char cxx_aware;		/* Includes in this directory don't need to
42 43
				   be wrapped in extern "C" when compiling
				   C++.  */
44
  const char add_sysroot;	/* FNAME should be prefixed by
45
				   cpp_SYSROOT.  */
46 47 48
  const char multilib;		/* FNAME should have the multilib path
				   specified with -imultilib
				   appended.  */
49 50 51 52 53 54
};

extern const struct default_include cpp_include_defaults[];
extern const char cpp_GCC_INCLUDE_DIR[];
extern const size_t cpp_GCC_INCLUDE_DIR_len;

55 56
/* The configure-time prefix, i.e., the value supplied as the argument
   to --prefix=.  */
57
extern const char cpp_PREFIX[];
58
/* The length of the configure-time prefix.  */
59
extern const size_t cpp_PREFIX_len;
60 61 62 63 64
/* The configure-time execution prefix.  This is typically the lib/gcc
   subdirectory of cpp_PREFIX.  */
extern const char cpp_EXEC_PREFIX[];
/* The run-time execution prefix.  This is typically the lib/gcc
   subdirectory of the actual installation.  */
65 66 67 68 69
extern const char *gcc_exec_prefix;

/* Return true if the toolchain is relocated.  */
bool cpp_relocated (void);

70
#endif /* ! GCC_CPPDEFAULT_H */