From c2ea88ebe597a5a6c39b6727aa0bc15bc0f44ebe Mon Sep 17 00:00:00 2001 From: rnv Date: Fri, 30 Aug 2019 18:51:08 +0300 Subject: [PATCH] Porting to latest TBB (compatibility with previous old version is provided). --- cmake/FindSalomeTBB.cmake | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/cmake/FindSalomeTBB.cmake b/cmake/FindSalomeTBB.cmake index b31f57e..48b55b1 100644 --- a/cmake/FindSalomeTBB.cmake +++ b/cmake/FindSalomeTBB.cmake @@ -18,9 +18,39 @@ # SALOME_FIND_PACKAGE_AND_DETECT_CONFLICTS(TBB TBB_INCLUDE_DIRS 1) -MARK_AS_ADVANCED(TBB_INCLUDE_DIRS TBB_LIBRARIES) + +IF(TBB_INCLUDE_DIRS AND TBB_LIBRARIES) + # No config mode + MARK_AS_ADVANCED(TBB_INCLUDE_DIRS TBB_LIBRARIES) +ELSEIF(TBB_IMPORTED_TARGETS) + #Config mode + SET(TBB_LIBRARIES ${TBB_IMPORTED_TARGETS}) +ELSE() + MESSAGE(FATAL_ERROR "Can't find tbb installation!") +ENDIF() IF(TBB_FOUND) - SALOME_ACCUMULATE_HEADERS(TBB_INCLUDE_DIRS) - SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${TBB_LIBRARIES}) + IF(TBB_INCLUDE_DIRS AND TBB_LIBRARIES) + # No config mode + SALOME_ACCUMULATE_HEADERS(TBB_INCLUDE_DIRS) + SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${TBB_LIBRARIES}) + ELSEIF(TBB_IMPORTED_TARGETS) + #Config mode + LIST(GET TBB_IMPORTED_TARGETS 0 _first_tbb_target) + + # 1. Get TBB libraries dir + GET_TARGET_PROPERTY(_tbb_f_lib ${_first_tbb_target} IMPORTED_LOCATION_RELASE) + IF(NOT ${_tbb_f_lib}) + GET_TARGET_PROPERTY(_tbb_f_lib ${_first_tbb_target} IMPORTED_LOCATION_DEBUG) + ENDIF() + GET_FILENAME_COMPONENT(_tbb_lib ${_tbb_f_lib} DIRECTORY) + GET_FILENAME_COMPONENT(_tbb_lib ${_tbb_lib} ABSOLUTE) + + # 2. Get TBB includes dir + GET_TARGET_PROPERTY(_tbb_inc ${_first_tbb_target} INTERFACE_INCLUDE_DIRECTORIES) + GET_FILENAME_COMPONENT(_tbb_inc ${_tbb_inc} ABSOLUTE) + + SALOME_ACCUMULATE_HEADERS(_tbb_inc) + SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${_tbb_lib}) + ENDIF() ENDIF() \ No newline at end of file -- 2.30.2