引入 oneTBB 删除taskflow
This commit is contained in:
+15
-6
@@ -1,5 +1,5 @@
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/cmake/rely.cmake)
|
||||
set(Renderive_Kernel_dependencies global::taskflow render_kernel::oneTBB)
|
||||
set(Renderive_Kernel_dependencies render_kernel::oneTBB)
|
||||
if (RENDERIVE_BUILD_TESTS)
|
||||
set(Renderive_Kernel_test_targets)
|
||||
list(APPEND Renderive_Kernel_dependencies global::GTest)
|
||||
@@ -12,7 +12,6 @@ if (Renderive_Kernel_dependencies_installed)
|
||||
return()
|
||||
endif ()
|
||||
rcl_load_dependency_environment(${Renderive_Kernel_dependencies})
|
||||
find_package(Taskflow CONFIG REQUIRED)
|
||||
find_package(Threads REQUIRED)
|
||||
find_package(TBB CONFIG REQUIRED)
|
||||
if (RENDERIVE_BUILD_TESTS)
|
||||
@@ -25,9 +24,18 @@ target_include_directories(Renderive_Kernel PUBLIC
|
||||
"$<BUILD_INTERFACE:${Renderive_Kernel_source_dir}>"
|
||||
)
|
||||
target_compile_features(Renderive_Kernel PUBLIC cxx_std_20)
|
||||
target_link_libraries(Renderive_Kernel PRIVATE Taskflow::Taskflow)
|
||||
target_link_libraries(Renderive_Kernel PRIVATE TBB::tbb)
|
||||
target_link_libraries(Renderive_Kernel PUBLIC TBB::tbb)
|
||||
target_link_libraries(Renderive_Kernel PRIVATE Threads::Threads)
|
||||
function(renderive_stage_kernel_runtime target)
|
||||
if (WIN32)
|
||||
add_custom_command(TARGET "${target}" POST_BUILD
|
||||
COMMAND "${CMAKE_COMMAND}" -E copy_if_different
|
||||
"$<TARGET_FILE:TBB::tbb>"
|
||||
"$<TARGET_FILE_DIR:${target}>"
|
||||
COMMENT "Staging oneTBB runtime for ${target}"
|
||||
VERBATIM)
|
||||
endif ()
|
||||
endfunction()
|
||||
if (MSVC)
|
||||
target_compile_options(Renderive_Kernel PRIVATE /utf-8)
|
||||
endif ()
|
||||
@@ -47,10 +55,11 @@ if (RENDERIVE_BUILD_TESTS)
|
||||
add_executable("${Renderive_Kernel_test_target}" "${Renderive_Kernel_test_source}")
|
||||
target_include_directories("${Renderive_Kernel_test_target}" PRIVATE
|
||||
"${Renderive_Kernel_test_dir}"
|
||||
"${CMAKE_SOURCE_DIR}/render_2D"
|
||||
"${CMAKE_SOURCE_DIR}/render_3D"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/../render_2D"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/../render_3D"
|
||||
)
|
||||
target_link_libraries("${Renderive_Kernel_test_target}" PRIVATE Renderive_Kernel GTest::gtest_main)
|
||||
renderive_stage_kernel_runtime("${Renderive_Kernel_test_target}")
|
||||
add_test(NAME "${Renderive_Kernel_test_target}" COMMAND "${Renderive_Kernel_test_target}")
|
||||
set_tests_properties("${Renderive_Kernel_test_target}" PROPERTIES LABELS "Renderive_Kernel")
|
||||
list(APPEND Renderive_Kernel_test_targets "${Renderive_Kernel_test_target}")
|
||||
|
||||
Reference in New Issue
Block a user