648db22b |
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=['zdict.h'], |
69 | headers=subdir_glob([ |
70 | ('dictBuilder', 'divsufsort.h'), |
71 | ('dictBuilder', 'cover.h'), |
72 | ]), |
73 | srcs=glob(['dictBuilder/*.c']), |
74 | deps=[':common'], |
75 | ) |
76 | |
77 | cxx_library( |
78 | name='compiler', |
79 | header_namespace='', |
80 | visibility=['PUBLIC'], |
81 | exported_headers=subdir_glob([ |
82 | ('common', 'compiler.h'), |
83 | ]), |
84 | ) |
85 | |
86 | cxx_library( |
87 | name='cpu', |
88 | header_namespace='', |
89 | visibility=['PUBLIC'], |
90 | exported_headers=subdir_glob([ |
91 | ('common', 'cpu.h'), |
92 | ]), |
93 | ) |
94 | |
95 | cxx_library( |
96 | name='bitstream', |
97 | header_namespace='', |
98 | visibility=['PUBLIC'], |
99 | exported_headers=subdir_glob([ |
100 | ('common', 'bitstream.h'), |
101 | ]), |
102 | ) |
103 | |
104 | cxx_library( |
105 | name='entropy', |
106 | header_namespace='', |
107 | visibility=['PUBLIC'], |
108 | exported_headers=subdir_glob([ |
109 | ('common', 'fse.h'), |
110 | ('common', 'huf.h'), |
111 | ]), |
112 | srcs=[ |
113 | 'common/entropy_common.c', |
114 | 'common/fse_decompress.c', |
115 | 'compress/fse_compress.c', |
116 | 'compress/huf_compress.c', |
117 | 'decompress/huf_decompress.c', |
118 | ], |
119 | deps=[ |
120 | ':debug', |
121 | ':bitstream', |
122 | ':compiler', |
123 | ':errors', |
124 | ':mem', |
125 | ], |
126 | ) |
127 | |
128 | cxx_library( |
129 | name='errors', |
130 | header_namespace='', |
131 | visibility=['PUBLIC'], |
132 | exported_headers=[ |
133 | 'zstd_errors.h', |
134 | 'common/error_private.h', |
135 | ] |
136 | srcs=['common/error_private.c'], |
137 | ) |
138 | |
139 | cxx_library( |
140 | name='mem', |
141 | header_namespace='', |
142 | visibility=['PUBLIC'], |
143 | exported_headers=subdir_glob([ |
144 | ('common', 'mem.h'), |
145 | ]), |
146 | ) |
147 | |
148 | cxx_library( |
149 | name='pool', |
150 | header_namespace='', |
151 | visibility=['PUBLIC'], |
152 | exported_headers=subdir_glob([ |
153 | ('common', 'pool.h'), |
154 | ]), |
155 | srcs=['common/pool.c'], |
156 | deps=[ |
157 | ':threading', |
158 | ':zstd_common', |
159 | ], |
160 | ) |
161 | |
162 | cxx_library( |
163 | name='threading', |
164 | header_namespace='', |
165 | visibility=['PUBLIC'], |
166 | exported_headers=subdir_glob([ |
167 | ('common', 'threading.h'), |
168 | ]), |
169 | srcs=['common/threading.c'], |
170 | exported_preprocessor_flags=[ |
171 | '-DZSTD_MULTITHREAD', |
172 | ], |
173 | exported_linker_flags=[ |
174 | '-pthread', |
175 | ], |
176 | ) |
177 | |
178 | cxx_library( |
179 | name='xxhash', |
180 | header_namespace='', |
181 | visibility=['PUBLIC'], |
182 | exported_headers=subdir_glob([ |
183 | ('common', 'xxhash.h'), |
184 | ]), |
185 | srcs=['common/xxhash.c'], |
186 | exported_preprocessor_flags=[ |
187 | '-DXXH_NAMESPACE=ZSTD_', |
188 | ], |
189 | ) |
190 | |
191 | cxx_library( |
192 | name='zstd_common', |
193 | header_namespace='', |
194 | visibility=['PUBLIC'], |
195 | exported_headers=subdir_glob([ |
196 | ('', 'zstd.h'), |
197 | ('common', 'zstd_internal.h'), |
198 | ]), |
199 | srcs=['common/zstd_common.c'], |
200 | deps=[ |
201 | ':compiler', |
202 | ':errors', |
203 | ':mem', |
204 | ], |
205 | ) |
206 | |
207 | cxx_library( |
208 | name='debug', |
209 | header_namespace='', |
210 | visibility=['PUBLIC'], |
211 | exported_headers=subdir_glob([ |
212 | ('common', 'debug.h'), |
213 | ]), |
214 | srcs=['common/debug.c'], |
215 | ) |
216 | |
217 | cxx_library( |
218 | name='common', |
219 | deps=[ |
220 | ':debug', |
221 | ':bitstream', |
222 | ':compiler', |
223 | ':cpu', |
224 | ':entropy', |
225 | ':errors', |
226 | ':mem', |
227 | ':pool', |
228 | ':threading', |
229 | ':xxhash', |
230 | ':zstd_common', |
231 | ] |
232 | ) |