2 # get_command_descriptions
3 # libmon not currently available on Windows.
4 add_executable(get_command_descriptions
5 get_command_descriptions.cc
6 $<TARGET_OBJECTS:common_texttable_obj>
8 target_link_libraries(get_command_descriptions
17 # Though FreeBSD has blkdev support, the unittests' mocks only work in Linux
18 if(HAVE_BLKID AND LINUX)
20 add_executable(unittest_blkdev
22 add_ceph_unittest(unittest_blkdev)
23 target_link_libraries(unittest_blkdev global ${BLKID_LIBRARIES})
27 if(WITH_CEPH_DEBUG_MUTEX)
28 add_executable(unittest_lockdep
30 add_ceph_unittest(unittest_lockdep)
31 target_link_libraries(unittest_lockdep ceph-common)
35 add_executable(unittest_counter
37 add_ceph_unittest(unittest_counter)
38 target_link_libraries(unittest_counter ceph-common)
40 # FreeBSD only has shims to support NUMA, no functional code.
43 add_executable(unittest_numa
46 add_ceph_unittest(unittest_numa)
47 target_link_libraries(unittest_numa ceph-common)
50 # unittest_bloom_filter
51 add_executable(unittest_bloom_filter
54 add_ceph_unittest(unittest_bloom_filter)
55 target_link_libraries(unittest_bloom_filter ceph-common)
58 add_executable(unittest_lruset
61 add_ceph_unittest(unittest_lruset)
62 target_link_libraries(unittest_lruset)
65 add_executable(unittest_histogram
68 add_ceph_unittest(unittest_histogram)
69 target_link_libraries(unittest_histogram ceph-common)
71 # unittest_prioritized_queue
72 add_executable(unittest_prioritized_queue
73 test_prioritized_queue.cc
75 target_link_libraries(unittest_prioritized_queue ceph-common)
76 add_ceph_unittest(unittest_prioritized_queue)
79 # unittest_mclock_priority_queue
80 add_executable(unittest_mclock_priority_queue
81 test_mclock_priority_queue.cc
83 add_ceph_unittest(unittest_mclock_priority_queue)
84 target_link_libraries(unittest_mclock_priority_queue
90 add_executable(unittest_str_map
93 add_ceph_unittest(unittest_str_map)
94 target_link_libraries(unittest_str_map ceph-common)
96 # unittest_json_formattable
97 add_executable(unittest_json_formattable
98 test_json_formattable.cc
100 add_ceph_unittest(unittest_json_formattable ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_json_formattable)
101 # add_dependencies(unittest_json_formattable ceph-common)
102 target_link_libraries(unittest_json_formattable ceph-common global ${BLKID_LIBRARIES})
104 # unittest_json_formatter
105 add_executable(unittest_json_formatter
106 test_json_formatter.cc
108 add_ceph_unittest(unittest_json_formatter ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_json_formatter)
109 # add_dependencies(unittest_json_formatter ceph-common)
110 target_link_libraries(unittest_json_formatter ceph-common global ${BLKID_LIBRARIES})
112 # unittest_sharedptr_registry
113 add_executable(unittest_sharedptr_registry
114 test_sharedptr_registry.cc
115 $<TARGET_OBJECTS:unit-main>
117 add_ceph_unittest(unittest_sharedptr_registry)
118 target_link_libraries(unittest_sharedptr_registry global)
120 # unittest_shared_cache
121 add_executable(unittest_shared_cache
123 $<TARGET_OBJECTS:unit-main>
125 add_ceph_unittest(unittest_shared_cache)
126 target_link_libraries(unittest_shared_cache global)
128 # unittest_sloppy_crc_map
129 add_executable(unittest_sloppy_crc_map
130 test_sloppy_crc_map.cc
132 add_ceph_unittest(unittest_sloppy_crc_map)
133 target_link_libraries(unittest_sloppy_crc_map global)
136 add_executable(unittest_time
138 ${CMAKE_SOURCE_DIR}/src/common/ceph_time.cc
140 add_ceph_unittest(unittest_time)
141 target_link_libraries(unittest_time ceph-common)
144 add_executable(unittest_util
146 ${CMAKE_SOURCE_DIR}/src/common/util.cc
148 add_ceph_unittest(unittest_util)
149 target_link_libraries(unittest_util global StdFilesystem::filesystem)
152 add_executable(unittest_random
155 add_ceph_unittest(unittest_random)
156 target_link_libraries(unittest_random Boost::random)
159 add_executable(unittest_throttle
161 $<TARGET_OBJECTS:unit-main>
163 add_ceph_unittest(unittest_throttle PARALLEL)
164 target_link_libraries(unittest_throttle global)
167 add_executable(unittest_lru
170 add_ceph_unittest(unittest_lru)
171 target_link_libraries(unittest_lru ceph-common)
173 # unittest_intrusive_lru
174 add_executable(unittest_intrusive_lru
175 test_intrusive_lru.cc
177 add_ceph_unittest(unittest_intrusive_lru)
178 target_link_libraries(unittest_intrusive_lru ceph-common)
181 add_executable(unittest_crc32c
184 add_ceph_unittest(unittest_crc32c)
185 target_link_libraries(unittest_crc32c ceph-common)
188 add_executable(unittest_config
192 add_ceph_unittest(unittest_config)
193 target_link_libraries(unittest_config ceph-common)
196 add_executable(unittest_context
199 add_ceph_unittest(unittest_context)
200 target_link_libraries(unittest_context ceph-common)
203 add_executable(unittest_safe_io
206 add_ceph_unittest(unittest_safe_io)
207 target_link_libraries(unittest_safe_io ceph-common)
209 # unittest_url_escape
210 add_executable(unittest_url_escape
213 add_ceph_unittest(unittest_url_escape)
214 target_link_libraries(unittest_url_escape ceph-common)
216 # unittest_pretty_binary
217 add_executable(unittest_pretty_binary
218 test_pretty_binary.cc
220 add_ceph_unittest(unittest_pretty_binary)
221 target_link_libraries(unittest_pretty_binary ceph-common)
224 add_executable(unittest_readahead
227 add_ceph_unittest(unittest_readahead)
228 target_link_libraries(unittest_readahead ceph-common)
230 # unittest_tableformatter
231 add_executable(unittest_tableformatter
232 test_tableformatter.cc
234 add_ceph_unittest(unittest_tableformatter)
235 target_link_libraries(unittest_tableformatter ceph-common)
237 add_executable(unittest_xmlformatter
240 add_ceph_unittest(unittest_xmlformatter)
241 target_link_libraries(unittest_xmlformatter ceph-common)
243 # unittest_bit_vector
244 add_executable(unittest_bit_vector
247 add_ceph_unittest(unittest_bit_vector)
248 target_link_libraries(unittest_bit_vector ceph-common)
250 # unittest_interval_map
251 add_executable(unittest_interval_map
254 add_ceph_unittest(unittest_interval_map)
255 target_link_libraries(unittest_interval_map ceph-common)
257 # unittest_interval_set
258 add_executable(unittest_interval_set
261 add_ceph_unittest(unittest_interval_set)
262 target_link_libraries(unittest_interval_set ceph-common GTest::Main)
264 # unittest_weighted_priority_queue
265 add_executable(unittest_weighted_priority_queue
266 test_weighted_priority_queue.cc
268 target_link_libraries(unittest_weighted_priority_queue ceph-common)
269 add_ceph_unittest(unittest_weighted_priority_queue)
271 if(WITH_CEPH_DEBUG_MUTEX)
272 add_executable(unittest_mutex_debug
274 add_ceph_unittest(unittest_mutex_debug)
275 target_link_libraries(unittest_mutex_debug ceph-common)
278 # unittest_shunique_lock
279 add_executable(unittest_shunique_lock
280 test_shunique_lock.cc
282 add_ceph_unittest(unittest_shunique_lock)
283 target_link_libraries(unittest_shunique_lock ceph-common)
285 add_executable(unittest_fair_mutex
287 add_ceph_unittest(unittest_fair_mutex)
288 target_link_libraries(unittest_fair_mutex ceph-common)
290 # unittest_perf_histogram
291 add_executable(unittest_perf_histogram
292 test_perf_histogram.cc
294 add_ceph_unittest(unittest_perf_histogram)
295 target_link_libraries(unittest_perf_histogram ceph-common)
297 # unittest_perf_cache_key
298 add_executable(unittest_perf_counters_key test_perf_counters_key.cc)
299 add_ceph_unittest(unittest_perf_counters_key)
300 target_link_libraries(unittest_perf_counters_key ceph-common)
302 # unittest_global_doublefree
304 add_executable(unittest_global_doublefree
305 test_global_doublefree.cc
307 add_ceph_unittest(unittest_global_doublefree)
308 target_link_libraries(unittest_global_doublefree cephfs librados ceph-common)
312 add_executable(unittest_dns_resolve
314 $<TARGET_OBJECTS:unit-main>)
315 target_link_libraries(unittest_dns_resolve global)
316 add_ceph_unittest(unittest_dns_resolve)
319 add_executable(unittest_back_trace
321 set_source_files_properties(test_back_trace.cc PROPERTIES
322 COMPILE_FLAGS -fno-inline)
323 add_ceph_unittest(unittest_back_trace)
324 target_link_libraries(unittest_back_trace ceph-common)
326 add_executable(unittest_hostname
328 add_ceph_unittest(unittest_hostname)
329 target_link_libraries(unittest_hostname ceph-common)
331 add_executable(unittest_iso_8601
333 add_ceph_unittest(unittest_iso_8601)
334 target_link_libraries(unittest_iso_8601 ceph-common)
336 add_executable(unittest_convenience test_convenience.cc)
337 add_ceph_unittest(unittest_convenience)
339 add_executable(unittest_bounded_key_counter
340 test_bounded_key_counter.cc
341 $<TARGET_OBJECTS:unit-main>)
342 target_link_libraries(unittest_bounded_key_counter global)
343 add_ceph_unittest(unittest_bounded_key_counter)
345 add_executable(unittest_split test_split.cc)
346 add_ceph_unittest(unittest_split)
348 add_executable(unittest_static_ptr test_static_ptr.cc)
349 add_ceph_unittest(unittest_static_ptr)
351 add_executable(unittest_hobject test_hobject.cc
352 $<TARGET_OBJECTS:unit-main>)
353 target_link_libraries(unittest_hobject global ceph-common)
354 add_ceph_unittest(unittest_hobject)
356 add_executable(unittest_async_completion test_async_completion.cc)
357 add_ceph_unittest(unittest_async_completion)
358 target_link_libraries(unittest_async_completion ceph-common Boost::system)
360 add_executable(unittest_async_shared_mutex test_async_shared_mutex.cc)
361 add_ceph_unittest(unittest_async_shared_mutex)
362 target_link_libraries(unittest_async_shared_mutex ceph-common Boost::system)
364 add_executable(unittest_cdc test_cdc.cc
365 $<TARGET_OBJECTS:unit-main>)
366 target_link_libraries(unittest_cdc global ceph-common)
367 add_ceph_unittest(unittest_cdc)
369 add_executable(unittest_ceph_timer test_ceph_timer.cc)
370 add_ceph_unittest(unittest_ceph_timer)
372 add_executable(unittest_option test_option.cc)
373 target_link_libraries(unittest_option ceph-common GTest::Main)
374 add_ceph_unittest(unittest_option)
376 add_executable(unittest_fault_injector test_fault_injector.cc
377 $<TARGET_OBJECTS:unit-main>)
378 target_link_libraries(unittest_fault_injector global)
379 add_ceph_unittest(unittest_fault_injector)
381 add_executable(unittest_blocked_completion test_blocked_completion.cc)
382 add_ceph_unittest(unittest_blocked_completion)
383 target_link_libraries(unittest_blocked_completion Boost::system GTest::GTest)
385 add_executable(unittest_allocate_unique test_allocate_unique.cc)
386 add_ceph_unittest(unittest_allocate_unique)
389 add_executable(unittest_journald_logger test_journald_logger.cc)
390 target_link_libraries(unittest_journald_logger ceph-common)
391 add_ceph_unittest(unittest_journald_logger)