message¶
Display a message to the user.
message([<mode>] "message to display" ...)
The optional <mode>
keyword determines the type of message:
FATAL_ERROR
CMake Error, stop processing and generation.
SEND_ERROR
CMake Error, continue processing, but skip generation.
WARNING
CMake Warning, continue processing.
AUTHOR_WARNING
CMake Warning (dev), continue processing.
DEPRECATION
CMake Deprecation Error or Warning if variable
CMAKE_ERROR_DEPRECATED
orCMAKE_WARN_DEPRECATED
is enabled, respectively, else no message.- (none) or
NOTICE
Important message printed to stderr to attract user’s attention.
STATUS
The main interesting messages that project users might be interested in. Ideally these should be concise, no more than a single line, but still informative.
VERBOSE
Detailed informational messages intended for project users. These messages should provide additional details that won’t be of interest in most cases, but which may be useful to those building the project when they want deeper insight into what’s happening.
DEBUG
Detailed informational messages intended for developers working on the project itself as opposed to users who just want to build it. These messages will not typically be of interest to other users building the project and will often be closely related to internal implementation details.
TRACE
Fine-grained messages with very low-level implementation details. Messages using this log level would normally only be temporary and would expect to be removed before releasing the project, packaging up the files, etc.
The CMake command-line tool displays STATUS
to TRACE
messages on stdout
with the message preceded by two hyphens and a space. All other message types
are sent to stderr and are not prefixed with hyphens. The
CMake GUI
displays all messages in its log area.
The curses interface
shows STATUS
to TRACE
messages one at a time on a status line and other messages in an
interactive pop-up box. The --log-level
command-line option to each of
these tools can be used to control which messages will be shown.
Messages of log levels NOTICE
and below will also have each line preceded
by the content of the CMAKE_MESSAGE_INDENT
variable (converted to
a single string by concatenating its list items). For STATUS
to TRACE
messages, this indenting content will be inserted after the hyphens.
CMake Warning and Error message text displays using a simple markup language. Non-indented text is formatted in line-wrapped paragraphs delimited by newlines. Indented text is considered pre-formatted.