]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | ## Rados object classes |
2 | ||
3 | set(cls_dir ${CMAKE_INSTALL_LIBDIR}/rados-classes) | |
7c673cae FG |
4 | |
5 | # cls_sdk | |
6 | add_library(cls_sdk SHARED sdk/cls_sdk.cc) | |
11fdf7f2 TL |
7 | set_target_properties(cls_sdk PROPERTIES |
8 | VERSION "1.0.0" | |
9 | SOVERSION "1" | |
10 | INSTALL_RPATH "" | |
11 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
12 | install(TARGETS cls_sdk DESTINATION ${cls_dir}) |
13 | ||
14 | # cls_hello | |
15 | set(cls_hello_srcs hello/cls_hello.cc) | |
16 | add_library(cls_hello SHARED ${cls_hello_srcs}) | |
17 | set_target_properties(cls_hello PROPERTIES | |
18 | VERSION "1.0.0" | |
19 | SOVERSION "1" | |
11fdf7f2 TL |
20 | INSTALL_RPATH "" |
21 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae | 22 | install(TARGETS cls_hello DESTINATION ${cls_dir}) |
7c673cae FG |
23 | |
24 | # cls_numops | |
25 | set(cls_numops_srcs numops/cls_numops.cc) | |
26 | add_library(cls_numops SHARED ${cls_numops_srcs}) | |
27 | set_target_properties(cls_numops PROPERTIES | |
28 | VERSION "1.0.0" | |
29 | SOVERSION "1" | |
11fdf7f2 TL |
30 | INSTALL_RPATH "" |
31 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
32 | install(TARGETS cls_numops DESTINATION ${cls_dir}) |
33 | ||
34 | set(cls_numops_client_srcs numops/cls_numops_client.cc) | |
35 | add_library(cls_numops_client STATIC ${cls_numops_client_srcs}) | |
36 | ||
7c673cae FG |
37 | |
38 | # cls_rbd | |
39 | if (WITH_RBD) | |
40 | set(cls_rbd_srcs rbd/cls_rbd.cc rbd/cls_rbd_types.cc) | |
41 | add_library(cls_rbd SHARED ${cls_rbd_srcs}) | |
42 | set_target_properties(cls_rbd PROPERTIES | |
43 | VERSION "1.0.0" | |
44 | SOVERSION "1" | |
11fdf7f2 TL |
45 | INSTALL_RPATH "" |
46 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
47 | install(TARGETS cls_rbd DESTINATION ${cls_dir}) |
48 | ||
49 | set(cls_rbd_client_srcs rbd/cls_rbd_client.cc rbd/cls_rbd_types.cc) | |
50 | add_library(cls_rbd_client STATIC ${cls_rbd_client_srcs}) | |
51 | target_link_libraries(cls_rbd_client cls_lock_client) | |
52 | ||
7c673cae FG |
53 | endif (WITH_RBD) |
54 | ||
55 | # cls_lock | |
56 | set(cls_lock_srcs lock/cls_lock.cc) | |
57 | add_library(cls_lock SHARED ${cls_lock_srcs}) | |
58 | set_target_properties(cls_lock PROPERTIES | |
59 | VERSION "1.0.0" | |
60 | SOVERSION "1" | |
11fdf7f2 TL |
61 | INSTALL_RPATH "" |
62 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
63 | install(TARGETS cls_lock DESTINATION ${cls_dir}) |
64 | ||
65 | set(cls_lock_client_srcs | |
66 | lock/cls_lock_client.cc | |
67 | lock/cls_lock_types.cc | |
68 | lock/cls_lock_ops.cc) | |
69 | add_library(cls_lock_client STATIC ${cls_lock_client_srcs}) | |
70 | ||
7c673cae | 71 | |
11fdf7f2 TL |
72 | # cls_otp |
73 | if (WITH_RADOSGW) | |
74 | set(cls_otp_srcs otp/cls_otp.cc) | |
75 | add_library(cls_otp SHARED ${cls_otp_srcs}) | |
76 | target_link_libraries(cls_otp OATH::OATH) | |
1e59de90 TL |
77 | target_include_directories(cls_otp |
78 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw/driver/rados" | |
79 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw" | |
80 | PUBLIC "${CMAKE_SOURCE_DIR}/src/spawn/include") | |
11fdf7f2 TL |
81 | set_target_properties(cls_otp PROPERTIES |
82 | VERSION "1.0.0" | |
83 | SOVERSION "1" | |
84 | INSTALL_RPATH "" | |
85 | CXX_VISIBILITY_PRESET hidden) | |
86 | install(TARGETS cls_otp DESTINATION ${cls_dir}) | |
87 | ||
88 | set(cls_otp_client_srcs | |
89 | otp/cls_otp_client.cc | |
90 | otp/cls_otp_types.cc | |
91 | ) | |
92 | add_library(cls_otp_client STATIC ${cls_otp_client_srcs}) | |
93 | endif (WITH_RADOSGW) | |
94 | ||
7c673cae FG |
95 | # cls_refcount |
96 | set(cls_refcount_srcs | |
97 | refcount/cls_refcount.cc | |
98 | refcount/cls_refcount_ops.cc | |
99 | ${CMAKE_SOURCE_DIR}/src/common/ceph_json.cc) | |
100 | add_library(cls_refcount SHARED ${cls_refcount_srcs}) | |
101 | target_link_libraries(cls_refcount json_spirit) | |
102 | set_target_properties(cls_refcount PROPERTIES | |
103 | VERSION "1.0.0" | |
104 | SOVERSION "1" | |
11fdf7f2 TL |
105 | INSTALL_RPATH "" |
106 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
107 | install(TARGETS cls_refcount DESTINATION ${cls_dir}) |
108 | ||
109 | set(cls_refcount_client_srcs | |
110 | refcount/cls_refcount_client.cc | |
111 | refcount/cls_refcount_ops.cc) | |
112 | add_library(cls_refcount_client STATIC ${cls_refcount_client_srcs}) | |
113 | ||
7c673cae FG |
114 | |
115 | # cls_version | |
116 | set(cls_version_srcs version/cls_version.cc) | |
117 | add_library(cls_version SHARED ${cls_version_srcs}) | |
118 | set_target_properties(cls_version PROPERTIES | |
119 | VERSION "1.0.0" | |
120 | SOVERSION "1" | |
11fdf7f2 TL |
121 | INSTALL_RPATH "" |
122 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
123 | install(TARGETS cls_version DESTINATION ${cls_dir}) |
124 | ||
125 | set(cls_version_client_srcs | |
126 | version/cls_version_client.cc | |
127 | version/cls_version_types.cc) | |
128 | add_library(cls_version_client STATIC ${cls_version_client_srcs}) | |
129 | ||
7c673cae FG |
130 | |
131 | # cls_log | |
132 | set(cls_log_srcs log/cls_log.cc) | |
133 | add_library(cls_log SHARED ${cls_log_srcs}) | |
134 | set_target_properties(cls_log PROPERTIES | |
135 | VERSION "1.0.0" | |
136 | SOVERSION "1" | |
11fdf7f2 TL |
137 | INSTALL_RPATH "" |
138 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
139 | install(TARGETS cls_log DESTINATION ${cls_dir}) |
140 | ||
141 | set(cls_log_client_srcs log/cls_log_client.cc) | |
142 | add_library(cls_log_client STATIC ${cls_log_client_srcs}) | |
143 | ||
7c673cae | 144 | |
7c673cae FG |
145 | # cls_timeindex |
146 | set(cls_timeindex_srcs timeindex/cls_timeindex.cc) | |
147 | add_library(cls_timeindex SHARED ${cls_timeindex_srcs}) | |
148 | set_target_properties(cls_timeindex PROPERTIES | |
149 | VERSION "1.0.0" | |
150 | SOVERSION "1" | |
11fdf7f2 TL |
151 | INSTALL_RPATH "" |
152 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
153 | install(TARGETS cls_timeindex DESTINATION ${cls_dir}) |
154 | ||
9f95a23c TL |
155 | set(cls_timeindex_client_srcs |
156 | timeindex/cls_timeindex_types.cc | |
157 | timeindex/cls_timeindex_client.cc) | |
7c673cae FG |
158 | add_library(cls_timeindex_client STATIC ${cls_timeindex_client_srcs}) |
159 | ||
7c673cae | 160 | |
7c673cae FG |
161 | # cls_user |
162 | set(cls_user_srcs user/cls_user.cc) | |
163 | add_library(cls_user SHARED ${cls_user_srcs}) | |
164 | set_target_properties(cls_user PROPERTIES | |
165 | VERSION "1.0.0" | |
166 | SOVERSION "1" | |
11fdf7f2 TL |
167 | INSTALL_RPATH "" |
168 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
169 | install(TARGETS cls_user DESTINATION ${cls_dir}) |
170 | ||
171 | set(cls_user_client_srcs | |
172 | user/cls_user_client.cc | |
173 | user/cls_user_types.cc | |
174 | user/cls_user_ops.cc) | |
175 | add_library(cls_user_client STATIC ${cls_user_client_srcs}) | |
176 | ||
7c673cae FG |
177 | |
178 | # cls_journal | |
179 | set(cls_journal_srcs | |
180 | journal/cls_journal.cc | |
181 | journal/cls_journal_types.cc) | |
182 | add_library(cls_journal SHARED ${cls_journal_srcs}) | |
183 | set_target_properties(cls_journal PROPERTIES | |
184 | VERSION "1.0.0" | |
185 | SOVERSION "1" | |
11fdf7f2 TL |
186 | INSTALL_RPATH "" |
187 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
188 | install(TARGETS cls_journal DESTINATION ${cls_dir}) |
189 | ||
190 | set(cls_journal_client_srcs | |
191 | journal/cls_journal_client.cc | |
192 | journal/cls_journal_types.cc) | |
193 | add_library(cls_journal_client STATIC ${cls_journal_client_srcs}) | |
194 | ||
7c673cae FG |
195 | |
196 | # cls_rgw | |
197 | if (WITH_RADOSGW) | |
198 | set(cls_rgw_srcs | |
199 | rgw/cls_rgw.cc | |
200 | rgw/cls_rgw_ops.cc | |
201 | rgw/cls_rgw_types.cc | |
202 | ${CMAKE_SOURCE_DIR}/src/common/ceph_json.cc) | |
203 | add_library(cls_rgw SHARED ${cls_rgw_srcs}) | |
1e59de90 TL |
204 | target_link_libraries(cls_rgw fmt json_spirit) |
205 | target_include_directories(cls_rgw | |
206 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw/driver/rados" | |
207 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw" | |
208 | PUBLIC "${CMAKE_SOURCE_DIR}/src/spawn/include") | |
7c673cae FG |
209 | set_target_properties(cls_rgw PROPERTIES |
210 | VERSION "1.0.0" | |
211 | SOVERSION "1" | |
11fdf7f2 TL |
212 | INSTALL_RPATH "" |
213 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
214 | install(TARGETS cls_rgw DESTINATION ${cls_dir}) |
215 | ||
216 | set(cls_rgw_client_srcs | |
217 | rgw/cls_rgw_client.cc | |
218 | rgw/cls_rgw_types.cc | |
219 | rgw/cls_rgw_ops.cc) | |
220 | add_library(cls_rgw_client STATIC ${cls_rgw_client_srcs}) | |
1e59de90 TL |
221 | target_include_directories(cls_rgw_client |
222 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw/driver/rados" | |
223 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw" | |
224 | PUBLIC "${CMAKE_SOURCE_DIR}/src/spawn/include") | |
7c673cae | 225 | |
7c673cae FG |
226 | endif (WITH_RADOSGW) |
227 | ||
228 | # cls_cephfs | |
229 | if (WITH_CEPHFS) | |
230 | set(cls_cephfs_srcs | |
231 | cephfs/cls_cephfs.cc) | |
232 | add_library(cls_cephfs SHARED ${cls_cephfs_srcs}) | |
233 | set_target_properties(cls_cephfs PROPERTIES | |
234 | VERSION "1.0.0" | |
235 | SOVERSION "1" | |
11fdf7f2 TL |
236 | INSTALL_RPATH "" |
237 | CXX_VISIBILITY_PRESET hidden) | |
7c673cae FG |
238 | install(TARGETS cls_cephfs DESTINATION ${cls_dir}) |
239 | ||
240 | set(cls_cephfs_client_srcs | |
241 | cephfs/cls_cephfs_client.cc) | |
242 | add_library(cls_cephfs_client STATIC ${cls_cephfs_client_srcs}) | |
243 | ||
7c673cae FG |
244 | endif (WITH_CEPHFS) |
245 | ||
f67539c2 TL |
246 | if (NOT WIN32) |
247 | # cls_lua | |
248 | set(cls_lua_srcs | |
249 | lua/cls_lua.cc | |
250 | lua/lua_bufferlist.cc) | |
251 | add_library(cls_lua SHARED ${cls_lua_srcs}) | |
252 | set_target_properties(cls_lua PROPERTIES | |
253 | VERSION "1.0.0" | |
254 | SOVERSION "1" | |
255 | INSTALL_RPATH "" | |
256 | CXX_VISIBILITY_PRESET hidden) | |
257 | install(TARGETS cls_lua DESTINATION ${cls_dir}) | |
258 | target_link_libraries(cls_lua | |
259 | ${LUA_LIBRARIES} | |
260 | json_spirit) | |
261 | target_include_directories(cls_lua PRIVATE "${LUA_INCLUDE_DIR}") | |
262 | endif (NOT WIN32) | |
7c673cae FG |
263 | |
264 | set(cls_lua_client_srcs | |
265 | lua/cls_lua_client.cc) | |
266 | add_library(cls_lua_client STATIC ${cls_lua_client_srcs}) | |
267 | ||
11fdf7f2 | 268 | # cls_cas |
f67539c2 TL |
269 | set(cls_cas_client_srcs |
270 | cas/cls_cas_client.cc) | |
271 | add_library(cls_cas_client STATIC ${cls_cas_client_srcs}) | |
272 | ||
273 | set(cls_cas_internal_srcs | |
274 | cas/cls_cas_internal.cc) | |
275 | add_library(cls_cas_internal STATIC ${cls_cas_internal_srcs}) | |
276 | ||
11fdf7f2 TL |
277 | set(cls_cas_srcs |
278 | cas/cls_cas.cc) | |
279 | add_library(cls_cas SHARED ${cls_cas_srcs}) | |
f67539c2 | 280 | target_link_libraries(cls_cas cls_cas_internal) |
11fdf7f2 TL |
281 | set_target_properties(cls_cas PROPERTIES |
282 | VERSION "1.0.0" | |
283 | SOVERSION "1" | |
284 | INSTALL_RPATH "" | |
285 | CXX_VISIBILITY_PRESET hidden) | |
286 | install(TARGETS cls_cas DESTINATION ${cls_dir}) | |
287 | ||
f67539c2 | 288 | |
9f95a23c TL |
289 | |
290 | #cls_queue | |
291 | set(cls_queue_srcs | |
292 | queue/cls_queue.cc | |
293 | queue/cls_queue_src.cc | |
294 | ${CMAKE_SOURCE_DIR}/src/common/ceph_json.cc) | |
295 | add_library(cls_queue SHARED ${cls_queue_srcs}) | |
296 | set_target_properties(cls_queue PROPERTIES | |
297 | VERSION "1.0.0" | |
298 | SOVERSION "1" | |
299 | INSTALL_RPATH "" | |
300 | CXX_VISIBILITY_PRESET hidden) | |
301 | install(TARGETS cls_queue DESTINATION ${cls_dir}) | |
302 | ||
303 | set(cls_queue_client_srcs | |
304 | queue/cls_queue_client.cc) | |
305 | add_library(cls_queue_client STATIC ${cls_queue_client_srcs}) | |
306 | ||
307 | # cls_rgw_gc | |
308 | if (WITH_RADOSGW) | |
309 | set(cls_rgw_gc_srcs | |
310 | rgw_gc/cls_rgw_gc.cc | |
311 | queue/cls_queue_src.cc | |
312 | ${CMAKE_SOURCE_DIR}/src/common/ceph_json.cc) | |
313 | add_library(cls_rgw_gc SHARED ${cls_rgw_gc_srcs}) | |
1e59de90 TL |
314 | target_include_directories(cls_rgw_gc |
315 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw/driver/rados" | |
316 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw" | |
317 | PUBLIC "${CMAKE_SOURCE_DIR}/src/spawn/include") | |
9f95a23c TL |
318 | set_target_properties(cls_rgw_gc PROPERTIES |
319 | VERSION "1.0.0" | |
320 | SOVERSION "1" | |
321 | INSTALL_RPATH "" | |
322 | CXX_VISIBILITY_PRESET hidden) | |
323 | install(TARGETS cls_rgw_gc DESTINATION ${cls_dir}) | |
324 | ||
325 | set(cls_rgw_gc_client_srcs | |
326 | rgw_gc/cls_rgw_gc_client.cc) | |
327 | add_library(cls_rgw_gc_client STATIC ${cls_rgw_gc_client_srcs}) | |
1e59de90 TL |
328 | target_include_directories(cls_rgw_gc_client |
329 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw/driver/rados" | |
330 | PUBLIC "${CMAKE_SOURCE_DIR}/src/rgw" | |
331 | PUBLIC "${CMAKE_SOURCE_DIR}/src/spawn/include") | |
9f95a23c | 332 | endif (WITH_RADOSGW) |
f67539c2 TL |
333 | |
334 | ||
335 | #cls_2pc_queue | |
336 | set(cls_2pc_queue_srcs | |
337 | 2pc_queue/cls_2pc_queue.cc | |
338 | queue/cls_queue_src.cc | |
339 | ${CMAKE_SOURCE_DIR}/src/common/ceph_json.cc) | |
340 | add_library(cls_2pc_queue SHARED ${cls_2pc_queue_srcs}) | |
341 | set_target_properties(cls_2pc_queue PROPERTIES | |
342 | VERSION "1.0.0" | |
343 | SOVERSION "1" | |
344 | INSTALL_RPATH "" | |
345 | CXX_VISIBILITY_PRESET hidden) | |
346 | install(TARGETS cls_2pc_queue DESTINATION ${cls_dir}) | |
347 | set(cls_2pc_queue_client_srcs | |
348 | 2pc_queue/cls_2pc_queue_client.cc) | |
349 | add_library(cls_2pc_queue_client STATIC ${cls_2pc_queue_client_srcs}) | |
350 | ||
351 | ||
352 | add_subdirectory(cmpomap) | |
353 | ||
354 | # cls_fifo | |
355 | set(cls_fifo_srcs fifo/cls_fifo.cc) | |
356 | add_library(cls_fifo SHARED ${cls_fifo_srcs}) | |
357 | set_target_properties(cls_fifo PROPERTIES | |
358 | VERSION "1.0.0" | |
359 | SOVERSION "1" | |
360 | INSTALL_RPATH "" | |
361 | CXX_VISIBILITY_PRESET hidden) | |
1e59de90 | 362 | target_link_libraries(cls_fifo fmt) |
f67539c2 | 363 | install(TARGETS cls_fifo DESTINATION ${cls_dir}) |
20effc67 TL |
364 | |
365 | # cls_test_remote_reads | |
366 | set(cls_test_remote_reads_srcs test_remote_reads/cls_test_remote_reads.cc) | |
367 | add_library(cls_test_remote_reads SHARED ${cls_test_remote_reads_srcs}) | |
368 | set_target_properties(cls_test_remote_reads PROPERTIES | |
369 | VERSION "1.0.0" | |
370 | SOVERSION "1" | |
371 | INSTALL_RPATH "" | |
372 | CXX_VISIBILITY_PRESET hidden) | |
373 | install(TARGETS cls_test_remote_reads DESTINATION ${cls_dir}) |