Commit Graph

66269 Commits

Author SHA1 Message Date
Brad King 679a3d9e6c Merge topic 'enforce-fc-fully-disconnected-requirements'
f588421b58 FetchContent: Enforce FETCHCONTENT_FULLY_DISCONNECTED requirements

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9556
2024-05-30 10:13:29 -04:00
Brad King c024b5cf9a Merge topic 'CUDAToolkit_search_non_activated_compiler_paths'
eed16fbc00 FindCUDAToolkit: Use CUDA compiler path even when CUDA lang not enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9558
2024-05-30 10:12:39 -04:00
Brad King 6f365e1c5b Merge topic 'FindBLAS-LAPACK-libblastrampoline'
847a25c823 FindBLAS/LAPACK: Add libblastrampoline support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Mosè Giordano <mose@gnu.org>
Merge-request: !9557
2024-05-30 10:11:47 -04:00
Brad King b2552f2e95 Merge branch 'release-3.29' 2024-05-30 10:00:54 -04:00
Brad King c02dd58080 Merge topic 'msvc-v143-versions'
3873574f89 Help: Update MSVC_VERSION range for VS 17.10's MSVC 14.40 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9554
2024-05-30 10:00:54 -04:00
Brad King f952513823 Merge topic 'msvc-v143-versions' into release-3.29
3873574f89 Help: Update MSVC_VERSION range for VS 17.10's MSVC 14.40 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9554
2024-05-30 10:00:53 -04:00
Kitware Robot ce54067d81 CMake Nightly Date Stamp 2024-05-30 00:01:17 -04:00
Robert Maynard eed16fbc00 FindCUDAToolkit: Use CUDA compiler path even when CUDA lang not enabled
Fixes: #25567
2024-05-29 14:39:29 -04:00
Brad King 3873574f89 Help: Update MSVC_VERSION range for VS 17.10's MSVC 14.40 toolset
According to this blog post:

* https://devblogs.microsoft.com/cppblog/msvc-toolset-minor-version-number-14-40-in-vs-2022-v17-10/

the 14.40 through 14.49 version range will be used by the v143 toolsets.

Fixes: #26015
2024-05-29 11:48:08 -04:00
Ian McInerney 847a25c823 FindBLAS/LAPACK: Add libblastrampoline support
libblastrampoline is a BLAS/LAPACK demuxing layer to allow selecting a
BLAS/LAPACK library at runtime.

