Files
URDepends/TVALGPU/CMakeLists.txt

21 lines
1.1 KiB
CMake
Raw Normal View History

2023-05-18 16:04:27 +08:00
cmake_minimum_required(VERSION 3.8 FATAL_ERROR)
project(TVALGPU)
set(CMAKE_CUDA_COMPILER /usr/local/cuda/bin/nvcc)
enable_language(CUDA)
2023-05-30 17:32:52 +08:00
file(GLOB_RECURSE tval3_cpp_files src/*.cpp)
file(GLOB_RECURSE tval3_cu_files src/*.cu)
find_package(CUDAToolkit REQUIRED)
add_library(TVALGPU SHARED ${tval3_cpp_files} ${tval3_cu_files})
2023-06-06 09:05:24 +08:00
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g")
2023-05-30 17:32:52 +08:00
target_include_directories(TVALGPU PRIVATE ./src /usr/local/cuda/include)
2023-05-18 16:04:27 +08:00
set_target_properties(TVALGPU PROPERTIES CUDA_SEPARABLE_COMPILATION ON)
2023-05-30 17:32:52 +08:00
target_compile_options(TVALGPU PRIVATE $<$<COMPILE_LANGUAGE:CUDA>:
2023-05-18 16:04:27 +08:00
--compiler-options -fPIC
--use_fast_math
--ptxas-options=-v
-arch compute_30 -code compute_30,sm_30
>)
2023-05-30 17:32:52 +08:00
target_link_libraries(TVALGPU PRIVATE ${CUDA_RUNTIME_LIBRARY} CUDA::cusparse CUDA::cublas)
2023-06-06 09:05:24 +08:00
set(TVALGPU_HEADERS ${CMAKE_CURRENT_LIST_DIR}/src/tval3gpu3d.h ${CMAKE_CURRENT_LIST_DIR}/src/tvalstruct.h ${CMAKE_CURRENT_LIST_DIR}/src/CudaEnvInit.h)
2023-05-30 17:32:52 +08:00
set_target_properties(TVALGPU PROPERTIES PUBLIC_HEADER "${TVALGPU_HEADERS}")