Files
Matthew Woehlke 00959286b9 Diagnostics: Warn about non-target directives
Introduce `CMD_STRICT` to act as a parent for warnings about allowed but
disrecommended usage. Introduce a warning that discourages use of
non-target directives (which modify the build environment for the entire
[sub]tree). Add notes to the official documentation recommending use of
target-specific alternatives. This has been accepted wisdom for quite
some time, but only some of the affected commands made any mention of
this in the documentation.
2026-07-28 11:38:20 -04:00

21 lines
943 B
ReStructuredText

warn-strict
-----------
* The :diagnostic:`CMD_NON_TARGET_DIRECTIVE` diagnostic category was added to
diagnose commands that affect the directory scope when comparable
target-specific commands exist. The use of such directives is disrecommended.
This diagnostic may be controlled with the
:option:`-Wnon-target-directive <cmake -W>` command-line option,
the ``nonTargetDirective`` field in a
:manual:`CMake Presets <cmake-presets(7)>`
:preset:`configurePresets.warnings` object,
or the :command:`cmake_diagnostic` command.
* The :diagnostic:`CMD_STRICT` diagnostic category was added to control
diagnostics regarding allowed but disrecommended usage as a group.
This diagnostic may be controlled with the :option:`-Wstrict <cmake -W>`
command-line option, the ``strict`` field in a
:manual:`CMake Presets <cmake-presets(7)>`
:preset:`configurePresets.warnings` object,
or the :command:`cmake_diagnostic` command.