configure.info: Using Configuration Names

Go backward to Configuration Name Definition
Go up to Configuration Names
Go to the top op configure

Using Configuration Names

   A configure script will sometimes have to make a decision based on a
configuration name.  You will need to do this if you have to compile
code differently based on something which can not be tested using a
standard autoconf feature test.
   It is normally better to test for particular features, rather than to
test for a particular system.  This is because as Unix evolves,
different systems copy features from one another.  Even if you need to
determine whether the feature is supported based on a configuration
name, you should define a macro which describes the feature, rather than
defining a macro which describes the particular system you are on.
   Testing for a particular system is normally done using a case
statement in `configure.in'.  The case statement might look something
like the following, assuming that `host' is a shell variable holding a
canonical configuration name (which will be the case if `configure.in'
uses the `AC_CANONICAL_HOST' or `AC_CANONICAL_SYSTEM' macro).
     case "${host}" in
     i[3456]86-*-linux-gnu*) do something ;;
     sparc*-sun-solaris2.[56789]*) do something ;;
     sparc*-sun-solaris*) do something ;;
     mips*-*-elf*) do something ;;
     esac
   It is particularly important to use `*' after the operating system
field, in order to match the version number which will be generated by
`config.guess'.
   In most cases you must be careful to match a range of processor
types.  For most processor families, a trailing `*' suffices, as in
`mips*' above.  For the i386 family, something along the lines of
`i[3456]86' suffices at present.  For the m68k family, you will need
something like `m68*'.  Of course, if you do not need to match on the
processor, it is simpler to just replace the entire field by a `*', as
in `*-*-irix*'.