569509f4 Fix newly discovered clang-tidy issues
6c9b3b5c cmCommand: implement functions in cxx file
8483dab8 bootstrap: Sort source files lexicographically
4fb70919 Create all commands from a single function
608afd4f Separate compilation for commands included in cmBootstrapCommands2
64f9c282 Separate compilation for commands included in cmBootstrapCommands1
f69e768d Separate compilation for commands included in cmCommands
Clang-tidy reports some issues only from the currently compiled source
file and its associated header file. Separating the compilation of
commands exposed some clang-tidy issues that were not reported previously.
Fix them.
587ab322 Tests: Add test for MAP_IMPORTED_CONFIG_<CONFIG> empty fallback
149d49ea Teach MAP_IMPORTED_CONFIG_<CONFIG> to support configuration-less import
60d73393 Help: Format MAP_IMPORTED_CONFIG_<CONFIG> documentation
If this property has an empty list entry, check for `IMPORTED_LOCATION`
instead of `IMPORTED_LOCATION_<CONFIG>`. This allows custom imported
targets to have some configurations mapped and others fall back to a
default location.
Closes: #16280
Diagnose failure to run `ninja --version` and abort early. Otherwise we
end up aborting with a confusing message about ninja version "" being
too old.
Closes: #16378
e6eecec7 cmListFileCache: Remove cmState header include
e3587ee0 cmTargetPropertyComputer: Add missing include
e0a84904 cmState: Split auxiliary classes into separate files
a91eaf38 cmState: Port dependents to new cmStateTypes header
27be1d81 cmState: Move extracted declarations to a separate file
34433c88 cmState: Remove compatibility typedefs
cde6eb62 cmState: Port dependent code to new cmStateSnapshot name
a9bf981a cmState: Move Snapshot type to separate namespace
17d27893 cmState: Port dependent code to new cmStateDirectory name
34bcec39 cmState: Move Directory class to separate namespace
2fe3e55d cmState: Move CacheEntryType enum to separate namespace
a49751fb cmState: Move TargetType enum to separate namespace
0060391d cmState: Move SnapshotType enum to separate namespace
5bc964ed cmState: Move PositionType to separate namespace
2dc40996 cmState: Move PolicyStackEntry to separate namespace
cb40af5d cmState: Move SnapshotDataType to separate namespace
...
Port dependents to the new locations as needed.
Leave behind a cmState.h include in cmListFileCache to reduce noise. It
is removed in a following commit.
In `WriteLanguageRules` we collect all languages used for source files
in a target. However, this only needs to include sources that are
actually going to be compiled into object files. No object file build
statements will be generated for other sources.
This avoids generating language compile rules for source files that
are not compiled due to being marked as `HEADER_FILE_ONLY`.
Issue: #16373