aboutsummaryrefslogtreecommitdiff
path: root/gcc/cppdefault.h
diff options
context:
space:
mode:
authorZack Weinberg <zack@wolery.cumb.org>2000-07-06 22:52:03 +0000
committerZack Weinberg <zack@gcc.gnu.org>2000-07-06 22:52:03 +0000
commit60893f43178c015357ff117043231b3d1ac75030 (patch)
treee1f0d045fe9ad582c633fe044290f01a2df67b4e /gcc/cppdefault.h
parentdb30db99382a43a9469489a3b7b46f8d249838ab (diff)
downloadgcc-60893f43178c015357ff117043231b3d1ac75030.zip
gcc-60893f43178c015357ff117043231b3d1ac75030.tar.gz
gcc-60893f43178c015357ff117043231b3d1ac75030.tar.bz2
cppinit.c: Include cppdefault.h.
* cppinit.c: Include cppdefault.h. Refer to cpp_GCC_INCLUDE_DIR and cpp_GCC_INCLUDE_DIR_len, not directly to GCC_INCLUDE_DIR and its length. (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE, USER_LABEL_PREFIX, REGISTER_PREFIX, struct default_include, STANDARD_INCLUDE_DIR, STANDARD_INCLUDE_COMPONENT): Move to cppdefault.h. (include_defaults_array): Move to cppdefault.c. * cppdefault.h: New file. * cppdefault.c: New file. * Makefile.in (LIBCPP_OBJS): Add cppdefault.o. (cppinit.o): Don't apply $(PREPROCESSOR_DEFINES) to this file. (cppdefault.o): New rule; apply $(PREPROCESSOR_DEFINES) to this file. From-SVN: r34892
Diffstat (limited to 'gcc/cppdefault.h')
-rw-r--r--gcc/cppdefault.h106
1 files changed, 106 insertions, 0 deletions
diff --git a/gcc/cppdefault.h b/gcc/cppdefault.h
new file mode 100644
index 0000000..58ff939
--- /dev/null
+++ b/gcc/cppdefault.h
@@ -0,0 +1,106 @@
+/* CPP Library.
+ Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
+ 1999, 2000 Free Software Foundation, Inc.
+ Contributed by Per Bothner, 1994-95.
+ Based on CCCP program by Paul Rubin, June 1986
+ Adapted to ANSI C, Richard Stallman, Jan 1987
+
+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 2, or (at your option) any
+later version.
+
+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.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef __GCC_CPPDEFAULT__
+#define __GCC_CPPDEFAULT__
+
+/* This header contains declarations and/or #defines for all the
+ hard-wired defaults in cpp. Note it's used by both cpplib and
+ tradcpp. */
+
+#ifndef STANDARD_INCLUDE_DIR
+#define STANDARD_INCLUDE_DIR "/usr/include"
+#endif
+
+#ifndef STANDARD_INCLUDE_COMPONENT
+#define STANDARD_INCLUDE_COMPONENT 0
+#endif
+
+#ifdef CROSS_COMPILE
+#undef LOCAL_INCLUDE_DIR
+#undef SYSTEM_INCLUDE_DIR
+#undef STANDARD_INCLUDE_DIR
+#else
+#undef CROSS_INCLUDE_DIR
+#endif
+
+/* We let tm.h override the types used here, to handle trivial differences
+ such as the choice of unsigned int or long unsigned int for size_t.
+ When machines start needing nontrivial differences in the size type,
+ it would be best to do something here to figure out automatically
+ from other information what type to use. */
+
+/* The string value for __SIZE_TYPE__. */
+
+#ifndef SIZE_TYPE
+#define SIZE_TYPE "long unsigned int"
+#endif
+
+/* The string value for __PTRDIFF_TYPE__. */
+
+#ifndef PTRDIFF_TYPE
+#define PTRDIFF_TYPE "long int"
+#endif
+
+/* The string value for __WCHAR_TYPE__. */
+
+#ifndef WCHAR_TYPE
+#define WCHAR_TYPE "int"
+#endif
+
+/* The string value for __USER_LABEL_PREFIX__ */
+
+#ifndef USER_LABEL_PREFIX
+#define USER_LABEL_PREFIX ""
+#endif
+
+/* The string value for __REGISTER_PREFIX__ */
+
+#ifndef REGISTER_PREFIX
+#define REGISTER_PREFIX ""
+#endif
+
+/* 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
+{
+ const char *fname; /* The name of the directory. */
+ const char *component; /* The component containing the directory
+ (see update_path in prefix.c) */
+ int cplusplus; /* Only look here if we're compiling C++. */
+ int cxx_aware; /* Includes in this directory don't need to
+ be wrapped in extern "C" when compiling
+ C++. */
+};
+
+extern const struct default_include cpp_include_defaults[];
+extern const char cpp_GCC_INCLUDE_DIR[];
+extern const size_t cpp_GCC_INCLUDE_DIR_len;
+
+#endif /* cppdefault.h */