summaryrefslogtreecommitdiff
path: root/next/benchmark/CMakeLists.txt
blob: 2ae1227d91c729eb44d73b3ac6e5380c2adb6659 (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
41
add_library(
    mbgl-benchmark SHARED EXCLUDE_FROM_ALL
    ${MBGL_ROOT}/benchmark/api/query.benchmark.cpp
    ${MBGL_ROOT}/benchmark/api/render.benchmark.cpp
    ${MBGL_ROOT}/benchmark/function/camera_function.benchmark.cpp
    ${MBGL_ROOT}/benchmark/function/composite_function.benchmark.cpp
    ${MBGL_ROOT}/benchmark/function/source_function.benchmark.cpp
    ${MBGL_ROOT}/benchmark/parse/filter.benchmark.cpp
    ${MBGL_ROOT}/benchmark/parse/tile_mask.benchmark.cpp
    ${MBGL_ROOT}/benchmark/parse/vector_tile.benchmark.cpp
    ${MBGL_ROOT}/benchmark/src/mbgl/benchmark/benchmark.cpp
    ${MBGL_ROOT}/benchmark/storage/offline_database.benchmark.cpp
    ${MBGL_ROOT}/benchmark/util/dtoa.benchmark.cpp
    ${MBGL_ROOT}/benchmark/util/tilecover.benchmark.cpp
)

target_include_directories(
    mbgl-benchmark
    PRIVATE ${MBGL_ROOT}/benchmark/src ${MBGL_ROOT}/platform/default/include ${MBGL_ROOT}/src
)

target_include_directories(
    mbgl-benchmark
    PUBLIC ${MBGL_ROOT}/benchmark/include ${MBGL_ROOT}/include
)

include(${PROJECT_SOURCE_DIR}/vendor/benchmark.cmake)

# Needed for testing private classes
get_target_property(MBGL_CORE_PRIVATE_LIBRARIES mbgl-core LINK_LIBRARIES)

target_link_libraries(
    mbgl-benchmark
    PRIVATE ${MBGL_CORE_PRIVATE_LIBRARIES} mbgl-core mbgl-vendor-benchmark
)

if(CMAKE_SYSTEM_NAME STREQUAL Android)
    set_target_properties(mbgl-benchmark PROPERTIES LINK_FLAGS_RELEASE "-fuse-ld=gold -O2 -flto -Wl,--icf=safe")
endif()

set_property(TARGET mbgl-benchmark PROPERTY FOLDER Core)