1 /* CPP Library. 2 Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 3 1999, 2000 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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 21 22 #ifndef GCC_CPPDEFAULT_H 23 #define GCC_CPPDEFAULT_H 24 25 /* This header contains declarations and/or #defines for all the 26 hard-wired defaults in cpp. Note it's used by both cpplib and 27 tradcpp. */ 28 29 #ifndef STANDARD_INCLUDE_DIR 30 #define STANDARD_INCLUDE_DIR "/usr/include" 31 #endif 32 33 #ifndef STANDARD_INCLUDE_COMPONENT 34 #define STANDARD_INCLUDE_COMPONENT 0 35 #endif 36 37 #ifdef CROSS_COMPILE 38 #undef LOCAL_INCLUDE_DIR 39 #undef SYSTEM_INCLUDE_DIR 40 #undef STANDARD_INCLUDE_DIR 41 #else 42 #undef CROSS_INCLUDE_DIR 43 #endif 44 45 /* We let tm.h override the types used here, to handle trivial differences 46 such as the choice of unsigned int or long unsigned int for size_t. 47 When machines start needing nontrivial differences in the size type, 48 it would be best to do something here to figure out automatically 49 from other information what type to use. */ 50 51 /* The string value for __SIZE_TYPE__. */ 52 53 #ifndef SIZE_TYPE 54 #define SIZE_TYPE "long unsigned int" 55 #endif 56 57 /* The string value for __PTRDIFF_TYPE__. */ 58 59 #ifndef PTRDIFF_TYPE 60 #define PTRDIFF_TYPE "long int" 61 #endif 62 63 /* The string value for __WCHAR_TYPE__. */ 64 65 #ifndef WCHAR_TYPE 66 #define WCHAR_TYPE "int" 67 #endif 68 69 /* The string value for __WINT_TYPE__. */ 70 71 #ifndef WINT_TYPE 72 #define WINT_TYPE "unsigned int" 73 #endif 74 75 /* The string value for __USER_LABEL_PREFIX__ */ 76 77 #ifndef USER_LABEL_PREFIX 78 #define USER_LABEL_PREFIX "" 79 #endif 80 81 /* The string value for __REGISTER_PREFIX__ */ 82 83 #ifndef REGISTER_PREFIX 84 #define REGISTER_PREFIX "" 85 #endif 86 87 /* This is the default list of directories to search for include files. 88 It may be overridden by the various -I and -ixxx options. 89 90 #include "file" looks in the same directory as the current file, 91 then this list. 92 #include <file> just looks in this list. 93 94 All these directories are treated as `system' include directories 95 (they are not subject to pedantic warnings in some cases). */ 96 97 struct default_include 98 { 99 const char *const fname; /* The name of the directory. */ 100 const char *const component; /* The component containing the directory 101 (see update_path in prefix.c) */ 102 const int cplusplus; /* Only look here if we're compiling C++. */ 103 const int cxx_aware; /* Includes in this directory don't need to 104 be wrapped in extern "C" when compiling 105 C++. */ 106 }; 107 108 extern const struct default_include cpp_include_defaults[]; 109 extern const char cpp_GCC_INCLUDE_DIR[]; 110 extern const size_t cpp_GCC_INCLUDE_DIR_len; 111 112 #endif /* ! GCC_CPPDEFAULT_H */ 113