Standard Header File Directories
GCC_INCLUDE_DIR means the same thing for native and cross. It is where GNU CC stores its private include files, and also where GNU CC stores the fixed include files. A cross compiled GNU CC runs fixincludes on the header files in $(tooldir)/include. (If the cross compilation header files need to be fixed, they must be installed before GNU CC is built. If the cross compilation header files are already suitable for ANSI C and GNU CC, nothing special need be done).
GPLUS_INCLUDE_DIR means the same thing for native and cross. It is where g++ looks first for header files. libg++ installs only target independent header files in that directory.
LOCAL_INCLUDE_DIR is used only for a native compiler. It is normally /usr/local/include. GNU CC searches this directory so that users can install header files in /usr/local/include.
CROSS_INCLUDE_DIR is used only for a cross compiler. GNU CC doesnt install anything there.
TOOL_INCLUDE_DIR is used for both native and cross compilers. It is the place for other packages to install header files that GNU CC will use. For a cross-compiler, this is the equivalent of /usr/include. When you build a cross-compiler, fixincludes processes any header files in this directory.