File: autoconf.info, Node: Printing Messages, Prev: Results.php">Caching Results, Up: Results 7.5 Printing Messages ===================== ‘configure’ scripts need to give users running them several kinds of information. The following macros print messages in ways appropriate for each kind. The arguments to all of them get enclosed in shell double quotes, so the shell performs variable and back-quote substitution on them. These macros are all wrappers around the ‘echo’ shell command. They direct output to the appropriate file descriptor (*note File Descriptor Macros::). ‘configure’ scripts should rarely need to run ‘echo’ directly to print messages for the user. Using these macros makes it easy to change how and when each kind of message is printed; such changes need only be made to the macro definitions and all the callers change automatically. To diagnose static issues, i.e., when ‘autoconf’ is run, see *note Diagnostic Macros::. -- Macro: AC_MSG_CHECKING (FEATURE-DESCRIPTION) Notify the user that ‘configure’ is checking for a particular feature. This macro prints a message that starts with ‘checking ’ and ends with ‘...’ and no newline. It must be followed by a call to ‘AC_MSG_RESULT’ to print the result of the check and the newline. The FEATURE-DESCRIPTION should be something like ‘whether the Fortran compiler accepts C++ comments’ or ‘for _Alignof’. This macro prints nothing if ‘configure’ is run with the ‘--quiet’ or ‘--silent’ option. -- Macro: AC_MSG_RESULT (RESULT-DESCRIPTION) Notify the user of the results of a check. RESULT-DESCRIPTION is almost always the value of the cache variable for the check, typically ‘yes’, ‘no’, or a file name. This macro should follow a call to ‘AC_MSG_CHECKING’, and the RESULT-DESCRIPTION should be the completion of the message printed by the call to ‘AC_MSG_CHECKING’. This macro prints nothing if ‘configure’ is run with the ‘--quiet’ or ‘--silent’ option. -- Macro: AC_MSG_NOTICE (MESSAGE) Deliver the MESSAGE to the user. It is useful mainly to print a general description of the overall purpose of a group of feature checks, e.g., AC_MSG_NOTICE([checking if stack overflow is detectable]) This macro prints nothing if ‘configure’ is run with the ‘--quiet’ or ‘--silent’ option. -- Macro: AC_MSG_ERROR (ERROR-DESCRIPTION, [EXIT-STATUS = $?/1]) Notify the user of an error that prevents ‘configure’ from completing. This macro prints an error message to the standard error output and exits ‘configure’ with EXIT-STATUS (‘$?’ by default, except that ‘0’ is converted to ‘1’). ERROR-DESCRIPTION should be something like ‘invalid value $HOME for \$HOME’. The ERROR-DESCRIPTION should start with a lower-case letter, and "cannot" is preferred to "can't". -- Macro: AC_MSG_FAILURE (ERROR-DESCRIPTION, [EXIT-STATUS]) This ‘AC_MSG_ERROR’ wrapper notifies the user of an error that prevents ‘configure’ from completing _and_ that additional details are provided in ‘config.log’. This is typically used when abnormal results are found during a compilation. -- Macro: AC_MSG_WARN (PROBLEM-DESCRIPTION) Notify the ‘configure’ user of a possible problem. This macro prints the message to the standard error output; ‘configure’ continues running afterward, so macros that call ‘AC_MSG_WARN’ should provide a default (back-up) behavior for the situations they warn about. PROBLEM-DESCRIPTION should be something like ‘ln -s seems to make hard links’.