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