The result variable was `CUDAToolkit_NVCC_EXECUTABLE` instead of
`_CUDA_NVCC_EXECUTABLE`, which the rest of the code used. Also, we can
simply `set()` the `_CUDA_NVCC_EXECUTABLE` value without searching.
Fixes: #20847
947cfc732d Help: Explicitly say transaction, don't abbreviate to trans
90c73479bc Help: Correct and condense examples for VS_SOLUTION_DEPLOY
0420de10b5 Help: Add missing cross-referencing for generator expressions
013f7a2647 Help: Formatting, crossref for FRAMEWORK_MULTI_CONFIG_POSTFIX_<CONFIG>
a12d53acf3 Help: Add missing PCH_WARN_INVALID docs and related cleanups
95a16f7805 Help: Fix formatting error and consistency for gtest_discover_tests()
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4915
The release notes need to make sense to people not so familiar with
each item. For those less familiar with RPM, spelling out "transaction"
makes this line item much clearer in isolation.
bdb105ee94 Help: Mention CUDA Clang limitations in 3.18 release notes
fec7dd33d3 CUDA: Add issue number to Clang separable compilation error
14163d7d6b CUDA: Throw error for Clang on Windows
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4903
9ae3382855 Tests: Shorten case names in RunCMake.file-GET_RUNTIME_DEPENDENCIES test
248d0570c9 Tests: Factor out RunCMake.file-GET_RUNTIME_DEPENDENCIES test
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4904
6308bfb737 Tests: Factor out RunCMake.GenEx-GENEX_EVAL test
abe1c27499 Tests: Factor out RunCMake.GenEx-TARGET_FILE test
fbead761fe Tests: Factor out RunCMake.GenEx-DEVICE_LINK test
64a8587332 Tests: Factor out RunCMake.GenEx-HOST_LINK test
6f224a065c Tests: Factor out RunCMake.GenEx-LINK_LANG_AND_ID test
f3f6317ca3 Tests: Factor out RunCMake.GenEx-LINK_LANGUAGE test
983adb8bed Tests: Factor out RunCMake.GenEx-COMPILE_LANG_AND_ID test
931a6702f6 Tests: Factor out RunCMake.GenEx-COMPILE_LANGUAGE test
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4899
6d168c41e3 gitlab-ci: split linux and macos shared before scripts
a1fe6ad621 gitlab-ci: use `extends`
fda8b79f88 gitlab-ci: add a comment describing what goes into a job
2b4523c5f2 gitlab-ci: make rules a bit more uniform
d6fe877cf9 gitlab-ci: split into multiple files
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4885
The ability to disable adding architectures completely for packaging purposes
and cases requiring passing the architectures flags explicitly has been
requested.
Support a false value for CUDA_ARCHITECTURES and CMAKE_CUDA_ARCHITECTURES
for this purpose.
Implements #20821.
b365385d66 Clang: Record Clang 6.0+ as fully supporting C++17
5d26efe38f Clang: Add final C++20 flag for Clang 11.0+
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4887
cc02ced530 find_program: Revert "Find programs that are executable but not readable"
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4871
Clang isn't very good at finding the installed CUDA toolkit.
The upstream recommendation is that we should pass the toolkit explicitly.
Additionally:
* Avoids Clang having to search for the toolkit on every invocation.
* Allows the user to use a toolkit from a non-standard location by simply
setting CUDAToolkit_ROOT. The same way as with FindCUDAToolkit.
Clang wants the directory containing the device library and version.txt as the
toolkit path.
We thus pass the newly introduced CUDAToolkit_LIBRARY_ROOT as the toolkit path.
We save CUDAToolkit_ROOT_DIR and CUDAToolkit_LIBRARY_ROOT on Clang to have them
available in try_compile() and avoid unnecessary re-searching or a possibly
different installation being found in FindCUDAToolkit.
This however means that the selected toolkit can't be changed after the initial
language enablement.
We now determine CUDA compiler ID before doing actual detection, as we don't
want to spend time finding the CUDA toolkit for NVIDIA.
Implements #20754.