Commit Graph

63213 Commits

Author SHA1 Message Date
Brad King 6546aa2a2a ci: Add HIP job using CUDA on NVIDIA GPUs 2023-09-21 15:34:37 -04:00
Brad King 18158bf81c HIP: Add support for NVIDIA GPUs
Add support for using the CUDA Toolkit's NVCC to compile HIP code.

Fixes: #25143
2023-09-21 15:34:37 -04:00
Brad King 127b6fa06b HIP: Add CMAKE_HIP_PLATFORM variable to specify GPU platform
For now, require the value to be `amd`, since that is the only
platform we currently support.
2023-09-21 15:34:37 -04:00
Brad King 90e23f40ee Tests/HIP/WithDefs: Clean up test case
Fix code copied from equivalent CUDA test.

Drop `CMAKE_HIP_ARCHITECTURES=OFF`.  That is already covered by
a dedicated `HIP.ArchitectureOff` test.
2023-09-21 15:34:37 -04:00
Brad King 9ebdf3281f Tests/HIP/ArchitectureOff: Cover HIP_ARCHITECTURES initialization
Verify that the property is initialized by `CMAKE_HIP_ARCHITECTURES`.
2023-09-21 15:34:37 -04:00
Brad King cfec29196e ci: Add CUDA 11.8 to HIP 5.5 image 2023-09-21 15:34:37 -04:00
Brad King 26470eb987 ci: Put HIP GPU platform in CMake_TEST_HIP
The `CMake_TEST_HIP` option is added explicitly to builds where we want
the tests to run, so we can set it to a value indicating the HIP GPU
platform.
2023-09-21 15:34:36 -04:00
Brad King b32ea7cff0 CUDA: Factor out helper to generate CUDA architecture flags
Prepare to use it for other languages.
2023-09-21 15:34:28 -04:00
Brad King b3a1f17567 CUDA: Factor out helper to validate CMAKE_CUDA_ARCHITECTURES
Prepare to use it for other languages.
2023-09-21 15:34:28 -04:00
Brad King 8617c28221 CUDA: Factor out helper for detecting native CUDA architectures
Prepare to use it for other languages.
2023-09-21 15:34:28 -04:00
Brad King 0db0fe7958 CUDA: Factor out helper to compute all CUDA architectures
Prepare to use it for other languages.
2023-09-21 15:34:28 -04:00
Brad King c16f1e2b93 CUDA: Factor out helper to find CUDA Toolkit for compiler
Prepare to use it for other languages.
2023-09-21 15:34:28 -04:00
Brad King a6841a967b CUDA: Factor out helper to filter implicit link libraries
Prepare to use it for other languages.
2023-09-21 15:34:27 -04:00
Brad King deff0e638d CUDA: Factor out helper to parse NVCC implicit compiler and linker flags
Prepare to use it for other languages.
2023-09-21 15:34:27 -04:00
Brad King e1b2a5062f CUDA: Factor out some NVCC compiler information
Prepare to use nvcc for other languages.
2023-09-21 15:34:27 -04:00
Brad King f125dfcd30 CUDA: Clarify order of logic finding CUDA Toolkit for compiler
Finish all the search logic before using any results.
2023-09-21 15:34:27 -04:00
Brad King d08b7f3cda CUDA: Clarify compiler-specific logic in architectures table 2023-09-21 15:34:27 -04:00
Brad King 7b2aec0fef CUDA: Clarify logic detecting compiler default CUDA architectures
Improve variable names and comments.

