summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/Languages
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2018-12-05 16:57:47 (GMT)
committerBrad King <brad.king@kitware.com>2018-12-05 19:45:19 (GMT)
commit7b7421346194896109a304ff088630f37ab2bd9e (patch)
treef640077078c7b5233708b61d49fc29b494b1966e /Tests/RunCMake/Languages
parent62942969062fcc9f24ca057b6983532a973cfad6 (diff)
downloadCMake-7b7421346194896109a304ff088630f37ab2bd9e.zip
CMake-7b7421346194896109a304ff088630f37ab2bd9e.tar.gz
CMake-7b7421346194896109a304ff088630f37ab2bd9e.tar.bz2
CUDA: Fix crash on linking to a CUDA target without CUDA enabled
Do not try to device link or add CUDA runtime libraries if the language is not enabled. Fixes: #18673 Issue: #18614
Diffstat (limited to 'Tests/RunCMake/Languages')
-rw-r--r--Tests/RunCMake/Languages/ExternalCUDA.cmake8
-rw-r--r--Tests/RunCMake/Languages/RunCMakeTest.cmake2
-rw-r--r--Tests/RunCMake/Languages/empty.c0
3 files changed, 10 insertions, 0 deletions
diff --git a/Tests/RunCMake/Languages/ExternalCUDA.cmake b/Tests/RunCMake/Languages/ExternalCUDA.cmake
new file mode 100644
index 0000000..3afa93e
--- /dev/null
+++ b/Tests/RunCMake/Languages/ExternalCUDA.cmake
@@ -0,0 +1,8 @@
+enable_language(C)
+
+add_library(ext_cuda IMPORTED STATIC)
+set_property(TARGET ext_cuda PROPERTY IMPORTED_LOCATION "/does_not_exist")
+set_property(TARGET ext_cuda PROPERTY IMPORTED_LINK_INTERFACE_LANGUAGES "CUDA")
+
+add_executable(main empty.c)
+target_link_libraries(main ext_cuda)
diff --git a/Tests/RunCMake/Languages/RunCMakeTest.cmake b/Tests/RunCMake/Languages/RunCMakeTest.cmake
index 732baae..2a534b3 100644
--- a/Tests/RunCMake/Languages/RunCMakeTest.cmake
+++ b/Tests/RunCMake/Languages/RunCMakeTest.cmake
@@ -6,3 +6,5 @@ run_cmake(link-libraries-TARGET_FILE-genex)
run_cmake(link-libraries-TARGET_FILE-genex-ok)
run_cmake(DetermineFail)
+
+run_cmake(ExternalCUDA)
diff --git a/Tests/RunCMake/Languages/empty.c b/Tests/RunCMake/Languages/empty.c
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Tests/RunCMake/Languages/empty.c