From 1b0c77a33d2e598c48bc8ad385cfd0586b8294e9 Mon Sep 17 00:00:00 2001 From: James Bigler Date: Wed, 1 Apr 2015 17:23:51 -0600 Subject: FindCUDA: Add specific cuda_language_flag instead of using nvcc. I was previously appending to nvcc_flags inside the file loop. This caused the flag to be appended multiple times which freaks out nvcc. Now the flag is specifically handled per file. --- Modules/FindCUDA.cmake | 4 +++- Modules/FindCUDA/run_nvcc.cmake | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Modules/FindCUDA.cmake b/Modules/FindCUDA.cmake index de66443..1802e61 100644 --- a/Modules/FindCUDA.cmake +++ b/Modules/FindCUDA.cmake @@ -1310,7 +1310,9 @@ macro(CUDA_WRAP_SRCS cuda_target format generated_files) endif() # If file isn't a .cu file, we need to tell nvcc to treat it as such. if(NOT ${file} MATCHES "\\.cu$") - list(APPEND nvcc_flags "-x=cu") + set(cuda_language_flag -x=cu) + else() + set(cuda_language_flag) endif() if( ${_cuda_source_format} MATCHES "OBJ") diff --git a/Modules/FindCUDA/run_nvcc.cmake b/Modules/FindCUDA/run_nvcc.cmake index abdd307..8032309 100644 --- a/Modules/FindCUDA/run_nvcc.cmake +++ b/Modules/FindCUDA/run_nvcc.cmake @@ -75,6 +75,7 @@ set(CUDA_NVCC_FLAGS @CUDA_NVCC_FLAGS@ ;; @CUDA_WRAP_OPTION_NVCC_FLAGS@) # list set(nvcc_flags @nvcc_flags@) # list set(CUDA_NVCC_INCLUDE_ARGS "@CUDA_NVCC_INCLUDE_ARGS@") # list (needs to be in quotes to handle spaces properly). set(format_flag "@format_flag@") # string +set(cuda_language_flag @cuda_language_flag@) # list if(build_cubin AND NOT generated_cubin_file) message(FATAL_ERROR "You must specify generated_cubin_file on the command line") @@ -238,6 +239,7 @@ cuda_execute_process( "Generating ${generated_file}" COMMAND "${CUDA_NVCC_EXECUTABLE}" "${source_file}" + ${cuda_language_flag} ${format_flag} -o "${generated_file}" ${CCBIN} ${nvcc_flags} -- cgit v0.12