]> git.proxmox.com Git - ceph.git/blame - ceph/src/common/CMakeLists.txt
import ceph 14.2.5
[ceph.git] / ceph / src / common / CMakeLists.txt
CommitLineData
11fdf7f2
TL
1add_library(common_buffer_obj OBJECT
2 buffer.cc)
3
4add_library(common_texttable_obj OBJECT
5 TextTable.cc)
6
eafe8130
TL
7add_library(common_prioritycache_obj OBJECT
8 PriorityCache.cc)
9
11fdf7f2
TL
10set(common_srcs
11 AsyncOpTracker.cc
12 BackTrace.cc
13 ConfUtils.cc
14 Cycles.cc
15 DecayCounter.cc
16 Finisher.cc
17 Formatter.cc
18 Graylog.cc
19 HTMLFormatter.cc
20 HeartbeatMap.cc
21 LogClient.cc
22 LogEntry.cc
23 Mutex.cc
24 OutputDataSocket.cc
25 PluginRegistry.cc
11fdf7f2
TL
26 Readahead.cc
27 SloppyCRCMap.cc
28 SubProcess.cc
29 Thread.cc
30 Throttle.cc
31 Timer.cc
32 TracepointProvider.cc
33 TrackedOp.cc
34 WorkQueue.cc
35 address_helper.cc
36 admin_socket.cc
37 admin_socket_client.cc
38 assert.cc
39 bit_str.cc
40 blkdev.cc
41 bloom_filter.cc
42 ceph_argparse.cc
43 ceph_context.cc
44 ceph_crypto.cc
45 ceph_crypto_cms.cc
46 ceph_frag.cc
47 ceph_fs.cc
48 ceph_hash.cc
49 ceph_json.cc
50 ceph_strings.cc
51 ceph_time.cc
52 cmdparse.cc
53 code_environment.cc
54 common_init.cc
55 compat.cc
56 condition_variable_debug.cc
57 config.cc
58 config_values.cc
59 dns_resolve.cc
60 dout.cc
61 entity_name.cc
62 environment.cc
63 errno.cc
64 escape.cc
65 fd.cc
66 fs_types.cc
67 hex.cc
68 histogram.cc
69 hobject.cc
70 hostname.cc
71 ipaddr.cc
72 iso_8601.cc
73 linux_version.c
74 lockdep.cc
75 mempool.cc
76 mime.c
77 mutex_debug.cc
78 numa.cc
79 options.cc
80 page.cc
81 perf_counters.cc
82 perf_counters_collection.cc
83 perf_histogram.cc
84 pick_address.cc
85 reverse.c
86 run_cmd.cc
87 scrub_types.cc
88 shared_mutex_debug.cc
89 signal.cc
90 snap_types.cc
91 str_list.cc
92 str_map.cc
93 strtol.cc
94 types.cc
95 url_escape.cc
96 utf8.c
97 util.cc
98 version.cc
99 xattr.c)
100
101set_source_files_properties(${CMAKE_SOURCE_DIR}/src/common/version.cc
102 APPEND PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/src/include/ceph_ver.h)
103
104if(HAS_VTA)
105 set_source_files_properties(
106 config.cc
107 options.cc
108 PROPERTIES COMPILE_FLAGS -fno-var-tracking-assignments)
109endif()
110
111if(FREEBSD)
112 list(APPEND common_srcs freebsd_errno.cc)
113elseif(APPLE)
114 list(APPEND common_srcs darwin_errno.cc)
115elseif(SUN)
116 list(APPEND common_srcs solaris_errno.cc)
117elseif(AIX)
118 list(APPEND common_srcs aix_errno.cc)
119endif()
120
121if(WITH_LTTNG AND WITH_EVENTTRACE)
122 message(STATUS " Using EventTrace class.")
123 add_definitions("-DWITH_EVENTTRACE")
124 list(APPEND common_srcs EventTrace.cc)
125endif()
126
127add_library(common-common-objs OBJECT
128 ${common_srcs})
129# for options.cc
130target_compile_definitions(common-common-objs PRIVATE
131 "CEPH_LIBDIR=\"${CMAKE_INSTALL_FULL_LIBDIR}\""
132 "CEPH_PKGLIBDIR=\"${CEPH_INSTALL_FULL_PKGLIBDIR}\""
133 "CEPH_DATADIR=\"${CEPH_INSTALL_DATADIR}\"")
134
135set(common_mountcephfs_srcs
136 armor.c
137 safe_io.c
138 module.c
139 addr_parsing.c)
140add_library(common_mountcephfs_objs OBJECT
141 ${common_mountcephfs_srcs})
142
143
144set(crc32_srcs
145 crc32c.cc
146 crc32c_intel_baseline.c
147 sctp_crc32.c)
148
149if(HAVE_INTEL)
150 list(APPEND crc32_srcs
151 crc32c_intel_fast.c)
152 if(HAVE_GOOD_YASM_ELF64)
153 list(APPEND crc32_srcs
154 crc32c_intel_fast_asm.s
155 crc32c_intel_fast_zero_asm.s)
156 endif(HAVE_GOOD_YASM_ELF64)
157elseif(HAVE_POWER8)
158 list(APPEND crc32_srcs
159 crc32c_ppc.c)
160 if(HAVE_PPC64LE)
161 list(APPEND crc32_srcs
162 crc32c_ppc_asm.S
163 crc32c_ppc_fast_zero_asm.S)
164 endif(HAVE_PPC64LE)
165elseif(HAVE_ARMV8_CRC)
166 list(APPEND crc32_srcs
167 crc32c_aarch64.c)
168endif(HAVE_INTEL)
169
170add_library(crc32 ${crc32_srcs})
171if(HAVE_ARMV8_CRC)
172 set_target_properties(crc32 PROPERTIES
173 COMPILE_FLAGS "${CMAKE_C_FLAGS} ${ARMV8_CRC_COMPILE_FLAGS}")
174endif()
175target_link_libraries(crc32
176 arch)
177
178add_library(common_utf8 STATIC utf8.c)
179
eafe8130 180if(HAVE_KEYUTILS)
11fdf7f2
TL
181 set(parse_secret_srcs
182 secret.c)
183 add_library(parse_secret_objs OBJECT ${parse_secret_srcs})
184endif()