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