diff options
author | Robert Maynard <robert.maynard@kitware.com> | 2020-01-07 16:49:09 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2020-01-09 16:02:17 (GMT) |
commit | 071c4f1a2a44de1e3e9d2c5ce22a661edf334f8b (patch) | |
tree | 03a09c76b2393ac69c4f2bea10c87afa26111807 /Tests | |
parent | 5b43aa775507c974284bbae2e6bd13e11caec80d (diff) | |
download | CMake-071c4f1a2a44de1e3e9d2c5ce22a661edf334f8b.zip CMake-071c4f1a2a44de1e3e9d2c5ce22a661edf334f8b.tar.gz CMake-071c4f1a2a44de1e3e9d2c5ce22a661edf334f8b.tar.bz2 |
CUDA: Do not device link if target has no CUDA usage
When CUDA is enabled, and a pure non-CUDA target has
CMAKE_CUDA_SEPARABLE_COMPILATION enabled, don't actually perform
the device linking step, as it will fail. A target that has
CMAKE_CUDA_SEPARABLE_COMPILATION enabled must also have CUDA
usage (either itself, or something it links to).
Fixes: #20182
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/Cuda/CMakeLists.txt | 1 | ||||
-rw-r--r-- | Tests/Cuda/SeparableCompCXXOnly/CMakeLists.txt | 3 | ||||
-rw-r--r-- | Tests/Cuda/SeparableCompCXXOnly/main.cpp | 5 |
3 files changed, 9 insertions, 0 deletions
diff --git a/Tests/Cuda/CMakeLists.txt b/Tests/Cuda/CMakeLists.txt index a30071f..44c6005 100644 --- a/Tests/Cuda/CMakeLists.txt +++ b/Tests/Cuda/CMakeLists.txt @@ -4,6 +4,7 @@ ADD_TEST_MACRO(Cuda.ConsumeCompileFeatures CudaConsumeCompileFeatures) ADD_TEST_MACRO(Cuda.ObjectLibrary CudaObjectLibrary) ADD_TEST_MACRO(Cuda.MixedStandardLevels MixedStandardLevels) ADD_TEST_MACRO(Cuda.NotEnabled CudaNotEnabled) +ADD_TEST_MACRO(Cuda.SeparableCompCXXOnly SeparableCompCXXOnly) ADD_TEST_MACRO(Cuda.ToolkitInclude CudaToolkitInclude) ADD_TEST_MACRO(Cuda.ProperDeviceLibraries ProperDeviceLibraries) ADD_TEST_MACRO(Cuda.ProperLinkFlags ProperLinkFlags) diff --git a/Tests/Cuda/SeparableCompCXXOnly/CMakeLists.txt b/Tests/Cuda/SeparableCompCXXOnly/CMakeLists.txt new file mode 100644 index 0000000..97670e3 --- /dev/null +++ b/Tests/Cuda/SeparableCompCXXOnly/CMakeLists.txt @@ -0,0 +1,3 @@ +project(SeparableCompCXXOnly LANGUAGES CXX CUDA) +set(CMAKE_CUDA_SEPARABLE_COMPILATION ON) +add_executable(SeparableCompCXXOnly main.cpp) diff --git a/Tests/Cuda/SeparableCompCXXOnly/main.cpp b/Tests/Cuda/SeparableCompCXXOnly/main.cpp new file mode 100644 index 0000000..8135246 --- /dev/null +++ b/Tests/Cuda/SeparableCompCXXOnly/main.cpp @@ -0,0 +1,5 @@ + +int main(int, char const* []) +{ + return 0; +} |