]> git.proxmox.com Git - ceph.git/blob - ceph/src/jaegertracing/opentelemetry-cpp/tools/vcpkg/ports/libodb-sqlite/CMakeLists.txt
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / tools / vcpkg / ports / libodb-sqlite / CMakeLists.txt
1 cmake_minimum_required(VERSION 3.0)
2 project(libodb-sqlite VERSION 2.4.0 LANGUAGES CXX)
3 find_package(odb 2.4.0 REQUIRED COMPONENTS libodb)
4 find_package(unofficial-sqlite3 CONFIG)
5 configure_file(config.unix.h.in odb/sqlite/details/config.h COPYONLY)
6
7 set(LIBODB_INSTALL_HEADERS ON CACHE BOOL "Install the header files (a debug install)")
8 file(GLOB_RECURSE libodb_src LIST_DIRECTORIES False
9 RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
10 *.cxx)
11 list(FILTER libodb_src EXCLUDE REGEX /posix/.*)
12 add_library(libodb-sqlite ${libodb_src})
13 target_include_directories(libodb-sqlite
14 PUBLIC
15 $<INSTALL_INTERFACE:include>
16 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
17 $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
18 )
19
20 target_link_libraries(libodb-sqlite PRIVATE odb::libodb unofficial::sqlite3::sqlite3)
21 if(BUILD_SHARED_LIBS)
22 target_compile_definitions(libodb-sqlite PRIVATE
23 -DLIBODB_SQLITE_DYNAMIC_LIB
24 -DLIBODB_SQLITE_HAVE_UNLOCK_NOTIFY)
25 else()
26 target_compile_definitions(libodb-sqlite PRIVATE
27 -DLIBODB_SQLITE_STATIC_LIB
28 -DLIBODB_SQLITE_HAVE_UNLOCK_NOTIFY)
29 endif()
30 install(TARGETS libodb-sqlite EXPORT odb_sqliteConfig
31 COMPONENT sqlite
32 ARCHIVE DESTINATION lib
33 LIBRARY DESTINATION lib
34 RUNTIME DESTINATION bin
35 )
36 if(LIBODB_INSTALL_HEADERS)
37 install(
38 DIRECTORY odb
39 DESTINATION include/
40 COMPONENT sqlite
41 FILES_MATCHING
42 PATTERN "*.h"
43 PATTERN "*.hxx"
44 PATTERN "*.ixx"
45 PATTERN "*.txx"
46 )
47 install(
48 FILES config.unix.h.in
49 DESTINATION include/odb/sqlite/detail
50 COMPONENT sqlite
51 RENAME config.h
52 )
53 endif()
54 install(EXPORT odb_sqliteConfig NAMESPACE odb:: COMPONENT sqlite DESTINATION share/odb)
55 export(TARGETS libodb-sqlite NAMESPACE odb:: FILE odb_sqliteConfig.cmake)