Call as dynamic object
This commit is contained in:
@@ -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})
|
||||
|
||||
Reference in New Issue
Block a user