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