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 ISO C and GNU CC, nothing special need be
done).
   
GPLUSPLUS_INCLUDE_DIR means the same thing for native and cross.  It
is where g++ looks first for header files.  The C++ library
installs only target independent header files in that directory.
   
LOCAL_INCLUDE_DIR is used only by native compilers.  GNU CC
doesn't install anything there.  It is normally
/usr/local/include.  This is where local additions to a packaged
system should place header files.
   
CROSS_INCLUDE_DIR is used only by cross compilers.  GNU CC
doesn't 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.