Commit Graph

7416 Commits

Author SHA1 Message Date
Brad King 2e5330591d Utilities/Release/WiX: Modify PATH by default when installing on Windows
If the PATH modification choice has not been saved persistently by an
existing installation of CMake, default to modifying the system PATH
environment variable to make our command-line tools available for all
users.  This is a common expectation.

Fixes: #21465
2024-03-29 09:32:27 -04:00
Brad King 32388821e2 Utilities/Release/WiX: Save PATH modification preference persistently
Our Windows installer provides an interactive dialog to choose whether
the PATH should be modified.  It may also be specified on the `msiexec`
command-line as an `ADD_CMAKE_TO_PATH={0,1}` property.  Save the choice
persistently in the Windows Registry and use the same choice by default
in future installations.

Issue: #21465
2024-03-29 09:32:27 -04:00
Brad King bd3eaf83a1 Merge topic 'move-install-note'
8cbd6f5754 Help: Fix location of install() note about superseded commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9382
2024-03-29 09:15:11 -04:00
Brad King 04c3734a8a Merge topic 'add_custom_command/25796'
89aac1fbe8 add_dependencies: Document behavior under Ninja generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9378
2024-03-29 09:14:12 -04:00
FeRD (Frank Dana) 8cbd6f5754 Help: Fix location of install() note about superseded commands
The note regarding commands superseded by install() somehow wound
up nested under the install(EXPORT) signature, when it has nothing
to do with install(EXPORT). Move it to the top level, immediately
before the Examples section.
2024-03-28 16:59:00 -04:00
Brad King 31aea3d4ca Merge topic 'cpack-wix'
03884f4f32 CPack/WIX: Add support for WiX Toolset v4
cfe5bbdc54 ci: Add scripts to provide WiX 4 package on Windows
c8e2694679 ci: Add script to repackage WiX .NET tool for our needs
e7f5ad8df2 Tests: Prepare RunCMake.CPack_WIX to cover multiple WiX versions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9369
2024-03-28 15:15:51 -04:00
Juan Ramos 89aac1fbe8 add_dependencies: Document behavior under Ninja generators
Closes: #25796
2024-03-28 09:48:08 -07:00
Brad King cf6083cc6e Merge topic 'doc-linker-vars'
6ba2bbc0f3 Help: Restructure and improve LINKER_TYPE docs
c39bc6e412 Help: CMAKE_<LANG>_USING_LINKER_<TYPE> can be a list of flags
1c7ccefd83 Help: Add custom linker example for CMAKE_<LANG>_USING_LINKER_<TYPE>
aecea7b28b Help: Grammar, typos and wording improvements for linker variables
5b21897c6e Help: Remove stray formatting for try_compile() LINKER_LANGUAGE keyword

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9362
2024-03-27 08:18:10 -04:00
Craig Scott 6ba2bbc0f3 Help: Restructure and improve LINKER_TYPE docs 2024-03-26 08:03:14 +11:00
Craig Scott c39bc6e412 Help: CMAKE_<LANG>_USING_LINKER_<TYPE> can be a list of flags 2024-03-26 08:03:14 +11:00
Craig Scott 1c7ccefd83 Help: Add custom linker example for CMAKE_<LANG>_USING_LINKER_<TYPE> 2024-03-26 08:03:14 +11:00
Craig Scott aecea7b28b Help: Grammar, typos and wording improvements for linker variables 2024-03-26 08:03:14 +11:00
Brad King 03884f4f32 CPack/WIX: Add support for WiX Toolset v4
Add a `CPACK_WIX_VERSION` option to specify version WiX for
which the project is configured.

Fixes: #23910
2024-03-24 15:26:39 -04:00
Brad King 729d904050 Merge topic 'cpack-wix'
d15c910a45 CPack/WIX: Remove "candle" from tool-agnostic error message
ac25c645a7 CPack/WIX: Improve formatting of CPACK_WIX_CUSTOM_XMLNS expansion
54d09a2b3f CPack/WIX: Document WiX Toolset v3 tools
d2f4836f8e CPack/WIX: Prepare to provide version-specific WiX templates
438809d3ba cmCPackGenerator: Add option to FindTemplate to use alternate builtin path
4d661e3a92 cmMakefile: Reduce GetModulesFile caller allocations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9363
2024-03-24 14:35:14 -04:00
scivision be6763f34b Help: cmake(1) --toolchain path relative
other cmake(1) options are relative to cwd. It is surprising
enough that --toolchain is relative to -B or -S that it's
good to call it out here too.
2024-03-22 17:17:31 -04:00
Brad King 54d09a2b3f CPack/WIX: Document WiX Toolset v3 tools
Add a dedicated section describing the `candle` and `light` tools.
Also improve formatting of some variables' documentation.
2024-03-22 09:58:37 -04:00
Brad King cff8aefc6a Merge topic 'doc-CMP0118'
1dabbbb5e0 CMP0118: Revise documentation to describe actual behavior
d2f5b79795 CMP0118: Fix some tests and add more tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9358
2024-03-22 09:34:31 -04:00
Craig Scott 5b21897c6e Help: Remove stray formatting for try_compile() LINKER_LANGUAGE keyword 2024-03-22 20:58:32 +11:00
Deniz Bahadir 1dabbbb5e0 CMP0118: Revise documentation to describe actual behavior
The policy was originally intended to make the `GENERATED` source file
property globally visible, but the implementation didn't fully achieve
that goal.  Revise the documentation to describe what it actually does.

