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