summaryrefslogtreecommitdiffstats
path: root/src/jaegertracing/opentelemetry-cpp/tools/vcpkg/ports/clickhouse-cpp/CMakeLists.txt
blob: 08a597b395ce5d41b998170fd1020bcf4dfddf2a (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
cmake_minimum_required(VERSION 3.13)
project(clickhouse-cpp CXX)

find_package(lz4 CONFIG REQUIRED)
find_package(cityhash CONFIG REQUIRED)

file(GLOB_RECURSE SOURCES "clickhouse/*.cpp")
file(GLOB_RECURSE HEADERS RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "clickhouse/*.h")

add_library(clickhouse-cpp STATIC ${SOURCES})

target_compile_definitions(clickhouse-cpp PRIVATE LZ4_DISABLE_DEPRECATE_WARNINGS)

set_target_properties(clickhouse-cpp PROPERTIES
    CXX_STANDARD 11
    CXX_STANDARD_REQUIRED ON
)

target_include_directories(clickhouse-cpp PUBLIC
    $<INSTALL_INTERFACE:include>
    $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
)

target_link_libraries(clickhouse-cpp 
    PRIVATE lz4::lz4
    PRIVATE cityhash
)

install(TARGETS clickhouse-cpp EXPORT clickhouse-cpp-config 
    RUNTIME DESTINATION bin
    ARCHIVE DESTINATION lib
    LIBRARY DESTINATION lib
)

install(EXPORT clickhouse-cpp-config DESTINATION share/cmake/clickhouse-cpp)

foreach (HEADER ${HEADERS} )
    get_filename_component(HEADER_DIR ${HEADER} DIRECTORY)
    install(FILES ${HEADER} DESTINATION include/${HEADER_DIR})
endforeach()