project(eikonalGPU) set(CMAKE_CUDA_COMPILER /usr/local/cuda/bin/nvcc) enable_language(CUDA) file(GLOB_RECURSE eikonalGPU_cpp_files src/*.cpp) file(GLOB_RECURSE eikonalGPU_cu_files src/*.cu) file(GLOB_RECURSE eikonalGPU_c_files src/*.c) add_library(eikonalGPU SHARED ${eikonalGPU_cpp_files} ${eikonalGPU_cu_files} ${eikonalGPU_c_files}) target_include_directories(eikonalGPU PRIVATE src/ /usr/local/cuda/include) set_target_properties(eikonalGPU PROPERTIES CUDA_SEPARABLE_COMPILATION ON) target_compile_options(eikonalGPU PRIVATE $<$: --compiler-options -fPIC --use_fast_math --ptxas-options=-v -arch compute_30 -code compute_30,sm_30 >) set_target_properties(eikonalGPU PROPERTIES PUBLIC_HEADER ${CMAKE_CURRENT_LIST_DIR}/src/eikonal.h)