]> git.proxmox.com Git - ceph.git/blame - ceph/src/cls/CMakeLists.txt
update sources to 12.2.8
[ceph.git] / ceph / src / cls / CMakeLists.txt
CommitLineData
7c673cae
FG
1## Rados object classes
2
3set(cls_dir ${CMAKE_INSTALL_LIBDIR}/rados-classes)
7c673cae
FG
4
5# cls_sdk
6add_library(cls_sdk SHARED sdk/cls_sdk.cc)
7set_target_properties(cls_sdk PROPERTIES VERSION "1.0.0" SOVERSION "1")
8install(TARGETS cls_sdk DESTINATION ${cls_dir})
9
10# cls_hello
11set(cls_hello_srcs hello/cls_hello.cc)
12add_library(cls_hello SHARED ${cls_hello_srcs})
13set_target_properties(cls_hello PROPERTIES
14 VERSION "1.0.0"
15 SOVERSION "1"
16 INSTALL_RPATH "")
17install(TARGETS cls_hello DESTINATION ${cls_dir})
7c673cae
FG
18
19# cls_numops
20set(cls_numops_srcs numops/cls_numops.cc)
21add_library(cls_numops SHARED ${cls_numops_srcs})
22set_target_properties(cls_numops PROPERTIES
23 VERSION "1.0.0"
24 SOVERSION "1"
25 INSTALL_RPATH "")
26install(TARGETS cls_numops DESTINATION ${cls_dir})
27
28set(cls_numops_client_srcs numops/cls_numops_client.cc)
29add_library(cls_numops_client STATIC ${cls_numops_client_srcs})
30
7c673cae
FG
31
32# cls_rbd
33if (WITH_RBD)
34 set(cls_rbd_srcs rbd/cls_rbd.cc rbd/cls_rbd_types.cc)
35 add_library(cls_rbd SHARED ${cls_rbd_srcs})
36 set_target_properties(cls_rbd PROPERTIES
37 VERSION "1.0.0"
38 SOVERSION "1"
39 INSTALL_RPATH "")
40 install(TARGETS cls_rbd DESTINATION ${cls_dir})
41
42 set(cls_rbd_client_srcs rbd/cls_rbd_client.cc rbd/cls_rbd_types.cc)
43 add_library(cls_rbd_client STATIC ${cls_rbd_client_srcs})
44 target_link_libraries(cls_rbd_client cls_lock_client)
45
7c673cae
FG
46endif (WITH_RBD)
47
48# cls_lock
49set(cls_lock_srcs lock/cls_lock.cc)
50add_library(cls_lock SHARED ${cls_lock_srcs})
51set_target_properties(cls_lock PROPERTIES
52 VERSION "1.0.0"
53 SOVERSION "1"
54 INSTALL_RPATH "")
55install(TARGETS cls_lock DESTINATION ${cls_dir})
56
57set(cls_lock_client_srcs
58 lock/cls_lock_client.cc
59 lock/cls_lock_types.cc
60 lock/cls_lock_ops.cc)
61add_library(cls_lock_client STATIC ${cls_lock_client_srcs})
62
7c673cae
FG
63
64# cls_refcount
65set(cls_refcount_srcs
66 refcount/cls_refcount.cc
67 refcount/cls_refcount_ops.cc
68 ${CMAKE_SOURCE_DIR}/src/common/ceph_json.cc)
69add_library(cls_refcount SHARED ${cls_refcount_srcs})
70target_link_libraries(cls_refcount json_spirit)
71set_target_properties(cls_refcount PROPERTIES
72 VERSION "1.0.0"
73 SOVERSION "1"
74 INSTALL_RPATH "")
75install(TARGETS cls_refcount DESTINATION ${cls_dir})
76
77set(cls_refcount_client_srcs
78 refcount/cls_refcount_client.cc
79 refcount/cls_refcount_ops.cc)
80add_library(cls_refcount_client STATIC ${cls_refcount_client_srcs})
81
7c673cae
FG
82
83# cls_version
84set(cls_version_srcs version/cls_version.cc)
85add_library(cls_version SHARED ${cls_version_srcs})
86set_target_properties(cls_version PROPERTIES
87 VERSION "1.0.0"
88 SOVERSION "1"
89 INSTALL_RPATH "")
90install(TARGETS cls_version DESTINATION ${cls_dir})
91
92set(cls_version_client_srcs
93 version/cls_version_client.cc
94 version/cls_version_types.cc)
95add_library(cls_version_client STATIC ${cls_version_client_srcs})
96
7c673cae
FG
97
98# cls_log
99set(cls_log_srcs log/cls_log.cc)
100add_library(cls_log SHARED ${cls_log_srcs})
101set_target_properties(cls_log PROPERTIES
102 VERSION "1.0.0"
103 SOVERSION "1"
104 INSTALL_RPATH "")
105install(TARGETS cls_log DESTINATION ${cls_dir})
106
107set(cls_log_client_srcs log/cls_log_client.cc)
108add_library(cls_log_client STATIC ${cls_log_client_srcs})
109
7c673cae
FG
110
111# cls_statelog
112set(cls_statelog_srcs statelog/cls_statelog.cc)
113add_library(cls_statelog SHARED ${cls_statelog_srcs})
114set_target_properties(cls_statelog PROPERTIES
115 VERSION "1.0.0"
116 SOVERSION "1"
117 INSTALL_RPATH "")
118install(TARGETS cls_statelog DESTINATION ${cls_dir})
119
120set(cls_statelog_client_srcs statelog/cls_statelog_client.cc)
121add_library(cls_statelog_client STATIC ${cls_statelog_client_srcs})
122
7c673cae
FG
123
124# cls_timeindex
125set(cls_timeindex_srcs timeindex/cls_timeindex.cc)
126add_library(cls_timeindex SHARED ${cls_timeindex_srcs})
127set_target_properties(cls_timeindex PROPERTIES
128 VERSION "1.0.0"
129 SOVERSION "1"
130 INSTALL_RPATH "")
131install(TARGETS cls_timeindex DESTINATION ${cls_dir})
132
133set(cls_timeindex_client_srcs timeindex/cls_timeindex_client.cc)
134add_library(cls_timeindex_client STATIC ${cls_timeindex_client_srcs})
135
7c673cae
FG
136
137# cls_replica_log
138set(cls_replica_log_srcs replica_log/cls_replica_log.cc)
139add_library(cls_replica_log SHARED ${cls_replica_log_srcs})
140set_target_properties(cls_replica_log PROPERTIES
141 VERSION "1.0.0"
142 SOVERSION "1"
143 INSTALL_RPATH "")
144install(TARGETS cls_replica_log DESTINATION ${cls_dir})
145
146set(cls_replica_log_client_srcs
147 replica_log/cls_replica_log_types.cc
148 replica_log/cls_replica_log_ops.cc
149 replica_log/cls_replica_log_client.cc)
150add_library(cls_replica_log_client STATIC ${cls_replica_log_client_srcs})
151
152list(APPEND cls_embedded_srcs ${cls_replica_log_srcs} ${cls_replica_log_client_srcs})
153
154# cls_user
155set(cls_user_srcs user/cls_user.cc)
156add_library(cls_user SHARED ${cls_user_srcs})
157set_target_properties(cls_user PROPERTIES
158 VERSION "1.0.0"
159 SOVERSION "1"
160 INSTALL_RPATH "")
161install(TARGETS cls_user DESTINATION ${cls_dir})
162
163set(cls_user_client_srcs
164 user/cls_user_client.cc
165 user/cls_user_types.cc
166 user/cls_user_ops.cc)
167add_library(cls_user_client STATIC ${cls_user_client_srcs})
168
7c673cae
FG
169
170# cls_journal
171set(cls_journal_srcs
172 journal/cls_journal.cc
173 journal/cls_journal_types.cc)
174add_library(cls_journal SHARED ${cls_journal_srcs})
175set_target_properties(cls_journal PROPERTIES
176 VERSION "1.0.0"
177 SOVERSION "1"
178 INSTALL_RPATH "")
179install(TARGETS cls_journal DESTINATION ${cls_dir})
180
181set(cls_journal_client_srcs
182 journal/cls_journal_client.cc
183 journal/cls_journal_types.cc)
184add_library(cls_journal_client STATIC ${cls_journal_client_srcs})
185
7c673cae
FG
186
187# cls_rgw
188if (WITH_RADOSGW)
189 set(cls_rgw_srcs
190 rgw/cls_rgw.cc
191 rgw/cls_rgw_ops.cc
192 rgw/cls_rgw_types.cc
193 ${CMAKE_SOURCE_DIR}/src/common/ceph_json.cc)
194 add_library(cls_rgw SHARED ${cls_rgw_srcs})
195 target_link_libraries(cls_rgw json_spirit)
196 set_target_properties(cls_rgw PROPERTIES
197 VERSION "1.0.0"
198 SOVERSION "1"
199 INSTALL_RPATH "")
200 install(TARGETS cls_rgw DESTINATION ${cls_dir})
201
202 set(cls_rgw_client_srcs
203 rgw/cls_rgw_client.cc
204 rgw/cls_rgw_types.cc
205 rgw/cls_rgw_ops.cc)
206 add_library(cls_rgw_client STATIC ${cls_rgw_client_srcs})
207
7c673cae
FG
208endif (WITH_RADOSGW)
209
210# cls_cephfs
211if (WITH_CEPHFS)
212 set(cls_cephfs_srcs
213 cephfs/cls_cephfs.cc)
214 add_library(cls_cephfs SHARED ${cls_cephfs_srcs})
215 set_target_properties(cls_cephfs PROPERTIES
216 VERSION "1.0.0"
217 SOVERSION "1"
218 INSTALL_RPATH "")
219 install(TARGETS cls_cephfs DESTINATION ${cls_dir})
220
221 set(cls_cephfs_client_srcs
222 cephfs/cls_cephfs_client.cc)
223 add_library(cls_cephfs_client STATIC ${cls_cephfs_client_srcs})
224
7c673cae
FG
225endif (WITH_CEPHFS)
226
227# cls_lua
228set(cls_lua_srcs
229 lua/cls_lua.cc
230 lua/lua_bufferlist.cc)
231add_library(cls_lua SHARED ${cls_lua_srcs})
232set_target_properties(cls_lua PROPERTIES
233 VERSION "1.0.0"
234 SOVERSION "1"
235 INSTALL_RPATH "")
236install(TARGETS cls_lua DESTINATION ${cls_dir})
237target_link_libraries(cls_lua
238 liblua
239 json_spirit)
240
241set(cls_lua_client_srcs
242 lua/cls_lua_client.cc)
243add_library(cls_lua_client STATIC ${cls_lua_client_srcs})
244