aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/tbb/ya.make
blob: 97b9caf037bf91388b18102a033158bdc7668b4a (plain) (blame)
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# Generated by devtools/yamaker from nixpkgs 32f7980afb5e33f1e078a51e715b9f102f396a69.

LIBRARY()

OWNER(
    orivej
    g:cpp-contrib
)

VERSION(2021.2.0)

ORIGINAL_SOURCE(https://github.com/oneapi-src/oneTBB/archive/v2021.2.0.tar.gz)

LICENSE(Apache-2.0)

LICENSE_TEXTS(.yandex_meta/licenses.list.txt)

ADDINCL(
    GLOBAL contrib/libs/tbb/include
)

NO_COMPILER_WARNINGS()

NO_UTIL()

CFLAGS(
    -D__TBB_BUILD
)

SRCS(
    src/tbb/allocator.cpp
    src/tbb/arena.cpp
    src/tbb/arena_slot.cpp
    src/tbb/concurrent_bounded_queue.cpp
    src/tbb/dynamic_link.cpp
    src/tbb/exception.cpp
    src/tbb/global_control.cpp
    src/tbb/governor.cpp
    src/tbb/main.cpp
    src/tbb/market.cpp
    src/tbb/misc.cpp
    src/tbb/misc_ex.cpp
    src/tbb/observer_proxy.cpp
    src/tbb/parallel_pipeline.cpp
    src/tbb/private_server.cpp
    src/tbb/profiling.cpp
    src/tbb/queuing_rw_mutex.cpp
    src/tbb/rml_tbb.cpp
    src/tbb/rtm_mutex.cpp
    src/tbb/rtm_rw_mutex.cpp
    src/tbb/semaphore.cpp
    src/tbb/small_object_pool.cpp
    src/tbb/task.cpp
    src/tbb/task_dispatcher.cpp
    src/tbb/task_group_context.cpp
    src/tbb/version.cpp
)

IF (CLANG OR CLANG_CL)
    IF (ARCH_I386 OR ARCH_I686 OR ARCH_X86_64)
        CFLAGS(
            -mrtm
            -mwaitpkg
        )
    ENDIF()
ENDIF()

IF (OS_WINDOWS)
    CFLAGS(
        -DUSE_WINTHREAD
    )
ELSE()
    CFLAGS(
        -DUSE_PTHREAD
    )
ENDIF()

IF (GCC)
    CFLAGS(
        -flifetime-dse=1
        -mrtm
    )
ENDIF()

IF (NOT ARCH_ARM64)
    CFLAGS(
        -D__TBB_USE_ITT_NOTIFY
        -DDO_ITT_NOTIFY
    )
    SRCS(
        src/tbb/itt_notify.cpp
    )
ENDIF()

END()