Commit Graph

64328 Commits

Author SHA1 Message Date
Alexander Krabler
2ea216a6bb GoogleTest: Add working directory to gtest_discover_tests error message
If the working directory didn't exist, the old message just says:

    Error running test executable.

        Path: '<Path to test executable>'
        Result: No such file or directory
        Output:

This leads the user to the conclusion that the test executable doesn't
exist, which isn't true.  Make the true cause visible by reporting the
working directory in the error message.
2023-12-18 09:03:51 -05:00
Brad King
ba41ca758a Merge topic 'swift-split-compilation-model'
9bed4f4d81 Swift/Ninja: Split compilation model
64b3367845 cmGlobalGenerator: Allow passing language to GetLangaugeOutputExtension

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8907
2023-12-16 07:15:41 -05:00
Kitware Robot
316bb67ff7 CMake Nightly Date Stamp 2023-12-16 00:01:08 -05:00
Brad King
6ba3bb0563 Merge topic 'cmake-test-launcher'
88863d83d6 fileapi: Add test launcher to codemodel-v2
1ec0372ed4 add_test: Optionally use a launcher for tests running in-project targets
478a5f4e04 fileapi: Make launcher attribute 'arguments' optional
b44e38a397 cmFileAPICodemodel: Add missing std::move()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8963
2023-12-15 09:34:20 -05:00
Brad King
6a67f71b57 Merge topic 'update-curl'
fe2fe52c86 curl: Set build options the way we need for CMake
548f0cfd1d Merge branch 'upstream-curl' into update-curl
fe5ffe06a9 curl 2023-12-06 (7161cb17)
38f85b8390 curl: Update script to get curl 8.5.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9069
2023-12-15 09:33:31 -05:00
Brad King
673e6b3f33 Merge branch 'release-3.28' 2023-12-15 09:32:00 -05:00
Brad King
d901c4aa95 Merge topic 'FindCUDAToolkit-cupti'
04959e0285 Tests: Verify CUDA::cupti existence on a subset of machines
09a3c8b46b CUDAToolkit: Correctly search all include paths from compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9072
2023-12-15 09:32:00 -05:00
Brad King
e42eaa4342 Merge topic 'FindCUDAToolkit-cupti' into release-3.28
04959e0285 Tests: Verify CUDA::cupti existence on a subset of machines
09a3c8b46b CUDAToolkit: Correctly search all include paths from compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9072
2023-12-15 09:31:59 -05:00
Brad King
a15690da84 Merge branch 'release-3.28' 2023-12-15 09:30:56 -05:00
Brad King
762e3109a0 Merge topic 'FindBoost-1.84'
9dc0392df0 FindBoost: Add support for Boost 1.84

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9075
2023-12-15 09:30:56 -05:00
Brad King
a903e3b540 Merge topic 'FindBoost-1.84' into release-3.28
9dc0392df0 FindBoost: Add support for Boost 1.84

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9075
2023-12-15 09:30:55 -05:00
Evan Wilde
9bed4f4d81 Swift/Ninja: Split compilation model
Splitting the Swift build into an object build and a separate link step,
instead of building and linking in one step. The immediate benefit is
LSP support because we are able to emit compile-commands for Swift files
now. Additionally, it is possible to specify flags to the compile step,
enabling folks to emit C and C++ headers from their Swift builds for
C/C++ interop, without needing custom commands. Eventually, this gives
us a path toward working object libraries.

Object Libraries:
 - Object libraries don't work today because CMake doesn't emit targets
   for object libraries into the Ninja build file.
 - tl;dr: Object libraries work if they aren't WMO. Still need work to
   make WMO'd object libraries work.

   Object libraries still don't completely work with this patch because,
   while we emit the targets, the `TARGET_OBJECTS` generator expression
   expansion has a separate mechanism for determining what the names of
   the objects are based on the input source files, so targets that
   depend on an object library built with a whole-module optimization
   will depend on objects based on the name of the source file instead
   of the actual emitted object file.

These features require being able to accurately model wholemodule builds
though, because we actually need to track object files and WMO affects
what objects are emitted. For that, we require CMP0157 use the NEW
policy. When it's OLD, we have to fall back on the old behavior and
cannot provide object libraries or the compile-commands for LSP.

