Commit Graph

58031 Commits

Author SHA1 Message Date
Craig Scott
9b4efcb92f Merge topic 'correct_cupti_search_paths' into release-3.24
1f3c3589f1 FindCUDAToolkit: Search the cuda toolkit include path for cupti

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7608
2022-08-26 06:50:39 -04:00
Kyle Edwards
32e6ee29d7 Merge topic 'file-set-source-group' into release-3.24
970052fedd FILE_SET: Fix source group detection
bcc3965813 Tests: Fix VS10Project SourceGroupTreeCMakeLists check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7609
2022-08-25 09:14:20 -04:00
Kyle Edwards
970052fedd FILE_SET: Fix source group detection
Call MatchChildrenFiles() instead of MatchesFiles() in order to
account for files being in subgroups of source groups.

Fixes: #23880
2022-08-24 16:07:24 -04:00
Kyle Edwards
bcc3965813 Tests: Fix VS10Project SourceGroupTreeCMakeLists check
Fix an `IN LISTS` loop, fix a variable check, and escape backslashes
in the regex used to search for source group names.
2022-08-24 16:07:24 -04:00
Robert Maynard
1f3c3589f1 FindCUDAToolkit: Search the cuda toolkit include path for cupti 2022-08-24 09:49:10 -04:00
Brad King
6fa11ecf03 Merge topic 'ci-msvc-14.33' into release-3.24
b87645b6a5 gitlab-ci: Update non-packaging Windows builds to MSVC 14.33 toolset
cb8b27a901 gitlab-ci: Use separate MSVC toolset specification for packaging jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7597
2022-08-22 09:46:28 -04:00
Craig Scott
fb9c1c4cec Merge topic 'doc-ctest_test-output-control' into release-3.24
fadc93286a Help: Add crossrefs to ctest output control options
8981e88b18 Help: Add missing closing quote on C++ example

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7595
2022-08-20 19:02:38 -04:00
Brad King
b87645b6a5 gitlab-ci: Update non-packaging Windows builds to MSVC 14.33 toolset
Restore the change from commit 6f17996edc (gitlab-ci: Update Windows
builds to MSVC 14.33 toolset, 2022-08-15, v3.24.1~3^2), but not for
packaging jobs.  `cmake-gui` is still buggy when compiled with
the newer toolset.

Issue: #23859
2022-08-19 07:30:54 -04:00
Brad King
cb8b27a901 gitlab-ci: Use separate MSVC toolset specification for packaging jobs
This will be useful for testing CMake with one version of MSVC
while packaging the official binaries with another version.

Issue: #23859
2022-08-19 07:30:42 -04:00
Brad King
1702759063 Merge topic 'doc-var-refs' into release-3.24
159acea394 Help: Clarify that variable references may use cache entries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7589
2022-08-19 07:18:33 -04:00
Brad King
810ab9b24d Merge topic 'ci-cmake-update' into release-3.24
05a1464689 ci: use CMake 3.24.1
c3793b4157 CMake 3.24.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7590
2022-08-19 07:17:33 -04:00
Craig Scott
fadc93286a Help: Add crossrefs to ctest output control options 2022-08-19 14:47:01 +10:00
Craig Scott
8981e88b18 Help: Add missing closing quote on C++ example 2022-08-19 14:03:18 +10:00
Brad King
05a1464689 ci: use CMake 3.24.1 2022-08-18 10:01:20 -04:00
Brad King
159acea394 Help: Clarify that variable references may use cache entries
Clarify in `cmake-language(7)` that a variable lookup may use a cache
entry if the variable is not set.  Fix misleading text in added by
commit 8ba2a8d4a4 (Help: short/long variable reference in if command,
2018-11-01, v3.14.0-rc1~408^2~2).

Fixes: #23863
2022-08-18 09:04:08 -04:00
Brad King
c3793b4157 CMake 3.24.1 v3.24.1 2022-08-17 12:54:57 -04:00
Brad King
c1046c11a4 Merge topic 'revert-ci-msvc-14.33' into release-3.24
3a7202bfc7 gitlab-ci: Revert Windows builds from MSVC 14.33 to MSVC 14.32 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7586
2022-08-17 12:51:06 -04:00
Brad King
3a7202bfc7 gitlab-ci: Revert Windows builds from MSVC 14.33 to MSVC 14.32 toolset
Revert commit 6f17996edc (gitlab-ci: Update Windows builds to MSVC 14.33
toolset, 2022-08-15).  A `cmake-gui` built with the MSVC 14.33 toolset
emits spurious errors when configuring CMake projects, even when the
adjacent `cmake` binary succeeds reliably.  Revert to the known-working
MSVC 14.32 toolset pending further investigation.

Issue: #23859
2022-08-17 12:43:07 -04:00
Brad King
bc7dca3497 Merge topic 'FindVulkan-tolerate-FATAL_ERROR' into release-3.24
9063674517 Help: Add 3.24 release note about FindVulkan component enforcement
bc01362368 FindVulkan: Restore tolerance of unknown FATAL_ERROR component

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7583
2022-08-17 10:16:09 -04:00
Brad King
9063674517 Help: Add 3.24 release note about FindVulkan component enforcement
Since commit 6e4d20921d (FindVulkan: Add component for `shaderc_combined`,
2022-05-18, v3.24.0-rc1~111^2~5), the module rejects unknown components.
Add a release note about this behavior change.