Fixes: #25913
2024-05-29 09:21:07 -04:00
Brad King 54c9185b33 Merge topic 'deprecate-fetchcontent_populate'
4370fcf750 FetchContent: Deprecate FetchContent_Populate(depName)
bc70b458ad Help: Minor grammar improvements for FetchContent

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9552
2024-05-29 08:41:57 -04:00
Brad King a5269e0693 Merge topic 'hip-std'
c299fd8266 Tests/CompileFeatures: Cover hip_std_## meta-features
5d93c421f1 HIP: Populate CMAKE_HIP_KNOWN_FEATURES global property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9555
2024-05-29 08:35:26 -04:00
Brad King ad90d891f8 Merge topic 'swift-multi-config'
5bb7f8a4dd Swift: Use per-config module file locations in multi-config generators
b2e042d77a cmGeneratorTarget: Adopt Swift-related methods from the Ninja generator
45b3387c50 Tests/RunCMake/Swift: Enable more cases with Ninja Multi-Config

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9501
2024-05-29 08:34:21 -04:00
Brad King bcfcb964ce Merge topic 'doc-swift-module-dir-caveat'
61e76200d7 Help: Discourage use of Swift_MODULE_DIRECTORY with multi-config generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9547
2024-05-29 08:32:08 -04:00
Brad King 26befdb554 Merge branch 'release-3.29' 2024-05-29 08:31:02 -04:00
Brad King 802b9d0afb Merge branch 'release-3.28' 2024-05-29 08:31:00 -04:00
Brad King 1885903a76 Merge branch 'release-3.28' into release-3.29 2024-05-29 08:30:48 -04:00
Brad King 69eab2c4bc Merge branch 'release-3.29' 2024-05-29 08:30:11 -04:00
Brad King 631934633d Merge topic 'update-kwsys'
b2081e3810 Merge branch 'backport-kwsys-ConsoleBuf-windows-terminal' into update-kwsys
98dd754b62 KWSys: ConsoleBuf: Fix test case when running under Windows Terminal
a151fdda01 Merge branch 'upstream-KWSys' into update-kwsys
c6ef3299d0 KWSys 2024-05-28 (0d6eac1f)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9553
2024-05-29 08:30:11 -04:00
Brad King f2ea85f516 Merge topic 'update-kwsys' into release-3.29
98dd754b62 KWSys: ConsoleBuf: Fix test case when running under Windows Terminal

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9553
2024-05-29 08:30:10 -04:00
Brad King 713bca2677 Merge topic 'backport-kwsys-ConsoleBuf-windows-terminal' into release-3.28
98dd754b62 KWSys: ConsoleBuf: Fix test case when running under Windows Terminal

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9553
2024-05-29 08:28:54 -04:00
Craig Scott f588421b58 FetchContent: Enforce FETCHCONTENT_FULLY_DISCONNECTED requirements
FETCHCONTENT_FULLY_DISCONNECTED should only be set to true if
each dependency's source directory has already been populated.
Previously, this wasn't being checked, but now it is (subject to a new
policy).
2024-05-29 20:39:17 +10:00
Craig Scott 4370fcf750 FetchContent: Deprecate FetchContent_Populate(depName)
Projects should use FetchContent_MakeAvailable(depName)
instead. Policy CMP0169 provides backward compatibility.
2024-05-29 18:52:24 +10:00
Kitware Robot d636cd2ba9 CMake Nightly Date Stamp 2024-05-29 00:01:17 -04:00
Brad King c299fd8266 Tests/CompileFeatures: Cover hip_std_## meta-features 2024-05-28 14:36:50 -04:00
Brad King 5d93c421f1 HIP: Populate CMAKE_HIP_KNOWN_FEATURES global property
Fixes: #26013
2024-05-28 14:36:42 -04:00
Dave Abrahams 61e76200d7 Help: Discourage use of Swift_MODULE_DIRECTORY with multi-config generators
It does not yet support per-config module directories.

Issue: #25989
Issue: #26010
2024-05-28 11:24:33 -04:00
Brad King b2081e3810 Merge branch 'backport-kwsys-ConsoleBuf-windows-terminal' into update-kwsys 2024-05-28 09:12:56 -04:00
Brad King 98dd754b62 KWSys: ConsoleBuf: Fix test case when running under Windows Terminal
Our test case writes a NUL byte to the console to test its behavior.
The behavior of Windows Terminal differs from Windows Console Host
(conhost.exe).  Detect which of these is in use at runtime and adjust
our expected result accordingly.
2024-05-28 09:11:56 -04:00
Brad King a151fdda01 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2024-05-28 (0d6eac1f)
2024-05-28 09:07:40 -04:00
KWSys Upstream c6ef3299d0 KWSys 2024-05-28 (0d6eac1f)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit 0d6eac1feb8615fe59e8f972d41d1eaa8bc9baf8 (master).

Upstream Shortlog
-----------------

Brad King (1):
      beaf1ca1 ConsoleBuf: Fix test case when running under Windows Terminal
