Commit Graph

3319 Commits

Author SHA1 Message Date
Brad King
cdc901797a CMake 3.29.6 2024-06-17 14:49:43 -04:00
Brad King
0167089484 CPack/WiX: Restore default (missing) InstallScope from 3.28 and lower
In commit 60661f6770 (CPack/WiX: Make InstallScope configurable,
2023-11-07, v3.29.0-rc1~413^2) the `CPACK_WIX_INSTALL_SCOPE` default was
set to `perMachine`.  While installers created with `perMachine` have
better behavior on their own than installers created without any
`InstallScope`, they do not cleanly convert existing installations on
updates.

Fixes: #26029
2024-06-05 13:47:36 -04:00
Brad King
efaa9efece CMake 3.29.4 2024-06-03 14:28:41 -04:00
Brad King
5b1669d225 Merge branch 'release-3.28' into release-3.29 2024-06-03 14:16:47 -04:00
Brad King
9f72ac3644 CMake 3.28.6 2024-06-03 13:35:26 -04:00
Brad King
b39fb31bf4 CMake 3.29.3 2024-05-07 12:49:54 -04:00
Brad King
bef0d48fbb Merge branch 'release-3.28' into release-3.29 2024-05-07 09:20:30 -04:00
Brad King
9f7ec4c297 CMake 3.28.5 2024-05-07 08:42:47 -04:00
Brad King
d3190d6a73 CMake 3.29.2 2024-04-11 10:12:19 -04:00
Brad King
a4774b0c10 CMake 3.29.1 2024-04-03 11:45:14 -04:00
Evan Wilde
3fb4092826 Swift: Add CMAKE_LINKER_TYPE support
Extend commit 96a953b1ed (Add options to specify linker tool, 2023-09-27,
v3.29.0-rc1~577^2) with the `CMAKE_Swift_USING_LINKER_*` variables
needed to support `CMAKE_LINKER_TYPE` for Swift.
2024-04-02 10:42:12 -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
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
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
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
scivision
53a542936e Help: Convert http URLs to https 2024-03-07 09:42:45 -05:00
Brad King
dae7c6f0d8 Merge topic 'backport-3.28-visionOS' into release-3.29
dbfc53a2bf Help: Add 3.28.4 release note draft for visionOS updates

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9262
2024-02-15 14:32:18 -05:00
Brad King
dbfc53a2bf Help: Add 3.28.4 release note draft for visionOS updates
Hide it in a Sphinx comment pending the actual 3.28.4 release.

Issue: #25266
2024-02-15 13:16:15 -05:00
مهدي شينون (Mehdi Chinoune)
2a4e8f03ef MinGW: Add support for OBJC and OBJCXX 2024-02-12 19:46:41 -05:00
Alan Phipps
9ba0a54554 TIClang: Add support for TI Clang-based compilers, including tiarmclang
Add TIClang compiler ID and support in compiler modules.  Update
documentation.  Add rudimentary RunCMake test for TIClang to test
basic functionality.

Fixes: #24619
2024-02-09 15:54:40 -05:00
Brad King
d968391a0f Merge topic 'doc-autogen' into release-3.29
ccaf529c4e Autogen: Update Documentation
16cc011fa5 cmQtAutoGenGlobalInitializer: Improve Const-correctness

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9223
2024-02-08 11:10:47 -05:00
Orkun Tokdemir
ccaf529c4e Autogen: Update Documentation
* Add Qt 6 to documentation
* Add explanation about `<ORIGIN>_autogen_timestamp_deps`

Fixes: #25201
2024-02-08 09:16:37 -05:00
Brad King
1d1638c99d Help: Drop development topic notes to prepare release
Release versions do not have the development topic section of
the CMake Release Notes index page.
2024-02-06 14:48:37 -05:00
Brad King
ab29be4ce1 Help: Organize and revise 3.29 release notes
Add section headers similar to the 3.28 release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.
2024-02-06 09:29:12 -05:00
Brad King
ca7ef81c39 Help: Consolidate 3.29 release notes
Run the `Utilities/Release/consolidate-relnotes.bash` script to move
notes from `Help/release/dev/*` into `Help/release/3.29.rst`.
2024-02-06 09:29:11 -05:00
Brad King
278ee265a1 Merge topic 'findopengl-glu-include-dir'
aebebf72df FindOpenGL: Add support for a separate GLU include directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !9216
2024-02-06 08:53:20 -05:00
Jordan Williams
aebebf72df FindOpenGL: Add support for a separate GLU include directory
Add a OPENGL_GLU_INCLUDE_DIR cache variable for `GL/glu.h` and attach it
as an include directory to the `OpenGL::GLU` target.  Also add a
`OPENGL_INCLUDE_DIRS` result variable to list all include directories.
Account for the GLU header when deciding whether GLU is found.