Issue: #23849
2022-08-17 09:52:14 -04:00
Brad King
bc01362368 FindVulkan: Restore tolerance of unknown FATAL_ERROR component
`find_package(Vulkan REQUIRED FATAL_ERROR)` calls exist in the wild, but
`find_package` does not have a `FATAL_ERROR` option.  We silently
tolerated such calls prior to commit 6e4d20921d (FindVulkan: Add
component for `shaderc_combined`, 2022-05-18, v3.24.0-rc1~111^2~5), by
treating the argument as a component and ignoring it.  Restore tolerance
by removing the component and warning about it.

Fixes: #23849
2022-08-17 09:52:12 -04:00
Brad King
d3f58ea453 Merge topic 'ci-msvc-14.33' into release-3.24
6f17996edc gitlab-ci: Update Windows builds to MSVC 14.33 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7578
2022-08-17 08:34:05 -04:00
Brad King
6f17996edc gitlab-ci: Update Windows builds to MSVC 14.33 toolset 2022-08-16 13:20:48 -04:00
Brad King
d83505b364 Merge topic 'mingw-windres' into release-3.24
e9755bc7c1 MinGW: Restore using windres when toolchain-prefixed name is not available

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7574
2022-08-16 12:43:52 -04:00
Brad King
349071d6ab Merge topic 'export-no-shdeps' into release-3.24
0ebff0d61a export: Restore exclusion of private shared library dependencies from checks

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7557
2022-08-16 12:42:20 -04:00
Brad King
5bd618be66 Merge topic 'automoc-silence-warnings' into release-3.24
844244ccdc automoc: avoid compiler warnings in linker-warning-silencing code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7558
2022-08-16 12:40:47 -04:00
Craig Scott
e6038c0199 Merge topic 'doc-warning-as-error' into release-3.24
680fe820c6 Help: A missing cross-reference to --compile-no-warning-as-error
7ad89f8fb1 Help: List compiler IDs supported by COMPILE_WARNING_AS_ERROR

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7561
2022-08-16 06:57:31 -04:00
Brad King
e9755bc7c1 MinGW: Restore using windres when toolchain-prefixed name is not available
Since commit 55ba10dcfd (MSYS/MinGW Makefiles: Simplify selection of
windres as Resource Compiler, 2022-05-26, v3.24.0-rc1~82^2) the `MinGW
Makefiles` and `MSYS Makefiles` generators no longer specify the plain
`windres` name for the MinGW resource compiler.  Instead, the name is
specified in our MinGW platform information module. After the change in
commit af4adf6aa9 (MinGW: Fix default windres selection when
cross-compiling, 2020-03-25, v3.18.0-rc1~492^2), when cross-compiling,
we only specify the toolchain-prefixed name of the tool, which may not
be available in all environments.

If the toolchain-prefixed name is not available, fall back to the plain
`windres` name.  We already use this approach for other binutils.

Fixes: #23841
2022-08-15 13:57:58 -04:00
Craig Scott
680fe820c6 Help: A missing cross-reference to --compile-no-warning-as-error 2022-08-15 11:06:51 -04:00
Craig Scott
7ad89f8fb1 Help: List compiler IDs supported by COMPILE_WARNING_AS_ERROR 2022-08-15 11:06:31 -04:00
Brad King
732cad4952 Merge topic 'warning-as-error-ti-compiler' into release-3.24
1cd65dfa0e TI compiler: Add support for COMPILE_WARNING_AS_ERROR target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Josef Angstenberger <code@jtxa.de>
Merge-request: !7560
2022-08-15 10:51:44 -04:00
Brad King
2d08a35b50 Merge topic 'mingw-flto' into release-3.24
7b2a87c2eb IPO: Do not use -flto=auto with GCC 10.x on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7559
2022-08-15 10:48:26 -04:00
Brad King
0ebff0d61a export: Restore exclusion of private shared library dependencies from checks
Refactoring in commit 8c65b7042e (cmExportFileGenerator: Simplify
collection of targets missing from export set, 2022-04-11,
v3.24.0-rc1~281^2) accidentally dropped the behavior change from
commit 0ad2a1c181 (Export: Never treat private link libraries as
public package dependencies., 2013-09-24, v3.0.0-rc1~559^2).
Restore the behavior and add a test.

Fixes: #23838
2022-08-15 10:40:03 -04:00
Craig Scott
1cd65dfa0e TI compiler: Add support for COMPILE_WARNING_AS_ERROR target property 2022-08-12 08:27:19 +10:00
Albert Astals Cid
844244ccdc automoc: avoid compiler warnings in linker-warning-silencing code
Revise the code added by !7296 (merged).
Make cmake_automoc_silence_linker_warning less warning-y.
Fix weak-tables clang warning and copyable-polymorph clazy warning.