Issue: #25308
2023-12-15 05:51:13 -08:00
Kitware Robot
dc4ce42b66 CMake Nightly Date Stamp 2023-12-15 00:01:05 -05:00
Robert Maynard
04959e0285 Tests: Verify CUDA::cupti existence on a subset of machines
When we know that the cupti library exists explicitly request the CUDA Toolkit test to verify the existence
2023-12-14 14:05:28 -05:00
Robert Maynard
09a3c8b46b CUDAToolkit: Correctly search all include paths from compiler
The CUDAToolkit usage of `find_path( PATHS )` was incorrectly
quoting a list of paths causing none of them to be used.
2023-12-14 14:04:53 -05:00
Brad King
9dc0392df0 FindBoost: Add support for Boost 1.84
Update the list of known versions.

Run the command

    cmake -DBOOST_DIR=/path/to/boost_1_84_0 \
      -P Utilities/Scripts/BoostScanDeps.cmake

to extract dependencies from the 1.84.0 source tree.
They are the same as 1.83's dependencies, so just update
the version check for warning about newer versions.

Fixes: #25499
2023-12-14 11:35:26 -05:00
Brad King
6eafd7a37c Merge branch 'release-3.28' 2023-12-14 11:20:14 -05:00
Brad King
1eed682d7c CMake 3.28.1 v3.28.1 2023-12-14 10:47:27 -05:00
Brad King
75a68b803c Merge branch 'release-3.28' 2023-12-14 10:46:30 -05:00
Brad King
654cc4c25d Merge topic 'FindMatlab-version'
0f6e9d0658 FindMatlab: Fix processing of multiple versions from Windows Registry

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9074
2023-12-14 10:46:30 -05:00
Brad King
a76bb5f865 Merge topic 'FindMatlab-version' into release-3.28
0f6e9d0658 FindMatlab: Fix processing of multiple versions from Windows Registry

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9074
2023-12-14 10:46:29 -05:00
Brad King
0f6e9d0658 FindMatlab: Fix processing of multiple versions from Windows Registry
Fix logic from commit fff5c1507e (FindMatlab: refactor: use registry
query instead of execute_process, 2023-09-14, v3.28.0-rc1~82^2~7)
to work when multiple versions are found in the registry.

Issue: #25497
2023-12-14 10:35:56 -05:00
Brad King
46cd0a2acd Merge branch 'release-3.28' 2023-12-14 10:02:50 -05:00
Brad King
32cd449eec Merge topic 'FindTIFF-pre-CMP0057'
84930e9a4c FindTIFF: Restore support for projects that do not enable CMP0057

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9073
2023-12-14 10:02:50 -05:00
Brad King
146c75a557 Merge topic 'FindTIFF-pre-CMP0057' into release-3.28
84930e9a4c FindTIFF: Restore support for projects that do not enable CMP0057

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9073
2023-12-14 10:02:49 -05:00
Brad King
84930e9a4c FindTIFF: Restore support for projects that do not enable CMP0057
Since commit 6a3059e66f (FindTIFF: bridge `tiff-config` into
FindTIFF-compatible interface, 2023-09-14, v3.28.0-rc1~87^2) we use the
`if(IN_LIST)` test that required CMP0057.  Expand the scope over which
we enable that policy explicitly.

Issue: #25485
2023-12-14 09:43:08 -05:00
Brad King
f1c221ee3f Merge branch 'release-3.28' 2023-12-14 09:16:30 -05:00
Brad King
01eb3f01b7 Merge topic 'FindFreetype-use-config'
828df1d9e4 FindFreetype: Fix success message when config module is found

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9071
2023-12-14 09:16:29 -05:00
Brad King
4ba15ae3f3 Merge topic 'FindFreetype-use-config' into release-3.28
828df1d9e4 FindFreetype: Fix success message when config module is found

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9071
2023-12-14 09:16:28 -05:00
Brad King
828df1d9e4 FindFreetype: Fix success message when config module is found
Follow up commit d892dedf22 (FindFreetype: always find the config module
quietly, 2023-12-13) with a fix to the FPHSA call that reports success.