2024-05-28 09:07:39 -04:00
Brad King 6b2171d94e Merge branch 'release-3.29' 2024-05-28 09:01:15 -04:00
Brad King 9edaf10834 Merge branch 'release-3.28' 2024-05-28 09:01:13 -04:00
Brad King 0b2c781cb7 Merge branch 'release-3.28' into release-3.29 2024-05-28 09:00:55 -04:00
Brad King efe62205a6 Merge branch 'release-3.29' 2024-05-28 08:56:42 -04:00
Brad King 374716a47a Merge topic 'execute_process-child-startup-info'
fa8c04b421 Tests/RunCMake/execute_process: Check STARTUPINFOW reserved members
d98df689ab Merge branch 'libuv-win-process-no-extra-stdio'
a590382850 libuv: win/spawn: disable extra-file-descriptor support not needed by CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9541
2024-05-28 08:56:42 -04:00
Brad King 522925206c Merge topic 'execute_process-child-startup-info' into release-3.29
fa8c04b421 Tests/RunCMake/execute_process: Check STARTUPINFOW reserved members
d98df689ab Merge branch 'libuv-win-process-no-extra-stdio'
a590382850 libuv: win/spawn: disable extra-file-descriptor support not needed by CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9541
2024-05-28 08:56:41 -04:00
Brad King 49c7a718de Merge topic 'libuv-win-process-no-extra-stdio' into release-3.28
a590382850 libuv: win/spawn: disable extra-file-descriptor support not needed by CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9541
2024-05-28 08:56:07 -04:00
Craig Scott 46d00d425c Merge topic 'fetchcontent_policies_block'
a837f15ebf FetchContent: Set policies for most commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9551
2024-05-28 06:43:32 -04:00
Kitware Robot 50dcac2b67 CMake Nightly Date Stamp 2024-05-28 00:01:12 -04:00
Craig Scott a837f15ebf FetchContent: Set policies for most commands
Previously, FetchContent was relying on the policies of the
includer being compatible with the module. That made the
module vulnerable to subtle problems where policy settings
might lead to unexpected behavior.

With this change, we now specify the policies for as much of
the module as we can without breaking backward compatibility.
Only a few specific implementation details of the
FetchContent_MakeAvailable() macro have to remain uncontrolled
due to the way those parts can invoke user or project code which
may be relying on the includer's policy settings (intentionally or not).
2024-05-27 20:52:16 +10:00
Kitware Robot ffa5d7d497 CMake Nightly Date Stamp 2024-05-27 00:02:47 -04:00
Craig Scott bc70b458ad Help: Minor grammar improvements for FetchContent 2024-05-27 08:24:10 +10:00
Craig Scott a8fe825ffb Merge topic 'cmp0168_fetchcontent_populate'
2efceb290e FetchContent: Make FetchContent_Populate() honor CMP0168

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9550
2024-05-26 18:22:54 -04:00
Kitware Robot a2b3d3c592 CMake Nightly Date Stamp 2024-05-26 00:01:15 -04:00
Craig Scott 2efceb290e FetchContent: Make FetchContent_Populate() honor CMP0168 2024-05-25 19:01:10 +10:00
Kitware Robot 36733882be CMake Nightly Date Stamp 2024-05-25 00:01:14 -04:00
Dave Abrahams 5bb7f8a4dd Swift: Use per-config module file locations in multi-config generators
Place `.swiftmodule` files a subdirectory named after the configuration.

Fixes: #25864
Fixes: #25997

- Swift/RunCMakeTest.cmake:
  - CMP0157-OLD was enabled for Xcode, where it works.
  - A test was added that verifies .swiftmodule's are generated into
    separate directories with multi-config generators.

- Tests/SwiftOnly/CMakeLists.txt: tests were added that validate that
  cross-subdirectory module dependencies (via target_link_libraries)
  work.
2024-05-24 15:23:41 -07:00
Dave Abrahams b2e042d77a cmGeneratorTarget: Adopt Swift-related methods from the Ninja generator
They will see more use as Swift bugs are fixed in the
Ninja Multi-Config generator.
2024-05-24 15:20:08 -07:00
Dave Abrahams 45b3387c50 Tests/RunCMake/Swift: Enable more cases with Ninja Multi-Config
Also factor out testing that's common across Xcode and Ninja.* generators.

- Ninja expected output files were extended to accept directories named
  after the configuration in paths.
- Tests that previously ran with Ninja were allowed to run with Ninja
  Multi-Config.
- Swift/RunCMakeTest.cmake:
  - Checks for conditions where little or no testing could be done
    were moved to the top of the file, with return()s to limit nesting
    of the remainder of the code ("Early bailouts").
  - CMP0157 tests, which were being performed for all generators, were
    factored out into a block at the top of the file.
  - RunCMake_TEST_OPTIONS is set initially for all multi-config
    generators and list(APPEND)'ed-to in each block() where it was previously
    set() and unset().
2024-05-24 13:41:01 -07:00