Fixes: #23823
2022-08-10 22:03:11 +02:00
Brad King
7b2a87c2eb IPO: Do not use -flto=auto with GCC 10.x on Windows
Revise the change from commit fe57410b33 (IPO: Use -flto=auto if
compiler is GCC >= 10.1, 2022-06-22, v3.24.0-rc2~2^2) to require
at least GCC 11 on Windows.

Fixes: #23836
Issue: #23640
2022-08-10 14:49:34 -04:00
Brad King
425f6a0ef6 Merge topic 'FindThreads-msvc-no-pthread-flag' into release-3.24
7203963788 FindThreads: Skip check for -pthread flag when targeting the MSVC ABI

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7551
2022-08-09 09:16:42 -04:00
Brad King
7203963788 FindThreads: Skip check for -pthread flag when targeting the MSVC ABI
Since commit 3257c34073 (FindThreads: avoid failing in AIX when using
-D_XOPEN_SOURCE=500, 2022-04-30, v3.24.0-rc1~197^2) we no longer check
for `pthreads.h` before checking for the `-pthread` flag.  Compilers
targeting the MSVC ABI do not have such a flag, so avoid performing the
check unnecessarily.

Fixes: #23829
2022-08-08 12:41:57 -04:00
Brad King
4be24f031a CMake 3.24.0 v3.24.0 2022-08-04 09:53:57 -04:00
Brad King
019c75eb9e Merge topic 'makefile-path-consistency' into release-3.24
5e0b06fe84 Makefiles: Restore path consistency in the global dispatch makefile

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7543
2022-08-04 09:35:49 -04:00
Brad King
3a38f6c618 Merge topic 'fetchcontent-set-CMAKE_VERIFY_INTERFACE_HEADER_SETS' into release-3.24
2a9cc3e8e8 FetchContent: Disable header set verification for dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7535
2022-08-04 09:34:47 -04:00
Brad King
ae03cd71b3 Merge topic 'doc-find_package-typo' into release-3.24
5635d33656 Help: Fix reST syntax typo in find_package docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7540
2022-08-04 09:33:49 -04:00
Brad King
dfcbdcb135 Merge topic 'FindLua-docfmt' into release-3.24
3e2094fb9b FindLua: Improve documentation formatting

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7539
2022-08-04 09:32:36 -04:00
Craig Scott
2a9cc3e8e8 FetchContent: Disable header set verification for dependencies
The CMAKE_VERIFY_INTERFACE_HEADER_SETS variable is intended to
be under the control of the user. It doesn't discriminate between
header sets defined in the main project and those defined by
dependencies brought into the build directly via FetchContent.
Developers will usually only be interested in verifying the main project's
header sets, not those from dependencies.

Make the variable effectively only enable header set verification of the
main project by turning it off during FetchContent_MakeAvailable() calls.
The user still has variables like CMAKE_PROJECT_INCLUDE and
CMAKE_PROJECT_<projectName>_INCLUDE available to them if they
want to enable verification of all or specific dependencies respectively.

Fixes: #23808
2022-08-04 09:43:10 +10:00
Brad King
5e0b06fe84 Makefiles: Restore path consistency in the global dispatch makefile
Directory-level rules in `CMakeFiles/Makefile2` were previously
previously written by each directory's local generator using its own
decision for using relative or absolute paths.

Since commit d33b12d84b (Add support for build tree symlink inside
source tree, 2022-02-25, v3.24.0-rc1~583^2), each local generator
explicitly models the relationship between its source and build paths,
and uses this to determine when it is safe to use relative paths.
Because `add_subdirectory` supports arbitrary placement of the source
and build directories, different local generators may have different
relationships between their source and build paths.  This can cause
disagreement among rules written to `CMakeFiles/Makefile2`.

Restore consistency by always using the root local generator to write
rules to `CMakeFiles/Makefile2`.  Relative paths should always be
expressed w.r.t. the top-level build directory since that is the working
directory in which the `make` tool processing the file will run.

Fixes: #23814
2022-08-03 14:58:47 -04:00
Eisuke Kawashima
5635d33656 Help: Fix reST syntax typo in find_package docs 2022-08-03 10:02:21 -04:00
Kyle Edwards
9d24d62098 Merge topic 'all-verify-interface-header-sets' into release-3.24
83e44002ae VERIFY_INTERFACE_HEADER_SETS: Add verification target for all

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7536
2022-08-03 09:58:42 -04:00
Michael Hirsch
3e2094fb9b FindLua: Improve documentation formatting
Since commit cb811d11ce (Help: Improve description of modules,
2019-04-12, v3.15.0-rc1~210^2) we've had two `::` prompts for
the preformatted block listing the result variables.  Convert the
block to a definition list.
2022-08-03 09:56:38 -04:00
Brad King
a9d0bcc71e Merge topic 'ci-wix-host' into release-3.24
9ff7fffbf4 ci: host WiX 3.14.0.6526 binaries ourselves

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7538
2022-08-03 09:37:54 -04:00
Kyle Edwards
83e44002ae VERIFY_INTERFACE_HEADER_SETS: Add verification target for all
Fixes: #23802
2022-08-03 08:19:08 -04:00