aboutsummaryrefslogtreecommitdiff
path: root/ports/tbb/CMakeLists.txt
blob: ae53c40f2a6251d991e9222ba2d0489ef25da7c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
project(tbb CXX)

file(GLOB SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/*)
file(COPY ${SOURCES} DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/src)

include(${CMAKE_CURRENT_BINARY_DIR}/src/cmake/TBBBuild.cmake REQUIRED)
if(NOT BUILD_SHARED_LIBS)
    set(TBB_STATIC_INCLUDE extra_inc=big_iron.inc)
endif()
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
  set(FORWARD_SDK_ROOT "SDKROOT=${CMAKE_OSX_SYSROOT}")
  if(CMAKE_OSX_ARCHITECTURES STREQUAL "arm64")
    set(arch "arch=arm64")
  endif()
endif()

if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
  if(NOT CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL CMAKE_SYSTEM_PROCESSOR)
    set(arch "arch=${CMAKE_SYSTEM_PROCESSOR}")
    if(CMAKE_CXX_COMPILER)
        set(CPLUS "CPLUS=${CMAKE_CXX_COMPILER}")
    endif()
    if(CMAKE_C_COMPILER)
        set(CONLY "CONLY=${CMAKE_C_COMPILER}")
    endif()
  endif()
endif()

tbb_build(TBB_ROOT ${CMAKE_CURRENT_BINARY_DIR}/src MAKE_ARGS ${arch} ${CPLUS} ${CONLY} ${TBB_STATIC_INCLUDE} ${FORWARD_SDK_ROOT})

set(SUBDIR ${CMAKE_CURRENT_BINARY_DIR}/tbb_cmake_build/tbb_cmake_build_subdir)
if(CMAKE_BUILD_TYPE STREQUAL "Release")
    set(SUBDIR "${SUBDIR}_release")
else()
    set(SUBDIR "${SUBDIR}_debug")
endif()

file(GLOB OUTPUTS ${SUBDIR}/*.so.* ${SUBDIR}/*.so ${SUBDIR}/*.a ${SUBDIR}/*.dylib ${SUBDIR}/*.dylib.*)

install(FILES ${OUTPUTS} DESTINATION lib)