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