Fixes: #25485
2023-12-14 09:06:07 -05:00
Brad King
228129946b Merge branch 'release-3.28' 2023-12-14 08:30:02 -05:00
Brad King
d4eb72a3f6 Merge topic 'FindMatlab-version'
ef64c118de FindMatlab: Fix regression on Windows Registry lookup failure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9070
2023-12-14 08:30:02 -05:00
Brad King
3d1fbc4f6b Merge topic 'FindMatlab-version' into release-3.28
ef64c118de FindMatlab: Fix regression on Windows Registry lookup failure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9070
2023-12-14 08:30:00 -05:00
Brad King
fbfbe959c0 Merge branch 'release-3.28' 2023-12-14 08:28:26 -05:00
Brad King
4d45fbd56a Merge topic 'Find-CONFIG-chain-fixes'
581acbce52 FindTIFF: consider `IMPLIB`-using platforms
e8e7d9f775 FindTIFF: always find the config module quietly
a575bebf0d FindFreetype: also consider RelWithDebInfo-built libraries
d892dedf22 FindFreetype: always find the config module quietly

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9068
2023-12-14 08:28:25 -05:00
Brad King
db5716385e Merge topic 'Find-CONFIG-chain-fixes' into release-3.28
581acbce52 FindTIFF: consider `IMPLIB`-using platforms
e8e7d9f775 FindTIFF: always find the config module quietly
a575bebf0d FindFreetype: also consider RelWithDebInfo-built libraries
d892dedf22 FindFreetype: always find the config module quietly

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9068
2023-12-14 08:28:15 -05:00
Brad King
ef64c118de FindMatlab: Fix regression on Windows Registry lookup failure
Fix logic from commit dc9d9589e4 (FindMatlab:WIN32: return full Matlab
version when found via registry, 2023-09-14, v3.28.0-rc1~82^2~2) to
avoid assuming that a registry entry always exists and is non-empty.

Fixes: #25497
2023-12-14 08:12:13 -05:00
Kitware Robot
889dd287d3 CMake Nightly Date Stamp 2023-12-14 00:01:05 -05:00
Ben Boeckel
581acbce52 FindTIFF: consider IMPLIB-using platforms
Support multi-config-providing and `IMPLIB`-using deployments with the
`tiff-config` trampoline code. Follow the pattern used in `FindFreetype`
by commit ae9890cd36 (FindFreeType: consider `IMPLIB`-using platforms,
2023-10-26, v3.28.0-rc4~10^2~3).

See: #25485
2023-12-13 13:12:45 -05:00
Ben Boeckel
e8e7d9f775 FindTIFF: always find the config module quietly
When the config module is not present, a spurious "tiff not found" is
output before the pre-existing logic is used. Instead, silence the
module and use FPHSA to report as-if `TIFF` did the search.

Fixes: #25485
2023-12-13 13:12:45 -05:00
Ben Boeckel
a575bebf0d FindFreetype: also consider RelWithDebInfo-built libraries 2023-12-13 13:12:45 -05:00
Ben Boeckel
d892dedf22 FindFreetype: always find the config module quietly
When the config module is not present, a spurious "freetype not found"
is output before the pre-existing logic is used. Instead, silence the
module and use FPHSA to report as-if `Freetype` did the search.

See: #25485
2023-12-13 11:28:18 -05:00
Ralf Habacker
88863d83d6 fileapi: Add test launcher to codemodel-v2
We do not need to bump the minor version because it was recently bumped
by addition of the cross-compiling emulator as another kind of launcher.
2023-12-13 10:20:43 -05:00
Ralf Habacker
1ec0372ed4 add_test: Optionally use a launcher for tests running in-project targets
Add a `CMAKE_TEST_LAUNCHER` variable and corresponding `TEST_LAUNCHER`
target property.

Issue: #23672
2023-12-13 10:20:43 -05:00
Ralf Habacker
478a5f4e04 fileapi: Make launcher attribute 'arguments' optional
This was missed in commit 80a64c9ce5 (fileapi: Add cross-compiling
emulator to codemodel-v2, 2023-11-11).
2023-12-13 10:20:41 -05:00
Ralf Habacker
b44e38a397 cmFileAPICodemodel: Add missing std::move()
This was missed in commit 80a64c9ce5 (fileapi: Add cross-compiling
emulator to codemodel-v2, 2023-11-11).
2023-12-13 10:19:38 -05:00
Brad King
f3b667527e Merge branch 'release-3.28' 2023-12-13 09:34:51 -05:00
Brad King
f522cf4546 Merge topic 'doc-xcframeworks-stubs-apple'
e831eef933 Help: Note case where IMPORTED_IMPLIB isn't needed for (xc)frameworks
01735badee Help: XCFrameworks and stubs are supported on all Apple, not just macOS
6ac50df591 Help: Add missing versionadded directives for IMPORTED_IMPLIB

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9058
2023-12-13 09:34:51 -05:00
Brad King
ef6aec22a1 Merge topic 'doc-xcframeworks-stubs-apple' into release-3.28
e831eef933 Help: Note case where IMPORTED_IMPLIB isn't needed for (xc)frameworks
01735badee Help: XCFrameworks and stubs are supported on all Apple, not just macOS
6ac50df591 Help: Add missing versionadded directives for IMPORTED_IMPLIB

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9058
2023-12-13 09:34:50 -05:00
Brad King
b59123f0c1 Merge topic 'adsp-deps'
fccb1d3a36 ADSP: Use compiler-reported preprocessor dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9067
2023-12-13 09:33:57 -05:00