]> git.proxmox.com Git - ceph.git/blob - ceph/src/zstd/lib/BUCK
import 15.2.0 Octopus source
[ceph.git] / ceph / src / zstd / lib / BUCK
1 cxx_library(
2 name='zstd',
3 header_namespace='',
4 exported_headers=['zstd.h'],
5 visibility=['PUBLIC'],
6 deps=[
7 ':common',
8 ':compress',
9 ':decompress',
10 ':deprecated',
11 ],
12 )
13
14 cxx_library(
15 name='compress',
16 header_namespace='',
17 visibility=['PUBLIC'],
18 exported_headers=subdir_glob([
19 ('compress', 'zstd*.h'),
20 ]),
21 srcs=glob(['compress/zstd*.c', 'compress/hist.c']),
22 deps=[':common'],
23 )
24
25 cxx_library(
26 name='decompress',
27 header_namespace='',
28 visibility=['PUBLIC'],
29 headers=subdir_glob([
30 ('decompress', '*_impl.h'),
31 ]),
32 srcs=glob(['decompress/zstd*.c']),
33 deps=[
34 ':common',
35 ':legacy',
36 ],
37 )
38
39 cxx_library(
40 name='deprecated',
41 header_namespace='',
42 visibility=['PUBLIC'],
43 exported_headers=subdir_glob([
44 ('deprecated', '*.h'),
45 ]),
46 srcs=glob(['deprecated/*.c']),
47 deps=[':common'],
48 )
49
50 cxx_library(
51 name='legacy',
52 header_namespace='',
53 visibility=['PUBLIC'],
54 exported_headers=subdir_glob([
55 ('legacy', '*.h'),
56 ]),
57 srcs=glob(['legacy/*.c']),
58 deps=[':common'],
59 exported_preprocessor_flags=[
60 '-DZSTD_LEGACY_SUPPORT=4',
61 ],
62 )
63
64 cxx_library(
65 name='zdict',
66 header_namespace='',
67 visibility=['PUBLIC'],
68 exported_headers=subdir_glob([
69 ('dictBuilder', 'zdict.h'),
70 ]),
71 headers=subdir_glob([
72 ('dictBuilder', 'divsufsort.h'),
73 ('dictBuilder', 'cover.h'),
74 ]),
75 srcs=glob(['dictBuilder/*.c']),
76 deps=[':common'],
77 )
78
79 cxx_library(
80 name='compiler',
81 header_namespace='',
82 visibility=['PUBLIC'],
83 exported_headers=subdir_glob([
84 ('common', 'compiler.h'),
85 ]),
86 )
87
88 cxx_library(
89 name='cpu',
90 header_namespace='',
91 visibility=['PUBLIC'],
92 exported_headers=subdir_glob([
93 ('common', 'cpu.h'),
94 ]),
95 )
96
97 cxx_library(
98 name='bitstream',
99 header_namespace='',
100 visibility=['PUBLIC'],
101 exported_headers=subdir_glob([
102 ('common', 'bitstream.h'),
103 ]),
104 )
105
106 cxx_library(
107 name='entropy',
108 header_namespace='',
109 visibility=['PUBLIC'],
110 exported_headers=subdir_glob([
111 ('common', 'fse.h'),
112 ('common', 'huf.h'),
113 ]),
114 srcs=[
115 'common/entropy_common.c',
116 'common/fse_decompress.c',
117 'compress/fse_compress.c',
118 'compress/huf_compress.c',
119 'decompress/huf_decompress.c',
120 ],
121 deps=[
122 ':debug',
123 ':bitstream',
124 ':compiler',
125 ':errors',
126 ':mem',
127 ],
128 )
129
130 cxx_library(
131 name='errors',
132 header_namespace='',
133 visibility=['PUBLIC'],
134 exported_headers=subdir_glob([
135 ('common', 'error_private.h'),
136 ('common', 'zstd_errors.h'),
137 ]),
138 srcs=['common/error_private.c'],
139 )
140
141 cxx_library(
142 name='mem',
143 header_namespace='',
144 visibility=['PUBLIC'],
145 exported_headers=subdir_glob([
146 ('common', 'mem.h'),
147 ]),
148 )
149
150 cxx_library(
151 name='pool',
152 header_namespace='',
153 visibility=['PUBLIC'],
154 exported_headers=subdir_glob([
155 ('common', 'pool.h'),
156 ]),
157 srcs=['common/pool.c'],
158 deps=[
159 ':threading',
160 ':zstd_common',
161 ],
162 )
163
164 cxx_library(
165 name='threading',
166 header_namespace='',
167 visibility=['PUBLIC'],
168 exported_headers=subdir_glob([
169 ('common', 'threading.h'),
170 ]),
171 srcs=['common/threading.c'],
172 exported_preprocessor_flags=[
173 '-DZSTD_MULTITHREAD',
174 ],
175 exported_linker_flags=[
176 '-pthread',
177 ],
178 )
179
180 cxx_library(
181 name='xxhash',
182 header_namespace='',
183 visibility=['PUBLIC'],
184 exported_headers=subdir_glob([
185 ('common', 'xxhash.h'),
186 ]),
187 srcs=['common/xxhash.c'],
188 exported_preprocessor_flags=[
189 '-DXXH_NAMESPACE=ZSTD_',
190 ],
191 )
192
193 cxx_library(
194 name='zstd_common',
195 header_namespace='',
196 visibility=['PUBLIC'],
197 exported_headers=subdir_glob([
198 ('', 'zstd.h'),
199 ('common', 'zstd_internal.h'),
200 ]),
201 srcs=['common/zstd_common.c'],
202 deps=[
203 ':compiler',
204 ':errors',
205 ':mem',
206 ],
207 )
208
209 cxx_library(
210 name='debug',
211 header_namespace='',
212 visibility=['PUBLIC'],
213 exported_headers=subdir_glob([
214 ('common', 'debug.h'),
215 ]),
216 srcs=['common/debug.c'],
217 )
218
219 cxx_library(
220 name='common',
221 deps=[
222 ':debug',
223 ':bitstream',
224 ':compiler',
225 ':cpu',
226 ':entropy',
227 ':errors',
228 ':mem',
229 ':pool',
230 ':threading',
231 ':xxhash',
232 ':zstd_common',
233 ]
234 )