summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2016-08-15 12:59:48 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2016-08-15 12:59:48 (GMT)
commit7fe5c79dd07da5d23fc61070884a1efa95c0fafd (patch)
treed36f9fc62398c09c3a77a91f9ffec0ec43595876
parent33d4aff50d50907d05b49c92ed01376264d84389 (diff)
parent1aa5c1bec82537ccbff8e05ae989b8befbdd286e (diff)
downloadCMake-7fe5c79dd07da5d23fc61070884a1efa95c0fafd.zip
CMake-7fe5c79dd07da5d23fc61070884a1efa95c0fafd.tar.gz
CMake-7fe5c79dd07da5d23fc61070884a1efa95c0fafd.tar.bz2
Merge topic 'FindCUDA-fixes'
1aa5c1be FindCUDA: Fix missing librt on Linux when using static cuda runtime. aab1f6e9 FindCUDA: Restore default behavior of CUDA_USE_STATIC_CUDA_RUNTIME
-rw-r--r--Modules/FindCUDA.cmake20
1 files changed, 11 insertions, 9 deletions
diff --git a/Modules/FindCUDA.cmake b/Modules/FindCUDA.cmake
index d7c9d8a..78b716d 100644
--- a/Modules/FindCUDA.cmake
+++ b/Modules/FindCUDA.cmake
@@ -779,18 +779,19 @@ if(CUDA_VERSION VERSION_EQUAL "3.0")
)
endif()
-if(CUDA_USE_STATIC_CUDA_RUNTIME AND NOT CUDA_VERSION VERSION_LESS "5.5")
+if(NOT CUDA_VERSION VERSION_LESS "5.5")
cuda_find_library_local_first(CUDA_cudart_static_LIBRARY cudart_static "static CUDA runtime library")
mark_as_advanced(CUDA_cudart_static_LIBRARY)
endif()
if(CUDA_cudart_static_LIBRARY)
- # Set whether to use the static cuda runtime.
+ # If static cudart available, use it by default, but provide a user-visible option to disable it.
option(CUDA_USE_STATIC_CUDA_RUNTIME "Use the static version of the CUDA runtime library if available" ON)
set(CUDA_CUDART_LIBRARY_VAR CUDA_cudart_static_LIBRARY)
else()
- option(CUDA_USE_STATIC_CUDA_RUNTIME "Use the static version of the CUDA runtime library if available" OFF)
+ # If not available, silently disable the option.
+ set(CUDA_USE_STATIC_CUDA_RUNTIME OFF CACHE INTERNAL "")
set(CUDA_CUDART_LIBRARY_VAR CUDA_CUDART_LIBRARY)
endif()
@@ -817,12 +818,13 @@ if(CUDA_USE_STATIC_CUDA_RUNTIME)
else()
unset(CMAKE_THREAD_PREFER_PTHREAD)
endif()
- endif()
- if (UNIX AND NOT APPLE AND CUDA_VERSION VERSION_LESS "7.0")
- # Before CUDA 7.0, there was librt that has things such as, clock_gettime, shm_open, and shm_unlink.
- find_library(CUDA_rt_LIBRARY rt)
- if (NOT CUDA_rt_LIBRARY)
- message(WARNING "Expecting to find librt for libcudart_static, but didn't find it.")
+
+ if(NOT APPLE)
+ #On Linux, you must link against librt when using the static cuda runtime.
+ find_library(CUDA_rt_LIBRARY rt)
+ if (NOT CUDA_rt_LIBRARY)
+ message(WARNING "Expecting to find librt for libcudart_static, but didn't find it.")
+ endif()
endif()
endif()
endif()