Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brecht@blender.org>2020-06-04 16:12:31 +0300
committerBrecht Van Lommel <brecht@blender.org>2020-06-05 01:58:31 +0300
commitc7329da14b224f93e93f54c24d42a05dda18ce19 (patch)
tree73dde49215dda0bd588d58f7fe9ea0e5a28d97a3 /build_files/build_environment
parent0b28f0410ce5b90f75d3b5138fae2105d3ff1771 (diff)
Build: use TBB as Embree tasking system
This avoids launching additional threads and solves some console warnings on Linux + AMD Ryzen CPU.
Diffstat (limited to 'build_files/build_environment')
-rw-r--r--build_files/build_environment/cmake/embree.cmake18
1 files changed, 17 insertions, 1 deletions
diff --git a/build_files/build_environment/cmake/embree.cmake b/build_files/build_environment/cmake/embree.cmake
index 2dd42614cc0..428451d0115 100644
--- a/build_files/build_environment/cmake/embree.cmake
+++ b/build_files/build_environment/cmake/embree.cmake
@@ -26,10 +26,20 @@ set(EMBREE_EXTRA_ARGS
-DEMBREE_RAY_MASK=ON
-DEMBREE_FILTER_FUNCTION=ON
-DEMBREE_BACKFACE_CULLING=OFF
- -DEMBREE_TASKING_SYSTEM=INTERNAL
-DEMBREE_MAX_ISA=AVX2
+ -DEMBREE_TASKING_SYSTEM=TBB
+ -DEMBREE_TBB_ROOT=${LIBDIR}/tbb
+ -DTBB_STATIC_LIB=${TBB_STATIC_LIBRARY}
)
+if(TBB_STATIC_LIBRARY)
+ set(EMBREE_EXTRA_ARGS
+ ${EMBREE_EXTRA_ARGS}
+ -DEMBREE_TBB_LIBRARY_NAME=tbb_static
+ -DEMBREE_TBBMALLOC_LIBRARY_NAME=tbbmalloc_static
+ )
+endif()
+
if(WIN32)
set(EMBREE_BUILD_DIR ${BUILD_MODE}/)
else()
@@ -44,6 +54,12 @@ ExternalProject_Add(external_embree
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS}
INSTALL_DIR ${LIBDIR}/embree
)
+
+add_dependencies(
+ external_embree
+ external_tbb
+)
+
if(WIN32)
if(BUILD_MODE STREQUAL Release)