diff --git a/CMakeLists.txt b/CMakeLists.txt index 65ff089..2b7a4a3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -60,6 +60,7 @@ option(TBB_BUILD_TBBMALLOC_PROXY "Build TBB malloc proxy library" ON) option(TBB_BUILD_TESTS "Build TBB tests and enable testing infrastructure" ON) option(TBB_NO_DATE "Do not save the configure date in the version string" OFF) option(TBB_BUILD_PYTHON "Build TBB Python bindings" OFF) +option(TBB_SET_SOVERSION "Set the SOVERSION (shared library build version suffix)?" OFF) # When this repository is part of a larger build system of a parent project # we may not want TBB to set up default installation targets @@ -280,6 +281,9 @@ if (TBB_BUILD_SHARED) target_include_directories(tbb INTERFACE "$" "$") set_property(TARGET tbb APPEND PROPERTY COMPILE_DEFINITIONS "__TBB_BUILD=1") set_property(TARGET tbb APPEND_STRING PROPERTY COMPILE_FLAGS ${ENABLE_RTTI}) + if (TBB_SET_SOVERSION) + set_property(TARGET tbb PROPERTY SOVERSION 2) + endif () add_dependencies(tbb tbb_def_files) if (APPLE) @@ -341,6 +345,9 @@ if(TBB_BUILD_TBBMALLOC) target_link_libraries(tbbmalloc PRIVATE tbb_interface) set_property(TARGET tbbmalloc APPEND PROPERTY COMPILE_DEFINITIONS "__TBBMALLOC_BUILD=1") set_property(TARGET tbbmalloc APPEND_STRING PROPERTY COMPILE_FLAGS ${DISABLE_RTTI}) + if (TBB_SET_SOVERSION) + set_property(TARGET tbbmalloc PROPERTY SOVERSION 2) + endif () add_dependencies(tbbmalloc tbb_def_files) if (APPLE) set_property(TARGET tbbmalloc APPEND PROPERTY LINK_FLAGS "-Wl,-exported_symbols_list,\"${CMAKE_CURRENT_BINARY_DIR}/tbbmalloc.def\"") @@ -386,6 +393,9 @@ if(TBB_BUILD_TBBMALLOC_PROXY) target_link_libraries(tbbmalloc_proxy PRIVATE tbb_interface) set_property(TARGET tbbmalloc_proxy APPEND PROPERTY COMPILE_DEFINITIONS "__TBBMALLOC_BUILD=1") set_property(TARGET tbbmalloc_proxy APPEND_STRING PROPERTY COMPILE_FLAGS ${DISABLE_RTTI}) + if (TBB_SET_SOVERSION) + set_property(TARGET tbbmalloc_proxy PROPERTY SOVERSION 2) + endif () target_link_libraries(tbbmalloc_proxy PUBLIC tbbmalloc) if (TBB_INSTALL_TARGETS) install(TARGETS tbbmalloc_proxy EXPORT TBB