1cxx_binary(
2    name='zstd',
3    headers=glob(['*.h'], excludes=['datagen.h', 'platform.h', 'util.h']),
4    srcs=glob(['*.c'], excludes=['datagen.c']),
5    deps=[
6        ':datagen',
7        ':util',
8        '//lib:zstd',
9        '//lib:zdict',
10        '//lib:mem',
11        '//lib:xxhash',
12    ],
13    preprocessor_flags=[
14        '-DZSTD_GZCOMPRESS',
15        '-DZSTD_GZDECOMPRESS',
16        '-DZSTD_LZMACOMPRESS',
17        '-DZSTD_LZMADECOMPRES',
18        '-DZSTD_LZ4COMPRESS',
19        '-DZSTD_LZ4DECOMPRES',
20    ],
21    linker_flags=[
22        '-lz',
23        '-llzma',
24        '-llz4',
25    ],
26)
27
28cxx_library(
29    name='datagen',
30    visibility=['PUBLIC'],
31    header_namespace='',
32    exported_headers=['datagen.h'],
33    srcs=['datagen.c'],
34    deps=['//lib:mem'],
35)
36
37
38cxx_library(
39    name='util',
40    visibility=['PUBLIC'],
41    header_namespace='',
42    exported_headers=['util.h', 'platform.h'],
43    deps=['//lib:mem'],
44)
45