0026600: CMake should disable auto-link for TBB
authoribs <ibs@opencascade.com>
Tue, 25 Aug 2015 12:22:35 +0000 (15:22 +0300)
committerbugmaster <bugmaster@opencascade.com>
Thu, 3 Sep 2015 12:14:48 +0000 (15:14 +0300)
implicit tbb linkage disabled

adm/cmake/tbb.cmake
src/TKDraw/CMakeLists.txt
src/TKMesh/CMakeLists.txt
src/TKQADraw/CMakeLists.txt
src/TKernel/CMakeLists.txt

index df059e3..cf6b3a7 100644 (file)
@@ -58,6 +58,11 @@ if (WIN32 AND NOT DEFINED 3RDPARTY_TBBMALLOC_DLL_DIR)
   set (3RDPARTY_TBBMALLOC_DLL_DIR "" CACHE FILEPATH "The directory containing tbb malloc shared library")
 endif()
 
+if (MSVC)
+  add_definitions (-D__TBB_NO_IMPLICIT_LINKAGE)
+  add_definitions (-D__TBBMALLOC_NO_IMPLICIT_LINKAGE)
+endif()
+
 # include occt macros. compiler_bitness, os_wiht_bit, compiler
 OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/occt_macros")
 
index 854ed79..00a699d 100644 (file)
@@ -15,10 +15,6 @@ elseif(APPLE)
   list( APPEND USED_LIBS ${FRAMEWORKS_TCL} )
   find_library(FRAMEWORKS_TK NAMES Tk)
   list( APPEND USED_LIBS ${FRAMEWORKS_TK} )
-  if(USE_TBB)
-    list( APPEND USED_LIBS tbb )
-    list( APPEND USED_LIBS tbbmalloc )
-  endif()
   list( APPEND USED_LIBS objc )
   find_library(FRAMEWORKS_APPKIT NAMES Appkit)
   list( APPEND USED_LIBS ${FRAMEWORKS_APPKIT} )
@@ -28,10 +24,11 @@ else()
   list( APPEND USED_LIBS tcl8.6 )
   list( APPEND USED_LIBS X11 )
   list( APPEND USED_LIBS tk8.6 )
-  if(USE_TBB)
-    list( APPEND USED_LIBS tbb )
-    list( APPEND USED_LIBS tbbmalloc )
-  endif()
+endif()
+
+if(USE_TBB)
+  list( APPEND USED_LIBS tbb )
+  list( APPEND USED_LIBS tbbmalloc )
 endif()
 
 OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit)
index 87efacf..da43fb4 100644 (file)
@@ -4,11 +4,9 @@ set (TOOLKIT_MODULES
   BRepMesh
 )
 
-if(NOT WIN32)
-  if(USE_TBB)
-    list( APPEND USED_LIBS tbb )
-    list( APPEND USED_LIBS tbbmalloc )
-  endif()
+if(USE_TBB)
+  list( APPEND USED_LIBS tbb )
+  list( APPEND USED_LIBS tbbmalloc )
 endif()
 
 OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit)
index 5d60046..d238275 100644 (file)
@@ -14,11 +14,11 @@ if (WIN32)
   list( APPEND USED_LIBS gdi32.lib )
   list( APPEND USED_LIBS advapi32.lib )
   list( APPEND USED_LIBS user32.lib )
-else()
-  if(USE_TBB)
-    list( APPEND USED_LIBS tbb )
-    list( APPEND USED_LIBS tbbmalloc )
-  endif()
+endif()
+
+if(USE_TBB)
+  list( APPEND USED_LIBS tbb )
+  list( APPEND USED_LIBS tbbmalloc )
 endif()
 
 OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit)
index 48f255b..b9a6dd1 100644 (file)
@@ -25,15 +25,14 @@ if (WIN32)
   list( APPEND USED_LIBS gdi32.lib )
   list( APPEND USED_LIBS user32.lib )
   list( APPEND USED_LIBS kernel32.lib )
-else()
-  if (NOT APPLE)
-    list( APPEND USED_LIBS pthread )
-    list( APPEND USED_LIBS rt )
-  endif()
-  if(USE_TBB)
-    list( APPEND USED_LIBS tbb )
-    list( APPEND USED_LIBS tbbmalloc )
-  endif()
+elseif (NOT APPLE)
+  list( APPEND USED_LIBS pthread )
+  list( APPEND USED_LIBS rt )
+endif()
+
+if(USE_TBB)
+  list( APPEND USED_LIBS tbb )
+  list( APPEND USED_LIBS tbbmalloc )
 endif()
 
 OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit)