FindCUDA: Remove duplicate entries from INCLUDE_DIRECTORIES.
As of CMake 2.8.8, the INCLUDE_DIRECTORIES() command does not de-duplicate entries. Failure to do so can lead to an extremely long and repetitive list of -I entries on the command line.
This commit is contained in:
parent
6a3ee5dd4e
commit
32b582d8a5
|
@ -1021,7 +1021,10 @@ macro(CUDA_WRAP_SRCS cuda_target format generated_files)
|
||||||
# Initialize our list of includes with the user ones followed by the CUDA system ones.
|
# Initialize our list of includes with the user ones followed by the CUDA system ones.
|
||||||
set(CUDA_NVCC_INCLUDE_ARGS ${CUDA_NVCC_INCLUDE_ARGS_USER} "-I${CUDA_INCLUDE_DIRS}")
|
set(CUDA_NVCC_INCLUDE_ARGS ${CUDA_NVCC_INCLUDE_ARGS_USER} "-I${CUDA_INCLUDE_DIRS}")
|
||||||
# Get the include directories for this directory and use them for our nvcc command.
|
# Get the include directories for this directory and use them for our nvcc command.
|
||||||
|
# Remove duplicate entries which may be present since include_directories
|
||||||
|
# in CMake >= 2.8.8 does not remove them.
|
||||||
get_directory_property(CUDA_NVCC_INCLUDE_DIRECTORIES INCLUDE_DIRECTORIES)
|
get_directory_property(CUDA_NVCC_INCLUDE_DIRECTORIES INCLUDE_DIRECTORIES)
|
||||||
|
list(REMOVE_DUPLICATES CUDA_NVCC_INCLUDE_DIRECTORIES)
|
||||||
if(CUDA_NVCC_INCLUDE_DIRECTORIES)
|
if(CUDA_NVCC_INCLUDE_DIRECTORIES)
|
||||||
foreach(dir ${CUDA_NVCC_INCLUDE_DIRECTORIES})
|
foreach(dir ${CUDA_NVCC_INCLUDE_DIRECTORIES})
|
||||||
list(APPEND CUDA_NVCC_INCLUDE_ARGS -I${dir})
|
list(APPEND CUDA_NVCC_INCLUDE_ARGS -I${dir})
|
||||||
|
|
Loading…
Reference in New Issue