Index: Makefile.in =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/Makefile.in,v retrieving revision 1.1008 diff -c -r1.1008 Makefile.in *** Makefile.in 5 Mar 2003 13:04:29 -0000 1.1008 --- Makefile.in 6 Mar 2003 05:03:30 -0000 *************** *** 285,293 **** # Test to see whether exists in the system header files. LIMITS_H_TEST = [ -f $(SYSTEM_HEADER_DIR)/limits.h ] ! # Directory for prefix to system directories, for # each of $(system_prefix)/usr/include, $(system_prefix)/usr/lib, etc. TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@ target=@target@ target_alias=@target_alias@ --- 285,294 ---- # Test to see whether exists in the system header files. LIMITS_H_TEST = [ -f $(SYSTEM_HEADER_DIR)/limits.h ] ! # Directories for prefix to system directories, for # each of $(system_prefix)/usr/include, $(system_prefix)/usr/lib, etc. TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@ + TARGET_HEADER_SYSTEM_ROOT = @TARGET_HEADER_SYSTEM_ROOT@ target=@target@ target_alias=@target_alias@ *************** *** 2275,2281 **** -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \ -DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \ -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \ ! @TARGET_SYSTEM_ROOT_DEFINE@ LIBCPP_OBJS = cpplib.o cpplex.o cppmacro.o cppexp.o cppfiles.o cpptrad.o \ cpphash.o cpperror.o cppinit.o \ --- 2276,2282 ---- -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \ -DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \ -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \ ! @TARGET_HEADER_SYSTEM_ROOT_DEFINE@ LIBCPP_OBJS = cpplib.o cpplex.o cppmacro.o cppexp.o cppfiles.o cpptrad.o \ cpphash.o cpperror.o cppinit.o \ Index: configure.in =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/configure.in,v retrieving revision 1.649 diff -c -r1.649 configure.in *** configure.in 4 Mar 2003 21:48:51 -0000 1.649 --- configure.in 6 Mar 2003 05:03:33 -0000 *************** *** 554,560 **** esac TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"$(TARGET_SYSTEM_ROOT)\"' ! CROSS_SYSTEM_HEADER_DIR='$(TARGET_SYSTEM_ROOT)$(NATIVE_SYSTEM_HEADER_DIR)' if test "x$exec_prefix" = xNONE; then if test "x$prefix" = xNONE; then --- 554,562 ---- esac TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"$(TARGET_SYSTEM_ROOT)\"' ! TARGET_HEADER_SYSTEM_ROOT=$TARGET_SYSTEM_ROOT ! TARGET_HEADER_SYSTEM_ROOT_DEFINE='-DTARGET_HEADER_SYSTEM_ROOT=\"$(TARGET_HEADER_SYSTEM_ROOT)\"' ! CROSS_SYSTEM_HEADER_DIR='$(TARGET_HEADER_SYSTEM_ROOT)$(NATIVE_SYSTEM_HEADER_DIR)' if test "x$exec_prefix" = xNONE; then if test "x$prefix" = xNONE; then *************** *** 575,584 **** --- 577,601 ---- ], [ TARGET_SYSTEM_ROOT= TARGET_SYSTEM_ROOT_DEFINE= + TARGET_HEADER_SYSTEM_ROOT= + TARGET_HEADER_SYSTEM_ROOT_DEFINE= CROSS_SYSTEM_HEADER_DIR='$(gcc_tooldir)/sys-include' ]) + AC_ARG_WITH(header-sysroot, + [ --with-header-sysroot[=DIR] Search for usr/include, et al, within DIR.], + [ + case ${with_header_sysroot} in + yes) TARGET_HEADER_SYSTEM_ROOT='${exec_prefix}/${target_alias}/sys-root' ;; + *) TARGET_HEADER_SYSTEM_ROOT=$with_headers_sysroot ;; + esac + + TARGET_HEADER_SYSTEM_ROOT_DEFINE='-DTARGET_HEADER_SYSTEM_ROOT=\"$(TARGET_HEADER_SYSTEM_ROOT)\"' + CROSS_SYSTEM_HEADER_DIR='$(TARGET_HEADER_SYSTEM_ROOT)$(NATIVE_SYSTEM_HEADER_DIR)' + ]) AC_SUBST(TARGET_SYSTEM_ROOT) AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE) + AC_SUBST(TARGET_HEADER_SYSTEM_ROOT) + AC_SUBST(TARGET_HEADER_SYSTEM_ROOT_DEFINE) AC_SUBST(CROSS_SYSTEM_HEADER_DIR) # Stage specific cflags for build. Index: cppdefault.c =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/cppdefault.c,v retrieving revision 1.7 diff -c -r1.7 cppdefault.c *** cppdefault.c 1 Mar 2003 14:31:12 -0000 1.7 --- cppdefault.c 6 Mar 2003 05:03:34 -0000 *************** *** 33,39 **** #define STANDARD_INCLUDE_COMPONENT 0 #endif ! #if defined (CROSS_COMPILE) && !defined (TARGET_SYSTEM_ROOT) # undef LOCAL_INCLUDE_DIR # undef SYSTEM_INCLUDE_DIR # undef STANDARD_INCLUDE_DIR --- 33,39 ---- #define STANDARD_INCLUDE_COMPONENT 0 #endif ! #if defined (CROSS_COMPILE) && !defined (TARGET_HEADER_SYSTEM_ROOT) # undef LOCAL_INCLUDE_DIR # undef SYSTEM_INCLUDE_DIR # undef STANDARD_INCLUDE_DIR *************** *** 97,104 **** const size_t cpp_GCC_INCLUDE_DIR_len = 0; #endif ! #ifdef TARGET_SYSTEM_ROOT ! const char *cpp_SYSROOT = TARGET_SYSTEM_ROOT; #else const char *cpp_SYSROOT = ""; #endif --- 97,104 ---- const size_t cpp_GCC_INCLUDE_DIR_len = 0; #endif ! #ifdef TARGET_HEADER_SYSTEM_ROOT ! const char *cpp_SYSROOT = TARGET_HEADER_SYSTEM_ROOT; #else const char *cpp_SYSROOT = ""; #endif