Host configuration headers contain macro definitions that describe the
machine and system on which the compiler is running.  They are usually
unnecessary.  Most of the things GCC needs to know about the host
system can be deduced by the configure script.
   
If your host does need a special configuration header, it should be
named xm-machine.h, where machine is a short mnemonic
for the machine.  Here are some macros which this header can define.
     
VMS
     FATAL_EXIT_CODE
     EXIT_FAILURE, or 1 if the system doesn't define that
macro.  Define this macro only if these defaults are incorrect.
     SUCCESS_EXIT_CODE
     EXIT_SUCCESS, or 0 if
the system doesn't define that macro.  Define this macro only if these
defaults are incorrect.
     USE_C_ALLOCA
     alloca
provided by libiberty.a.  This only affects how some parts of the
compiler itself allocate memory.  It does not change code generation.
     When GCC is built with a compiler other than itself, the C alloca
is always used.  This is because most other implementations have serious
bugs.  You should define this macro only on a system where no
stack-based alloca can possibly work.  For instance, if a system
has a small limit on the size of the stack, GCC's builtin alloca
will not work reliably.
     
HAVE_DOS_BASED_FILE_SYSTEM
     / and \) are directory separators.  If you
define this macro, you probably need to define the next three macros too.
     PATH_SEPARATOR
     :).  DOS-based systems usually use semicolon (;).
     DIR_SEPARATOR
     DIR_SEPARATOR_2
     DIR_SEPARATOR to /
and DIR_SEPARATOR_2 to \.
     HOST_OBJECT_SUFFIX
     .o as the suffix for object files.
     HOST_EXECUTABLE_SUFFIX
     HOST_BIT_BUCKET
     /dev/null as the bit
bucket.  If the host does not support a bit bucket, define this macro to
an invalid filename.
     COLLECT2_HOST_INITIALIZATION
     collect2 is being initialized.
     GCC_DRIVER_HOST_INITIALIZATION
     UPDATE_PATH_HOST_CANONICALIZE (path)
     DUMPFILE_FORMAT
     rtl.
     If you do not define this macro, GCC will use .%02d..  You should
define this macro if using the default will create an invalid file name.
     
SMALL_ARG_MAX
     In addition, if configure generates an incorrect definition of
any of the macros in auto-host.h, you can override that
definition in a host configuration header.  If you need to do this,
first see if it is possible to fix configure.
   
If you need to define only a few of these macros, and they have simple
definitions, consider using the xm_defines variable in your
config.gcc entry instead of creating a host configuration header. 
See System Config.