blob: 5dd0eb9b8012528bb0fc7608820ca793dc9ed3c6 (
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
42
43
44
45
46
47
|
cmake_minimum_required(VERSION 3.0)
project(libodb-boost VERSION 2.4.0 LANGUAGES CXX)
find_package(odb 2.4.0 REQUIRED COMPONENTS libodb)
configure_file(config.unix.h.in
${CMAKE_CURRENT_SOURCE_DIR}/odb/boost/details/config.h COPYONLY)
# FIXME: should we require boost? which packages?
# find_package(PostgreSQL REQUIRED)
set(LIBODB_INSTALL_HEADERS ON CACHE BOOL "Install the header files (a debug install)")
file(GLOB_RECURSE libodb_src LIST_DIRECTORIES False
RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
*.cxx)
add_library(libodb-boost ${libodb_src})
target_include_directories(libodb-boost
PUBLIC
$<INSTALL_INTERFACE:include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
)
target_link_libraries(libodb-boost PRIVATE odb::libodb)
if(BUILD_SHARED_LIBS)
target_compile_definitions(libodb-boost PRIVATE
-DLIBODB_BOOST_DYNAMIC_LIB)
else()
target_compile_definitions(libodb-boost PRIVATE
-DLIBODB_BOOST_STATIC_LIB)
endif()
install(TARGETS libodb-boost EXPORT odb_boostConfig
COMPONENT boost
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
RUNTIME DESTINATION bin
)
if(LIBODB_INSTALL_HEADERS)
install(DIRECTORY odb DESTINATION include/
COMPONENT sqlite
FILES_MATCHING
PATTERN "*.h"
PATTERN "*.hxx"
PATTERN "*.ixx"
PATTERN "*.txx"
PATTERN "*.options"
)
endif()
install(EXPORT odb_boostConfig NAMESPACE odb:: COMPONENT boost DESTINATION share/odb)
export(TARGETS libodb-boost NAMESPACE odb:: FILE odb_boostConfig.cmake)
|