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