Commit Graph

63711 Commits

Author SHA1 Message Date
Ben Boeckel
73fbad3d93 cmNinjaTargetGenerator: use scan flag for modmap usage in exported commands
See: https://discourse.cmake.org/t/how-to-control-the-location-of-the-c-20-binary-module-interface-bmi-output-directory/7968
2023-12-22 16:18:18 -05:00
Brad King
158316dc0c Merge topic 'UsePkgConfig-trailing-whitespace' into release-3.28
61436858e4 UsePkgConfig: Restore removal of trailing whitespace from pkg-config output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9094
2023-12-20 09:03:38 -05:00
Jason E. Hale
61436858e4 UsePkgConfig: Restore removal of trailing whitespace from pkg-config output
Since commit f73a5bfaa9 (UsePkgConfig: Replace exec_program() with
execute_process(), 2023-07-24, v3.28.0-rc1~321^2~6), trailing whitespace
was introduced into libraries linked, which violates CMP0004.
2023-12-19 15:35:24 -05:00
Brad King
e9a3f3fb02 Merge topic 'Xcode-Check-Imported-Framework' into release-3.28
defbfd6f55 Xcode: Restore support for standalone IMPORTED_LOCATION_<CONFIG>

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9082
2023-12-19 08:03:59 -05:00
Marc Chevrier
defbfd6f55 Xcode: Restore support for standalone IMPORTED_LOCATION_<CONFIG>
In commit 878ae03832 (macOS: IMPORTED framework: Honor SYSTEM target
property in all cases, 2023-08-27, v3.28.0-rc1~162^2) we broke support
for `IMPORTED_LOCATION_<CONFIG>` without `IMPORTED_CONFIGURATIONS`.
Previously it worked if the importing project's configurations match the
set of `IMPORTED_LOCATION_<CONFIG>` properties set.  Fix that case.

Fixes: #25506
Issue: #25515
2023-12-18 10:18:25 -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
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
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
1eed682d7c CMake 3.28.1 v3.28.1 2023-12-14 10:47:27 -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
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
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
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
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
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
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
Craig Scott
e831eef933 Help: Note case where IMPORTED_IMPLIB isn't needed for (xc)frameworks 2023-12-13 11:36:22 +11:00
Brad King
9f01de132e Merge topic 'ci-xcode-15.1' into release-3.28
e2d25c6724 gitlab-ci: update macOS jobs to use Xcode 15.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9066
2023-12-12 09:58:19 -05:00
Brad King
7cbf1f7a58 Merge topic 'bug/fix_cupti_regression' into release-3.28
f69b9b7305 CUDAToolkit: Restore ability to find cupti headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Misha Chornyi <mchornyi@nvidia.com>
Merge-request: !9054
2023-12-12 08:36:26 -05:00
Brad King
4a194c7865 Merge topic 'Help-create_test_sourcelist' into release-3.28
464bc12bb7 Help/create_test_sourcelist: format arguments in the signature docs
131f9c9efa Help/create_test_sourcelist: add formatting markup
8540520902 Help/create_test_sourcelist: reflow prose

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9059
2023-12-12 08:35:06 -05:00
Brad King
9988609c49 Merge topic 'cmake-sources-no-scan' into release-3.28
91b7bf59a7 cmGlobalXCodeGenerator: disable C++ module scanning for force-lang files
9e19a61ddb cmLocalGenerator: disable C++ module scanning for unity sources
fa9a72a788 cmLocalGenerator: disable C++ module scanning for copied PCH sources
e5dce1a37e cmQtAutoGenInitializer: disable C++ module scanning for autogen sources
4fd596c34c cmGeneratorTarget: disable C++ module scanning for verify targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9064
2023-12-12 08:33:36 -05:00
Brad King
e2d25c6724 gitlab-ci: update macOS jobs to use Xcode 15.1 2023-12-11 16:16:36 -05:00
Ben Boeckel
91b7bf59a7 cmGlobalXCodeGenerator: disable C++ module scanning for force-lang files 2023-12-11 07:54:03 -05:00
Ben Boeckel
9e19a61ddb cmLocalGenerator: disable C++ module scanning for unity sources 2023-12-11 07:53:40 -05:00
Ben Boeckel
fa9a72a788 cmLocalGenerator: disable C++ module scanning for copied PCH sources 2023-12-11 07:53:13 -05:00
Ben Boeckel
e5dce1a37e cmQtAutoGenInitializer: disable C++ module scanning for autogen sources 2023-12-11 07:52:50 -05:00
Ben Boeckel
4fd596c34c cmGeneratorTarget: disable C++ module scanning for verify targets 2023-12-11 07:52:31 -05:00
Ben Boeckel
464bc12bb7 Help/create_test_sourcelist: format arguments in the signature docs 2023-12-09 23:15:29 -05:00
Ben Boeckel
131f9c9efa Help/create_test_sourcelist: add formatting markup 2023-12-09 10:17:45 -05:00
Ben Boeckel
8540520902 Help/create_test_sourcelist: reflow prose 2023-12-09 10:17:16 -05:00
Brad King
fabfaf0aa0 Merge topic 'test-gnu-hurd-sleep' into release-3.28
8f53526dec Tests: Do not expect EINTR when sleep is interrupted on GNU/Hurd

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9052
2023-12-09 08:10:37 -05:00
Brad King
41670c089b Merge topic 'ninja-dev' into release-3.28
101ac06b28 Tests: Update for changes to upstream ninja development version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !9053
2023-12-09 08:09:37 -05:00
Craig Scott
01735badee Help: XCFrameworks and stubs are supported on all Apple, not just macOS 2023-12-09 16:15:19 +11:00
Craig Scott
6ac50df591 Help: Add missing versionadded directives for IMPORTED_IMPLIB 2023-12-09 15:10:25 +11:00
Robert Maynard
f69b9b7305 CUDAToolkit: Restore ability to find cupti headers
Fixes #25484