Issue: #25437
2024-03-21 11:37:46 -04:00
Brad King 388f7bc11b Merge topic 'fileapi-provide-glob-dependent'
6116bcb066 fileapi: Add CONFIGURE_DEPENDS glob info to cmakeFiles object
f578515d02 cmGlobCacheEntry: Add helper to carry CONFIGURE_DEPENDS glob cache arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9348
2024-03-21 09:29:00 -04:00
Brad King f31523c251 Merge branch 'release-3.28' 2024-03-20 10:35:51 -04:00
Brad King 7e52f9d4e0 Merge branch 'release-3.28' into release-3.29 2024-03-20 10:35:33 -04:00
Brad King b5602e7254 CMake 3.28.4 2024-03-20 10:03:43 -04:00
Arctic Lampyrid 6116bcb066 fileapi: Add CONFIGURE_DEPENDS glob info to cmakeFiles object
Fixes: #25668
Co-authored-by: Brad King <brad.king@kitware.com>
2024-03-19 14:55:25 -04:00
Brad King aa643b66a8 Merge topic 'doc-release-3.29-typos'
eceb368ccc Help: Fix typos in 3.29 docs
31fb693d06 Help: Fix typos and grammar in pre-3.29 docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9353
2024-03-19 10:10:16 -04:00
Brad King b877fb49ce Merge topic 'doc-release-3.29-typos' into release-3.29
eceb368ccc Help: Fix typos in 3.29 docs
31fb693d06 Help: Fix typos and grammar in pre-3.29 docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9353
2024-03-19 10:10:15 -04:00
Brad King 6b035118de Merge topic 'doc-exit-code-range'
c980745b82 Help: Specify advisable range for exit code in cmake_language(EXIT)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9352
2024-03-19 10:09:20 -04:00
Craig Scott c980745b82 Help: Specify advisable range for exit code in cmake_language(EXIT)
The limitations added here are documented in the bash shell's
reference manual.
2024-03-19 22:37:52 +11:00
Craig Scott eceb368ccc Help: Fix typos in 3.29 docs 2024-03-19 21:47:28 +11:00
Craig Scott 31fb693d06 Help: Fix typos and grammar in pre-3.29 docs 2024-03-19 21:47:21 +11:00
Brad King e3a8a6fc0c Merge topic 'doc-project-include-vars-3.29'
dcb894fb00 Help: Update project() code injection for new 3.29 include behavior
09cf39ab07 Help: Improve wording of CMAKE_PROJECT_..._INCLUDE... changes for 3.29

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9343
2024-03-18 13:59:53 -04:00
Craig Scott dcb894fb00 Help: Update project() code injection for new 3.29 include behavior
Specifically, the various CMAKE_PROJECT_...INCLUDE... variables can
now take a list of things, and those things can be module names
too, not just file names.
2024-03-16 17:43:25 +11:00
Craig Scott 09cf39ab07 Help: Improve wording of CMAKE_PROJECT_..._INCLUDE... changes for 3.29 2024-03-16 17:42:10 +11:00
Brad King 8526943b8c Merge topic 'LINKER_TYPE-mold-support'
801ae06952 LINKER_TYPE: Support MOLD only on GCC versions that support it
939ac5287e LINKER_TYPE: fix spelling error in message
922883782b LINKER_TYPE: Document that linker tool should be in the PATH

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9334
2024-03-14 11:45:14 -04:00
Brad King 8f0801cacc Merge topic 'LINKER_TYPE-mold-support' into release-3.29
801ae06952 LINKER_TYPE: Support MOLD only on GCC versions that support it
939ac5287e LINKER_TYPE: fix spelling error in message
922883782b LINKER_TYPE: Document that linker tool should be in the PATH

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9334
2024-03-14 11:45:13 -04:00
Brad King 253397b018 Merge topic 'ctest-tls-options'
aeb8bcc055 ctest: Fall back to CMake options for TLS version
56e319ce4a ctest: Fall back to CMake options for TLS server verification
6671f17f65 ctest: Add explicit options for TLS version
0aba13a2f3 ctest: Add explicit options for TLS server verification
51728a6dd3 CTest: Create scope to isolate defaults for DartConfiguration.tcl
8a3a486fb5 cmCTestCurl: Factor out helper struct for curl options
7f668bb94f cmCTestCurl: Use inline member initialization
add81210df cmCurl: Assert that we cover all TLS versions supported by our vendored curl
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9318
2024-03-13 11:05:17 -04:00
Brad King b7c78e1592 Merge topic 'export-find_dependency-calls'
3a739d4dcb EXPORT_PACKAGE_DEPENDENCIES: Add experimental feature gate

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9336
2024-03-13 10:57:08 -04:00
Brad King 3a739d4dcb EXPORT_PACKAGE_DEPENDENCIES: Add experimental feature gate
Some design concerns have been raised after trying the 3.29 release
candidates.  Avoid committing to a stable public interface for now.

