Most details about the machine and system on which the compiler is actually running are detected by the configure script. Some things are impossible for configure to detect; these are described in two ways, either by macros defined in a file named xm-machine.h or by hook functions in the file specified by the out_host_hook_obj variable in config.gcc. (The intention is that very few hosts will need a header file but nearly every fully supported host will need to override some hooks.)
If you need to define only a few 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.