summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-05-19 13:17:23 (GMT)
committerBrad King <brad.king@kitware.com>2014-05-19 13:17:23 (GMT)
commite07f406439997e08fd4c8bf8af4894ae39a6d449 (patch)
tree66fdeac1c428da1b780871286cab584869b9c172
parent5527cfa002f50a644bf6bbb6a1a7af534870df35 (diff)
parent6ad14c71bb9b791fc4496a4d6a3fcd6dd9bf3f1c (diff)
downloadCMake-e07f406439997e08fd4c8bf8af4894ae39a6d449.zip
CMake-e07f406439997e08fd4c8bf8af4894ae39a6d449.tar.gz
CMake-e07f406439997e08fd4c8bf8af4894ae39a6d449.tar.bz2
Merge branch 'FindCUDA-separable-compilation-flags' into release
-rw-r--r--Modules/FindCUDA.cmake9
1 files changed, 9 insertions, 0 deletions
diff --git a/Modules/FindCUDA.cmake b/Modules/FindCUDA.cmake
index 7bc8d49..d50e960 100644
--- a/Modules/FindCUDA.cmake
+++ b/Modules/FindCUDA.cmake
@@ -1418,15 +1418,24 @@ function(CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS output_file cuda_target options
if( ccbin_found0 LESS 0 AND ccbin_found1 LESS 0 )
list(APPEND nvcc_flags -ccbin "\"${CUDA_HOST_COMPILER}\"")
endif()
+ # Create a list of flags specified by CUDA_NVCC_FLAGS_${CONFIG}
+ set(config_specific_flags)
set(flags)
foreach(config ${CUDA_configuration_types})
string(TOUPPER ${config} config_upper)
+ # Add config specific flags
+ foreach(f ${CUDA_NVCC_FLAGS_${config_upper}})
+ list(APPEND config_specific_flags $<$<CONFIG:${config}>:${f}>)
+ endforeach()
set(important_host_flags)
_cuda_get_important_host_flags(important_host_flags ${CMAKE_${CUDA_C_OR_CXX}_FLAGS_${config_upper}})
foreach(f ${important_host_flags})
list(APPEND flags $<$<CONFIG:${config}>:-Xcompiler> $<$<CONFIG:${config}>:${f}>)
endforeach()
endforeach()
+ # Add our general CUDA_NVCC_FLAGS with the configuration specifig flags
+ set(nvcc_flags ${CUDA_NVCC_FLAGS} ${config_specific_flags} ${nvcc_flags})
+
file(RELATIVE_PATH output_file_relative_path "${CMAKE_BINARY_DIR}" "${output_file}")
# Some generators don't handle the multiple levels of custom command