File: autoconf.info, Node: Canonicalizing, Next: Using System Type, Prev: Specifying Target Triplets, Up: Manual Configuration 14.2 Getting the Canonical System Type ====================================== The following macros make the system type available to ‘configure’ scripts. The variables ‘build_alias’, ‘host_alias’, and ‘target_alias’ are always exactly the arguments of ‘--build’, ‘--host’, and ‘--target’; in particular, they are left empty if the user did not use them, even if the corresponding ‘AC_CANONICAL’ macro was run. Any configure script may use these variables anywhere. These are the variables that should be used when in interaction with the user. If you need to recognize some special environments based on their system type, run the following macros to get canonical system names. These variables are not set before the macro call. -- Macro: AC_CANONICAL_BUILD Compute the canonical build-system type variable, ‘build’, and its three individual parts ‘build_cpu’, ‘build_vendor’, and ‘build_os’. If ‘--build’ was specified, then ‘build’ is the canonicalization of ‘build_alias’ by ‘config.sub’, otherwise it is determined by the shell script ‘config.guess’. -- Macro: AC_CANONICAL_HOST Compute the canonical host-system type variable, ‘host’, and its three individual parts ‘host_cpu’, ‘host_vendor’, and ‘host_os’. If ‘--host’ was specified, then ‘host’ is the canonicalization of ‘host_alias’ by ‘config.sub’, otherwise it defaults to ‘build’. -- Macro: AC_CANONICAL_TARGET Compute the canonical target-system type variable, ‘target’, and its three individual parts ‘target_cpu’, ‘target_vendor’, and ‘target_os’. If ‘--target’ was specified, then ‘target’ is the canonicalization of ‘target_alias’ by ‘config.sub’, otherwise it defaults to ‘host’. Note that there can be artifacts due to the backward compatibility code. *Note Hosts and Cross-Compilation::, for more.