blob: 3bf5d313a7fd49178c6e13bb385aa664dd4629a0 (
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
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
|
#
# Public Domain 2014-present MongoDB, Inc.
# Public Domain 2008-2014 WiredTiger, Inc.
# All rights reserved.
#
# See the file LICENSE for redistribution information
#
include(GNUInstallDirs)
# Library installs
# Define the wiredtiger public headers we want to export when running the install target.
install(
FILES ${CMAKE_BINARY_DIR}/include/wiredtiger.h ${CMAKE_SOURCE_DIR}/src/include/wiredtiger_ext.h
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
)
# Define the wiredtiger library targets we will install.
set(wt_targets)
if(ENABLE_SHARED)
list(APPEND wt_targets wiredtiger_shared)
endif()
if(ENABLE_STATIC)
list(APPEND wt_targets wiredtiger_static)
endif()
# Install the wiredtiger library targets.
install(TARGETS ${wt_targets}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
# Create our wiredtiger pkgconfig (for POSIX builds).
if(WT_POSIX)
# Established the link flags for private libraries used by this WiredTiger. 'Private' in this context refers
# to libraries WT links against, but isn't exposed to using applications.
set(private_libs)
if(HAVE_LIBPTHREAD)
set(private_libs "${private_libs} -lpthread")
endif()
if(HAVE_LIBRT)
set(private_libs "${private_libs} -lrt")
endif()
if(HAVE_LIBDL)
set(private_libs "${private_libs} -ldl")
endif()
if(ENABLE_TCMALLOC)
set(private_libs "${private_libs} -ltcmalloc")
endif()
if(HAVE_BUILTIN_EXTENSION_LZ4)
set(private_libs "${private_libs} -llz4")
endif()
if(HAVE_BUILTIN_EXTENSION_SNAPPY)
set(private_libs "${private_libs} -lsnappy")
endif()
if(HAVE_BUILTIN_EXTENSION_SODIUM)
set(private_libs "${private_libs} -lsodium")
endif()
if(HAVE_BUILTIN_EXTENSION_ZLIB)
set(private_libs "${private_libs} -lz")
endif()
if(HAVE_BUILTIN_EXTENSION_ZSTD)
set(private_libs "${private_libs} -lzstd")
endif()
set(PRIVATE_PKG_LIBS "${private_libs}")
configure_file(${CMAKE_CURRENT_LIST_DIR}/wiredtiger.pc.in wiredtiger.pc @ONLY)
install(
FILES ${CMAKE_BINARY_DIR}/wiredtiger.pc
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
)
endif()
|