### 17.2 Host Makefile Fragments

The use of `x-host` fragments is discouraged. You should do so only if there is no other mechanism to get the behavior desired. Host fragments should never forcibly override variables set by the configure script, as they may have been adjusted by the user.

Variables provided for host fragments to set include:

`X_CFLAGS`
`X_CPPFLAGS`
  These are extra flags to pass to the C compiler and preprocessor, respectively. They are used both when building GCC, and when compiling things with the just-built GCC.
`XCFLAGS`
  These are extra flags to use when building the compiler. They are not used when compiling `libgcc.a`. However, they are used when recompiling the compiler with itself in later stages of a bootstrap.
`BOOT_LDFLAGS`
  Flags to be passed to the linker when recompiling the compiler with itself in later stages of a bootstrap. You might need to use this if, for instance, one of the front ends needs more text space than the linker provides by default.
`EXTRA_PROGRAMS`
  A list of additional programs required to use the compiler on this host, which should be compiled with GCC and installed alongside the front ends. If you set this variable, you must also provide rules to build the extra programs.