Fixes: #25627
2024-02-05 14:06:06 -05:00
Brad King
0d451ea92b Merge branch 'release-3.28' 2024-02-05 11:05:51 -05:00
Brad King
5e984bb352 CMake 3.28.3 2024-02-05 10:28:25 -05:00
Brad King
58d424bca1 Merge topic 'add_custom_command-target-alias'
3b07ec631d add_custom_command: Allow adding build event via ALIAS target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9201
2024-02-01 08:32:20 -05:00
Chen Linxuan
3b07ec631d add_custom_command: Allow adding build event via ALIAS target
Signed-off-by: Chen Linxuan <me@black-desk.cn>
2024-02-01 08:21:41 -05:00
Silvio Traversaro
06af18b9db cmake: Allow CMAKE_INSTALL_PREFIX to be set by environment variable
Fixes: #25023
2024-01-30 11:44:45 -05:00
Brad King
b0d8b857d8 Merge branch 'release-3.28' 2024-01-29 15:47:25 -05:00
Brad King
1f25aa1a0a CMake 3.28.2 2024-01-29 15:01:32 -05:00
Brad King
622a498477 Merge topic 'test-launcher-emulator-genex'
13ece67a58 Add genex support to TEST_LAUNCHER and CROSSCOMPILING_EMULATOR
b9ad73fcb2 cmTestGenerator: De-duplicate TEST_LAUNCHER and CROSSCOMPILING_EMULATOR impl

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9198
2024-01-29 10:50:34 -05:00
Brad King
13ece67a58 Add genex support to TEST_LAUNCHER and CROSSCOMPILING_EMULATOR
Evaluate generator expressions in these properties, as they apply to
`add_test`, `add_custom_command`, and `add_custom_target`.

The `CMAKE_CROSSCOMPILING_EMULATOR` variable's `try_run` behavior occurs
at configure time and so cannot support generator expressions.
2024-01-29 10:30:24 -05:00
Craig Scott
339ae33e55 CPack: Change CPACK_PRODUCTBUILD_DOMAINS default to true (CMP0161)
Fixes: #23351
2024-01-28 21:09:12 +11:00
Brad King
d9b9f63083 Merge topic 'ctest-tests-from-file'
701029726f ctest_test: add options INCLUDE_FROM_FILE and EXCLUDE_FROM_FILE
dbacc1d5a8 ctest: add command line option to exclude tests listed in a given file
022f20f663 ctest: add command line option to run the tests listed in a given file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !9128
2024-01-26 10:14:58 -05:00
Alex Neundorf
701029726f ctest_test: add options INCLUDE_FROM_FILE and EXCLUDE_FROM_FILE
These options can be used to specify files which can be used
to restrict the set of tests that will be executed.

Fixes: #25455
2024-01-25 12:38:04 -05:00
Alex Neundorf
dbacc1d5a8 ctest: add command line option to exclude tests listed in a given file
Add `--exclude-from-file <filename>` to exclude the tests listed in the
given file.

Issue: #25455
2024-01-25 12:37:56 -05:00
Alex Neundorf
022f20f663 ctest: add command line option to run the tests listed in a given file
Add `--tests-from-file <filename>` to run only the tests listed in the
given file.  The test names must match exactly, no regexps or something.
The listed tests can still be filtered with a regexp using -R.

Issue: #25455
2024-01-25 12:37:16 -05:00
Ben Boeckel
8218aed118 IntelLLVM: support marking include paths as SYSTEM directories
Also learn how to suppress warnings when possible.

See: https://discourse.cmake.org/t/icx-on-windows-supports-external-i/8739
2024-01-24 14:21:05 -05:00
Brad King
4571ce5f1a Merge topic 'cuda-clang-windows'
88c740462c CUDA/Clang: Add support for MSVC ABI on Windows using GNU-like frontend

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !9172
2024-01-23 14:56:16 -05:00
Brad King
88c740462c CUDA/Clang: Add support for MSVC ABI on Windows using GNU-like frontend
Fixes: #20776
2024-01-22 09:33:54 -05:00
Brad King
c6efbd78d8 MSVC: Teach find_library to consider the 'libfoo.a' naming convention
When targeting the GNU ABI, we consider `.a` libraries first but also
accept `.lib`.  For symmetry, when targeting the MSVC ABI, we now
consider `.lib` first but also accept `.a`.

This adds support for meson-generated static libraries, which are named
with the pattern `lib${foo}.a`:

* https://mesonbuild.com/FAQ.html#why-does-building-my-project-with-msvc-output-static-libraries-called-libfooa

Note that this was previously attempted by

* commit be848a71b0 (MSVC: Teach find_library to consider the 'libfoo.a'
                     naming convention, 2022-09-19, v3.25.0-rc1~111^2)

but was reverted by

* commit 955d6245c1 (MSVC: Revert "Teach find_library to consider the
                     'libfoo.a' naming convention", 2022-11-28, v3.25.1~6^2)

due to problems finding GNU ABI libraries in PATH-derived prefixes.
Since then,

* commit 0a81110b84 (find_(library|file|path): Drop PATH-derived search
                     prefixes, 2023-09-14, v3.28.0-rc1~91^2)

removed the problematic search paths, so we can restore this change.

Fixes: #23975
2024-01-19 17:12:36 -05:00
leha-bot
1bb1769235 cmake_language: Add EXIT subcommand
Add tests to cover these cases:

* run as regular CMake module, in NORMAL_MODE (expected to fail);
* run as CMake script in SCRIPT_MODE (expected to exit with given code);
* run as CMake script that `include()`-s another script with EXIT subcommand;
* run as CMake script which EVAL-uates EXIT subcommand via
  `cmake_language(EVAL CODE "<cmake code>")`.

Fixes: #23162
2024-01-16 10:41:31 +03:00
Brad King
38234058ff Merge topic 'ctest-cli-http-headers'
20adf8cfce ctest: allow HTTP headers via command line

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9123
2024-01-09 10:54:54 -05:00
Matthew Woehlke
20adf8cfce ctest: allow HTTP headers via command line
Add ability to specify HTTP headers via `ctest -T Submit`.
2024-01-08 14:11:40 -05:00
Brad King
5dd4d3d4e3 Merge topic 'revert-ExternalProject-download-byproducts'
fd3c9876c6 ExternalProject: revert `BYPRODUCTS` for download outputs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9097
2024-01-04 11:35:11 -05:00