Remove a comment missed by commit c267ed205a (CUDA: Defer architecture
testing to the compiler testing step, 2022-04-25, v3.24.0-rc1~222^2)
about architecture verification.
2023-09-21 15:34:27 -04:00
Brad King 69a5ef7cc0 CUDA: Simplify isolation of work variables for determining compiler
Unset variables as soon as we are done with them.
Rename one work variable to a private name.
2023-09-21 15:34:27 -04:00
Brad King 8a966debe3 CUDA: Combine consecutive blocks using same condition for determining compiler 2023-09-21 15:34:26 -04:00
Brad King 72efbeadae CUDA: Simplify CMAKE_GENERATOR references for determining compiler 2023-09-21 15:34:23 -04:00
Brad King 711de9aef6 cmGeneratorTarget: Clarify local variable names for device architectures 2023-09-19 11:31:23 -04:00
Brad King 9e641b73c1 Merge topic 'test-ExportImport'
be5603d031 Tests: Fix ExportImport test with read-only source tree

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8813
2023-09-19 09:10:44 -04:00
Brad King 3d3c49cd9c Merge topic 'update-module-document'
3a54ee8cd5 FindQuickTime: Improve documentation formatting
3cf5f4af54 FindProducer: Improve documentation formatting
b35c17b202 FindPhysFS: Improve documentation formatting

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8812
2023-09-19 09:09:44 -04:00
Brad King 7a88ff9487 Merge topic 'FindMatlab-version-full'
39881de3f6 FindMatlab:macOS: return full version when found by path guess
35bcb9116c FindMatlab:lint: set(... CACHE INTERNAL) implies FORCE
dc9d9589e4 FindMatlab:WIN32: return full Matlab version when found via registry
abbfdd3b3a FindMatlab: improve version regex
ff20d993f3 FindMatlab: doc: rename osx=>macOS
d7b73f14c2 FindMatlab: retrieve full major.minor.patch.tweak
8b8135487f FindMatlab: refactor: remove unneeded syntax
fff5c1507e FindMatlab: refactor: use registry query instead of execute_process

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8805
2023-09-19 09:06:52 -04:00
Brad King 26578aadc4 Merge topic 'script_file_exists'
ca77b745e9 cmake: Clarify error if -P script does not exist

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8809
2023-09-19 09:05:45 -04:00
Kitware Robot 62df021464 CMake Nightly Date Stamp 2023-09-19 00:01:12 -04:00
Brad King be5603d031 Tests: Fix ExportImport test with read-only source tree 2023-09-18 18:11:32 -04:00
scivision 39881de3f6 FindMatlab:macOS: return full version when found by path guess 2023-09-18 15:50:48 -04:00
scivision 35bcb9116c FindMatlab:lint: set(... CACHE INTERNAL) implies FORCE 2023-09-18 15:23:21 -04:00
scivision dc9d9589e4 FindMatlab:WIN32: return full Matlab version when found via registry
rework internal XML reading function for better code reuse and
namespace isolation
2023-09-18 15:23:21 -04:00
scivision abbfdd3b3a FindMatlab: improve version regex
the matlab_versions_mapping always has at least major.minor
2023-09-18 15:23:21 -04:00
scivision ff20d993f3 FindMatlab: doc: rename osx=>macOS 2023-09-18 15:09:51 -04:00
scivision d7b73f14c2 FindMatlab: retrieve full major.minor.patch.tweak 2023-09-18 15:09:49 -04:00
scivision 8b8135487f FindMatlab: refactor: remove unneeded syntax 2023-09-18 15:07:53 -04:00
scivision fff5c1507e FindMatlab: refactor: use registry query instead of execute_process
On Windows,
instead of executing "reg query" it's much simpler and more robust
to use cmake's built in registry query.

Remove unused variables. Significantly reduces amount of code in
function.
2023-09-18 15:07:52 -04:00
scivision ca77b745e9 cmake: Clarify error if -P script does not exist 2023-09-18 11:51:31 -04:00
權少 3a54ee8cd5 FindQuickTime: Improve documentation formatting 2023-09-18 09:24:56 -04:00
權少 3cf5f4af54 FindProducer: Improve documentation formatting 2023-09-18 09:24:27 -04:00
權少 b35c17b202 FindPhysFS: Improve documentation formatting 2023-09-18 09:23:04 -04:00
Brad King d007eb7046 Merge topic 'FindMatlab-r2023b'
cf7ea12a7e FindMatlab: Add R2023b=23.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8804
2023-09-18 08:50:10 -04:00
Brad King e64c150b3f Merge topic 'FindLibXslt-cache-advanced'
fd0d1ae002 FindLibXslt: Mark LIBXSLT_LIBRARY and LIBXSLT_EXSLT_INCLUDE_DIR as advanced

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8807
2023-09-18 08:49:08 -04:00
Brad King 3a24df98fc Merge topic 'FindTIFF-config-agreement'
6a3059e66f FindTIFF: bridge `tiff-config` into FindTIFF-compatible interface

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8803
2023-09-18 08:47:00 -04:00
Kitware Robot 0846414ba2 CMake Nightly Date Stamp 2023-09-18 00:01:42 -04:00
Kitware Robot aa6213848d CMake Nightly Date Stamp 2023-09-17 00:01:14 -04:00
Kitware Robot 9aab118785 CMake Nightly Date Stamp 2023-09-16 00:01:14 -04:00
Peter Kokot fd0d1ae002 FindLibXslt: Mark LIBXSLT_LIBRARY and LIBXSLT_EXSLT_INCLUDE_DIR as advanced
Make them consistent with other artifacts' cache entries.
Also drop mark on non-cache variable.
2023-09-15 09:10:46 -04:00
scivision cf7ea12a7e FindMatlab: Add R2023b=23.2
Matlab went to a new version numbering scheme with R2023b.
2023-09-15 09:03:32 -04:00
Brad King 9a0abcb7b6 Merge topic 'find-windows-no-PATH-prefixes'
0a81110b84 find_(library|file|path): Drop PATH-derived search prefixes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8802
2023-09-15 08:56:40 -04:00
Kitware Robot 52cd2ea0f1 CMake Nightly Date Stamp 2023-09-15 00:01:16 -04:00