Install user provided TBB as well (#12260)

This commit is contained in:
Ilya Lavrenov 2022-07-22 22:36:58 +04:00 committed by GitHub
parent 811a483acb
commit 926a87e7eb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 39 additions and 13 deletions

View File

@ -22,13 +22,13 @@ if not "%1"=="" (
:: OpenCV
if exist "%INTEL_OPENVINO_DIR%\opencv\setupvars.bat" (
call "%INTEL_OPENVINO_DIR%\opencv\setupvars.bat"
goto :opencv_done
call "%INTEL_OPENVINO_DIR%\opencv\setupvars.bat"
goto :opencv_done
)
if exist "%INTEL_OPENVINO_DIR%\extras\opencv\setupvars.bat" (
call "%INTEL_OPENVINO_DIR%\extras\opencv\setupvars.bat"
goto :opencv_done
call "%INTEL_OPENVINO_DIR%\extras\opencv\setupvars.bat"
goto :opencv_done
)
:opencv_done
@ -41,13 +41,20 @@ set "OPENVINO_LIB_PATHS=%INTEL_OPENVINO_DIR%\runtime\bin\intel64\Release;%INTEL_
:: TBB
if exist %INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb (
set "OPENVINO_LIB_PATHS=%INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\bin;%OPENVINO_LIB_PATHS%"
set "TBB_DIR=%INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\cmake"
set "OPENVINO_LIB_PATHS=%INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\bin;%OPENVINO_LIB_PATHS%"
if exist %INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\cmake (
set "TBB_DIR=%INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\cmake"
) else if exist %INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\lib\cmake\TBB (
set "TBB_DIR=%INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\lib\cmake\TBB"
) else if exist %INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\lib64\cmake\TBB (
set "TBB_DIR=%INTEL_OPENVINO_DIR%\runtime\3rdparty\tbb\lib64\cmake\TBB"
)
)
:: Compile tool
if exist %INTEL_OPENVINO_DIR%\tools\compile_tool (
set "PATH=%INTEL_OPENVINO_DIR%\tools\compile_tool;%PATH%"
set "PATH=%INTEL_OPENVINO_DIR%\tools\compile_tool;%PATH%"
)
:: Add libs dirs to the PATH

View File

@ -52,7 +52,14 @@ if [ -e "$INSTALLDIR/runtime/3rdparty/tbb" ]; then
export DYLD_LIBRARY_PATH=$INSTALLDIR/runtime/3rdparty/tbb/lib:${DYLD_LIBRARY_PATH:+:$DYLD_LIBRARY_PATH}
fi
export LD_LIBRARY_PATH=$INSTALLDIR/runtime/3rdparty/tbb/lib:${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH}
export TBB_DIR=$INSTALLDIR/runtime/3rdparty/tbb/cmake
if [ -e "$INSTALLDIR/runtime/3rdparty/tbb/lib/cmake/TBB" ]; then
export TBB_DIR=$INSTALLDIR/runtime/3rdparty/tbb/lib/cmake/TBB
elif [ -e "$INSTALLDIR/runtime/3rdparty/tbb/lib64/cmake/TBB" ]; then
export TBB_DIR=$INSTALLDIR/runtime/3rdparty/tbb/lib64/cmake/TBB
elif [ -e "$INSTALLDIR/runtime/3rdparty/tbb/cmake" ]; then
export TBB_DIR=$INSTALLDIR/runtime/3rdparty/tbb/cmake
fi
fi
if [ -e "$INSTALLDIR/tools/compile_tool" ]; then

View File

@ -8,7 +8,7 @@ include(cmake/ie_parallel.cmake)
ov_find_package_tbb()
if(TBB_FOUND AND TBB_VERSION VERSION_GREATER_EQUAL 2021)
message(STATUS "Static tbbbind_2_5 package usage is disabled, since oneTBB is used")
message(STATUS "Static tbbbind_2_5 package usage is disabled, since oneTBB (ver. ${TBB_VERSION}) is used")
set(ENABLE_TBBBIND_2_5 OFF)
elseif(ENABLE_TBBBIND_2_5)
# download and find a prebuilt version of TBBBind_2_5
@ -53,8 +53,13 @@ if(THREADING MATCHES "^(TBB|TBB_AUTO)$" AND
set(tbb_custom ON)
endif()
if(ENABLE_SYSTEM_TBB OR tbb_custom)
# need to take locations of actual libraries and install them
if(CPACK_GENERATOR STREQUAL "DEB" AND NOT ENABLE_SYSTEM_TBB)
message(FATAL_ERROR "Debian packages can be built only with system TBB. Use -DENABLE_SYSTEM_TBB=ON")
endif()
if(ENABLE_SYSTEM_TBB)
# for system libraries we still need to install TBB libraries
# so, need to take locations of actual libraries and install them
foreach(tbb_lib IN LISTS TBB_IMPORTED_TARGETS)
get_target_property(tbb_loc ${tbb_lib} IMPORTED_LOCATION_RELEASE)
# depending on the TBB, tbb_loc can be in form:
@ -78,9 +83,16 @@ if(THREADING MATCHES "^(TBB|TBB_AUTO)$" AND
endif()
endforeach()
endforeach()
elseif(tbb_custom)
# for custom TBB we need to install it to our package
# to simplify life for our customers
set(IE_TBBROOT_INSTALL "runtime/3rdparty/tbb")
file(RELATIVE_PATH IE_TBB_DIR_INSTALL "${TBBROOT}" "${TBB_DIR}")
set(IE_TBB_DIR_INSTALL "${IE_TBBROOT_INSTALL}/${IE_TBB_DIR_INSTALL}")
# remember TBBROOT path or system one
set(IE_TBB_DIR_INSTALL "${TBB_DIR}")
install(DIRECTORY "${TBBROOT}/"
DESTINATION "${IE_TBBROOT_INSTALL}"
COMPONENT tbb)
elseif(tbb_downloaded)
set(IE_TBB_DIR_INSTALL "runtime/3rdparty/tbb/")