PR !8835 failed to update the CUPTI header searches to use the
new internal FindCUDAToolkit search variables. This caused the
CUDA::cupti target to always not exist.
2023-12-08 11:46:54 -05:00
Mattias Ellert
8f53526dec Tests: Do not expect EINTR when sleep is interrupted on GNU/Hurd
Previously `RunCMake.CTestTimeout` failed on GNU/Hurd because the
`sleep` command does not set `errno` to `EINTR` when interrupted by a
signal, which is a Linux-specific feature.
2023-12-08 09:07:24 -05:00
Brad King
101ac06b28 Tests: Update for changes to upstream ninja development version
Account for:

* commit `8f47d5aa33` (Remove `-w dupbuild` completely, always error
                       on duplicate edges, 2023-11-29)
* commit `4d98903d4c` (Improve misleading error message when an output
                       is defined multiple times, 2023-12-06)
2023-12-08 09:04:44 -05:00
Brad King
2d60f5c7a6 Merge topic 'FindCUDAToolkit-fix-stubs' into release-3.28
d85bf99bcb FindCUDAToolkit: Fix stub library representation on reconfigure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !9045
2023-12-07 10:57:20 -05:00
Brad King
a7c21823ce Merge topic 'doc-fetchcontent-bad-ref' into release-3.28
bd50e8a058 Help: Fix malformed cross-reference in FetchContent docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9047
2023-12-07 09:02:13 -05:00
Craig Scott
bd50e8a058 Help: Fix malformed cross-reference in FetchContent docs 2023-12-07 17:04:25 +11:00
Brad King
d85bf99bcb FindCUDAToolkit: Fix stub library representation on reconfigure
Since commit 0744c02e24 (FindCUDAToolkit: targets pointing to stubs now
use IMPORTED_IMPLIB, 2023-07-24, v3.28.0-rc1~309^2) we recognize CUDA
stub libraries and represent them in a special way.  However, the logic
only works on the first configuration of a build tree when the libraries
are first found.  Once the results are cached, we incorrectly revert to
the non-stub representation.

Fix this by recognizing stub libraries based on their path instead.
2023-12-06 16:10:24 -05:00