2023-05-18 16:04:27 +08:00
|
|
|
cmake_minimum_required(VERSION 3.8 FATAL_ERROR)
|
|
|
|
|
project(SaftTofi)
|
|
|
|
|
set(CMAKE_CUDA_COMPILER /usr/local/cuda/bin/nvcc)
|
|
|
|
|
enable_language(CUDA)
|
2023-06-19 17:06:16 +08:00
|
|
|
find_package (OpenMP REQUIRED)
|
2023-05-18 16:04:27 +08:00
|
|
|
add_library(SaftTofi SHARED ./src/SAFT_TOFI.cpp ./src/saft.cu ./src/processAScans.cpp ./src/saft.cpp )
|
2023-06-09 11:33:33 +08:00
|
|
|
target_include_directories(SaftTofi PRIVATE ../SAFT ./src /usr/local/cuda/include )
|
2023-05-18 16:04:27 +08:00
|
|
|
set_target_properties(SaftTofi PROPERTIES CUDA_SEPARABLE_COMPILATION ON)
|
|
|
|
|
target_compile_options(SaftTofi PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:
|
|
|
|
|
--compiler-options -fPIC
|
|
|
|
|
--use_fast_math
|
|
|
|
|
--ptxas-options=-v
|
|
|
|
|
-arch compute_30 -code compute_30,sm_30
|
|
|
|
|
>)
|
|
|
|
|
|
2023-06-09 11:19:30 +08:00
|
|
|
target_link_libraries(SaftTofi PRIVATE ${CUDA_RUNTIME_LIBRARY} )
|
2023-06-19 17:06:16 +08:00
|
|
|
target_link_libraries(SaftTofi PRIVATE OpenMP::OpenMP_CXX )
|
|
|
|
|
|
2023-06-09 11:33:33 +08:00
|
|
|
get_filename_component(_DIR "${CMAKE_CURRENT_LIST_DIR}" PATH)
|
|
|
|
|
set(SAFT_HEADER ${CMAKE_CURRENT_LIST_DIR}/src/SAFT_TOFI.h ${_DIR}/SAFT/SAFTStructs.h)
|
|
|
|
|
set_target_properties(SaftTofi PROPERTIES PUBLIC_HEADER "${SAFT_HEADER}")
|