Call as dynamic object

This commit is contained in:
kradchen
2023-11-28 09:53:59 +08:00
parent 34d7086b47
commit 8ae5950e9f
3 changed files with 90 additions and 3 deletions

View File

@@ -9,7 +9,11 @@ set(CMAKE_CUDA_COMPILER /usr/local/cuda/bin/nvcc)
enable_language(CUDA)
find_package(CUDAToolkit REQUIRED)
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g")
set(BUILD_SHARED_LIBS ON)
if (${BUILD_SHARED_LIBS})
set(MKL_INTERFACE_FULL intel_lp64)
set(MKL_LINK static)
endif()
find_package(Aurora REQUIRED)
find_package(Parser REQUIRED)
find_package(Req REQUIRED)
@@ -18,10 +22,26 @@ find_package(DCMTK REQUIRED)
set(DCMTK_WITH_JPEG OFF)
file(GLOB_RECURSE cpp_files ./src/*.cpp)
file(GLOB_RECURSE cu_files ./src/*.cu)
file(GLOB_RECURSE cxx_files ./src/*.cxx)
file(GLOB_RECURSE header_files ./src/*.h)
if (${BUILD_SHARED_LIBS})
set(cxx_files ./src/UR.cxx)
find_package(MKL CONFIG REQUIRED)
set(MKL_INTERFACE_FULL intel_lp64)
add_library(UR SHARED ${cpp_files} ${cxx_files} ${header_files} ${Aurora_Source})
target_compile_options(UR PUBLIC $<TARGET_PROPERTY:MKL::MKL,INTERFACE_COMPILE_OPTIONS>)
target_include_directories(UR PUBLIC $<TARGET_PROPERTY:MKL::MKL,INTERFACE_INCLUDE_DIRECTORIES>)
target_link_libraries(UR PUBLIC $<LINK_ONLY:MKL::MKL>)
target_link_libraries(UR PUBLIC OpenMP::OpenMP_CXX)
target_compile_options(UR PUBLIC "-march=native")
else()
set(cxx_files ./src/main.cxx)
add_executable(UR ${cpp_files} ${cxx_files} ${header_files} ${Aurora_Source})
target_compile_options(UR PUBLIC ${Aurora_Complie_Options} "-march=native")
endif()
target_include_directories(UR PUBLIC ./src/)
target_include_directories(UR PUBLIC ${Aurora_INCLUDE_DIRS})
target_include_directories(UR PUBLIC ${DCMTK_INCLUDE_DIRS})