Issue: #25767
2024-03-12 14:24:53 -04:00
Brad King aeb8bcc055 ctest: Fall back to CMake options for TLS version
Use `CMAKE_TLS_VERSION` or `ENV{CMAKE_TLS_VERSION}` if
`CTEST_TLS_VERSION` is not set.

Issue: #25701
2024-03-12 10:47:08 -04:00
Brad King 56e319ce4a ctest: Fall back to CMake options for TLS server verification
Use `CMAKE_TLS_VERIFY` if `CTEST_TLS_VERIFY` is not set.
2024-03-12 10:46:42 -04:00
Brad King 6671f17f65 ctest: Add explicit options for TLS version
Add a dedicated `TLSVersion` ctest option and a `CTEST_TLS_VERSION`
variable to control it.

Issue: #25701
2024-03-12 10:46:23 -04:00
Brad King 0aba13a2f3 ctest: Add explicit options for TLS server verification
Add a dedicated `TLSVerify` ctest option and a `CTEST_TLS_VERIFY`
variable to control it.  Deprecate `CurlOptions` because it exposes
internal implementation details.
2024-03-12 10:46:11 -04:00
Brad King 9e5b954adb Help: Format ctest(1) CurlOptions values as a definition list 2024-03-12 10:43:37 -04:00
Brad King fbae527191 Help: Factor out CMAKE_TLS_VERSION allowed values 2024-03-12 10:43:37 -04:00
Marc Chevrier 922883782b LINKER_TYPE: Document that linker tool should be in the PATH
Issue: #25748
2024-03-12 09:00:49 -04:00
Brad King 89e99cca63 Merge topic 'ctest-j-default'
5de1e21659 ctest: Allow passing -j without value to choose a contextual default
bbcbcff7d9 cmCTestMultiProcessHandler: Modernize member initialization
7457b474a1 Tests: Remove unnecessary parallel suppression from CTestCoverageCollectGCOV
ae69801d96 Tests: Convert CTestTestSkipReturnCode to RunCMake.ctest_test case
30dda49416 Tests: Convert CTestTestSerialOrder to RunCMake.ctest_test case

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9315
2024-03-11 10:18:50 -04:00
Brad King 04d8bc6bb9 Merge topic 'ctest-j-default' into release-3.29
5de1e21659 ctest: Allow passing -j without value to choose a contextual default
bbcbcff7d9 cmCTestMultiProcessHandler: Modernize member initialization
7457b474a1 Tests: Remove unnecessary parallel suppression from CTestCoverageCollectGCOV
ae69801d96 Tests: Convert CTestTestSkipReturnCode to RunCMake.ctest_test case
30dda49416 Tests: Convert CTestTestSerialOrder to RunCMake.ctest_test case

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9315
2024-03-11 10:18:49 -04:00
Brad King 4905335776 Merge topic 'ctest-tests-from-file'
170ec48601 Help: Improve ctest tests-from-file documentation wording and wrapping
1a4837641e ctest: Remove unnecessary and ambiguous tests-from-file comment syntax
d52c66bfb3 ctest: Honor tests-from-file options with empty input
8673264e25 Tests: Make ctest tests-from-file expected output more precise

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9322
2024-03-11 10:17:00 -04:00
Brad King 5de1e21659 ctest: Allow passing -j without value to choose a contextual default
Under job server integration, added by commit 80fe56c481 (ctest: Add
support for running under a make job server on POSIX systems,
2023-11-15, v3.29.0-rc1~324^2), use a very high default so that
parallelism is effectively limited only by available job server tokens.

Otherwise, choose a default limit based on the number of processors.

Also allow passing `0` to specify unbounded parallelism.

Fixes: #25739
2024-03-10 11:41:39 -04:00
Brad King 170ec48601 Help: Improve ctest tests-from-file documentation wording and wrapping 2024-03-08 16:26:12 -05:00