From 76642aabbd91c89cfae1c3ba2fa61785b6fbabd6 Mon Sep 17 00:00:00 2001 From: Carlos O'Donell Date: Mon, 20 Nov 2006 17:15:27 +0000 Subject: cppdefault.c: Define cpp_PREFIX, cpp_PREFIX_len, and gcc_exec_prefix. gcc/ 2006-11-20 Carlos O'Donell Mark Mitchell * cppdefault.c: Define cpp_PREFIX, cpp_PREFIX_len, and gcc_exec_prefix. (cpp_relocated): New function. * cppdefault.h: Declare cpp_PREFIX, cpp_PREFIX_len, gcc_exec_prefix and cpp_relocated. * Makefile.in (PREPROCESSOR_DEFINES): Add -DPREFIX option. * c-incpath.c (add_standard_paths): Call cpp_relocated. If relocated, replace configured prefix with gcc_exec_prefix. Co-Authored-By: Mark Mitchell From-SVN: r119017 --- gcc/cppdefault.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gcc/cppdefault.c') diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c index d040558..c72cb39 100644 --- a/gcc/cppdefault.c +++ b/gcc/cppdefault.c @@ -96,3 +96,31 @@ const size_t cpp_GCC_INCLUDE_DIR_len = sizeof GCC_INCLUDE_DIR - 8; const char cpp_GCC_INCLUDE_DIR[] = ""; const size_t cpp_GCC_INCLUDE_DIR_len = 0; #endif + +/* The configured prefix. */ +const char cpp_PREFIX[] = PREFIX; +const size_t cpp_PREFIX_len = sizeof PREFIX - 1; + +/* This value is set by cpp_relocated at runtime */ +const char *gcc_exec_prefix; + +/* Return true if the toolchain is relocated. */ +bool +cpp_relocated (void) +{ + static int relocated = -1; + + /* A relocated toolchain ignores standard include directories. */ + if (relocated == -1) + { + /* Check if the toolchain was relocated? */ + GET_ENVIRONMENT (gcc_exec_prefix, "GCC_EXEC_PREFIX"); + if (gcc_exec_prefix) + relocated = 1; + else + relocated = 0; + } + + return relocated; +} + -- cgit v1.1