koffi 2.3.6-beta.6 → 2.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/package.json +2 -2
  3. package/src/cnoke/cnoke.js +3 -7
  4. package/src/cnoke/src/builder.js +9 -6
  5. package/src/cnoke/src/index.js +2 -2
  6. package/src/koffi/build/2.3.7/koffi_darwin_arm64/koffi.node +0 -0
  7. package/src/koffi/build/2.3.7/koffi_darwin_x64/koffi.node +0 -0
  8. package/src/koffi/build/2.3.7/koffi_freebsd_arm64/koffi.node +0 -0
  9. package/src/koffi/build/2.3.7/koffi_freebsd_ia32/koffi.node +0 -0
  10. package/src/koffi/build/2.3.7/koffi_freebsd_x64/koffi.node +0 -0
  11. package/src/koffi/build/2.3.7/koffi_linux_arm32hf/koffi.node +0 -0
  12. package/src/koffi/build/2.3.7/koffi_linux_arm64/koffi.node +0 -0
  13. package/src/koffi/build/2.3.7/koffi_linux_ia32/koffi.node +0 -0
  14. package/src/koffi/build/2.3.7/koffi_linux_riscv64hf64/koffi.node +0 -0
  15. package/src/koffi/build/2.3.7/koffi_linux_x64/koffi.node +0 -0
  16. package/src/koffi/build/2.3.7/koffi_openbsd_ia32/koffi.node +0 -0
  17. package/src/koffi/build/2.3.7/koffi_openbsd_x64/koffi.node +0 -0
  18. package/src/koffi/build/2.3.7/koffi_win32_arm64/koffi.node +0 -0
  19. package/src/koffi/build/2.3.7/koffi_win32_ia32/koffi.node +0 -0
  20. package/src/koffi/build/2.3.7/koffi_win32_x64/koffi.node +0 -0
  21. package/src/koffi/src/ffi.cc +2 -2
  22. package/src/koffi/src/index.d.ts +2 -2
  23. package/src/koffi/src/index.js +1 -0
  24. package/src/koffi/build/2.3.6-beta.6/koffi_darwin_arm64/koffi.node +0 -0
  25. package/src/koffi/build/2.3.6-beta.6/koffi_darwin_x64/koffi.node +0 -0
  26. package/src/koffi/build/2.3.6-beta.6/koffi_freebsd_arm64/koffi.node +0 -0
  27. package/src/koffi/build/2.3.6-beta.6/koffi_freebsd_ia32/koffi.node +0 -0
  28. package/src/koffi/build/2.3.6-beta.6/koffi_freebsd_x64/koffi.node +0 -0
  29. package/src/koffi/build/2.3.6-beta.6/koffi_linux_arm32hf/koffi.node +0 -0
  30. package/src/koffi/build/2.3.6-beta.6/koffi_linux_arm64/koffi.node +0 -0
  31. package/src/koffi/build/2.3.6-beta.6/koffi_linux_ia32/koffi.node +0 -0
  32. package/src/koffi/build/2.3.6-beta.6/koffi_linux_riscv64hf64/koffi.node +0 -0
  33. package/src/koffi/build/2.3.6-beta.6/koffi_linux_x64/koffi.node +0 -0
  34. package/src/koffi/build/2.3.6-beta.6/koffi_openbsd_ia32/koffi.node +0 -0
  35. package/src/koffi/build/2.3.6-beta.6/koffi_openbsd_x64/koffi.node +0 -0
  36. package/src/koffi/build/2.3.6-beta.6/koffi_win32_arm64/koffi.node +0 -0
  37. package/src/koffi/build/2.3.6-beta.6/koffi_win32_arm64/koffi.pdb +0 -0
  38. package/src/koffi/build/2.3.6-beta.6/koffi_win32_ia32/koffi.node +0 -0
  39. package/src/koffi/build/2.3.6-beta.6/koffi_win32_ia32/koffi.pdb +0 -0
  40. package/src/koffi/build/2.3.6-beta.6/koffi_win32_x64/koffi.node +0 -0
  41. package/src/koffi/build/2.3.6-beta.6/koffi_win32_x64/koffi.pdb +0 -0
  42. package/vendor/brotli/BUILD +0 -144
  43. package/vendor/brotli/CMakeLists.txt +0 -421
  44. package/vendor/brotli/CONTRIBUTING.md +0 -27
  45. package/vendor/brotli/LICENSE +0 -19
  46. package/vendor/brotli/MANIFEST.in +0 -17
  47. package/vendor/brotli/Makefile +0 -55
  48. package/vendor/brotli/Makefile.am +0 -38
  49. package/vendor/brotli/README +0 -15
  50. package/vendor/brotli/README.md +0 -104
  51. package/vendor/brotli/WORKSPACE +0 -21
  52. package/vendor/brotli/bootstrap +0 -35
  53. package/vendor/brotli/c/common/constants.c +0 -15
  54. package/vendor/brotli/c/common/constants.h +0 -200
  55. package/vendor/brotli/c/common/context.c +0 -156
  56. package/vendor/brotli/c/common/context.h +0 -113
  57. package/vendor/brotli/c/common/dictionary.c +0 -5914
  58. package/vendor/brotli/c/common/dictionary.h +0 -64
  59. package/vendor/brotli/c/common/platform.c +0 -22
  60. package/vendor/brotli/c/common/platform.h +0 -596
  61. package/vendor/brotli/c/common/transform.c +0 -291
  62. package/vendor/brotli/c/common/transform.h +0 -85
  63. package/vendor/brotli/c/common/version.h +0 -26
  64. package/vendor/brotli/c/dec/bit_reader.c +0 -76
  65. package/vendor/brotli/c/dec/bit_reader.h +0 -351
  66. package/vendor/brotli/c/dec/decode.c +0 -2608
  67. package/vendor/brotli/c/dec/huffman.c +0 -339
  68. package/vendor/brotli/c/dec/huffman.h +0 -121
  69. package/vendor/brotli/c/dec/prefix.h +0 -732
  70. package/vendor/brotli/c/dec/state.c +0 -159
  71. package/vendor/brotli/c/dec/state.h +0 -365
  72. package/vendor/brotli/c/enc/backward_references.c +0 -145
  73. package/vendor/brotli/c/enc/backward_references.h +0 -39
  74. package/vendor/brotli/c/enc/backward_references_hq.c +0 -843
  75. package/vendor/brotli/c/enc/backward_references_hq.h +0 -95
  76. package/vendor/brotli/c/enc/backward_references_inc.h +0 -163
  77. package/vendor/brotli/c/enc/bit_cost.c +0 -35
  78. package/vendor/brotli/c/enc/bit_cost.h +0 -63
  79. package/vendor/brotli/c/enc/bit_cost_inc.h +0 -127
  80. package/vendor/brotli/c/enc/block_encoder_inc.h +0 -34
  81. package/vendor/brotli/c/enc/block_splitter.c +0 -194
  82. package/vendor/brotli/c/enc/block_splitter.h +0 -51
  83. package/vendor/brotli/c/enc/block_splitter_inc.h +0 -440
  84. package/vendor/brotli/c/enc/brotli_bit_stream.c +0 -1314
  85. package/vendor/brotli/c/enc/brotli_bit_stream.h +0 -84
  86. package/vendor/brotli/c/enc/cluster.c +0 -56
  87. package/vendor/brotli/c/enc/cluster.h +0 -48
  88. package/vendor/brotli/c/enc/cluster_inc.h +0 -320
  89. package/vendor/brotli/c/enc/command.c +0 -28
  90. package/vendor/brotli/c/enc/command.h +0 -190
  91. package/vendor/brotli/c/enc/compress_fragment.c +0 -790
  92. package/vendor/brotli/c/enc/compress_fragment.h +0 -61
  93. package/vendor/brotli/c/enc/compress_fragment_two_pass.c +0 -645
  94. package/vendor/brotli/c/enc/compress_fragment_two_pass.h +0 -54
  95. package/vendor/brotli/c/enc/dictionary_hash.c +0 -1846
  96. package/vendor/brotli/c/enc/dictionary_hash.h +0 -25
  97. package/vendor/brotli/c/enc/encode.c +0 -1927
  98. package/vendor/brotli/c/enc/encoder_dict.c +0 -33
  99. package/vendor/brotli/c/enc/encoder_dict.h +0 -43
  100. package/vendor/brotli/c/enc/entropy_encode.c +0 -503
  101. package/vendor/brotli/c/enc/entropy_encode.h +0 -122
  102. package/vendor/brotli/c/enc/entropy_encode_static.h +0 -539
  103. package/vendor/brotli/c/enc/fast_log.c +0 -105
  104. package/vendor/brotli/c/enc/fast_log.h +0 -66
  105. package/vendor/brotli/c/enc/find_match_length.h +0 -79
  106. package/vendor/brotli/c/enc/hash.h +0 -488
  107. package/vendor/brotli/c/enc/hash_composite_inc.h +0 -125
  108. package/vendor/brotli/c/enc/hash_forgetful_chain_inc.h +0 -293
  109. package/vendor/brotli/c/enc/hash_longest_match64_inc.h +0 -267
  110. package/vendor/brotli/c/enc/hash_longest_match_inc.h +0 -262
  111. package/vendor/brotli/c/enc/hash_longest_match_quickly_inc.h +0 -266
  112. package/vendor/brotli/c/enc/hash_rolling_inc.h +0 -212
  113. package/vendor/brotli/c/enc/hash_to_binary_tree_inc.h +0 -329
  114. package/vendor/brotli/c/enc/histogram.c +0 -100
  115. package/vendor/brotli/c/enc/histogram.h +0 -63
  116. package/vendor/brotli/c/enc/histogram_inc.h +0 -51
  117. package/vendor/brotli/c/enc/literal_cost.c +0 -175
  118. package/vendor/brotli/c/enc/literal_cost.h +0 -30
  119. package/vendor/brotli/c/enc/memory.c +0 -170
  120. package/vendor/brotli/c/enc/memory.h +0 -114
  121. package/vendor/brotli/c/enc/metablock.c +0 -663
  122. package/vendor/brotli/c/enc/metablock.h +0 -105
  123. package/vendor/brotli/c/enc/metablock_inc.h +0 -183
  124. package/vendor/brotli/c/enc/params.h +0 -46
  125. package/vendor/brotli/c/enc/prefix.h +0 -53
  126. package/vendor/brotli/c/enc/quality.h +0 -165
  127. package/vendor/brotli/c/enc/ringbuffer.h +0 -167
  128. package/vendor/brotli/c/enc/static_dict.c +0 -486
  129. package/vendor/brotli/c/enc/static_dict.h +0 -40
  130. package/vendor/brotli/c/enc/static_dict_lut.h +0 -5864
  131. package/vendor/brotli/c/enc/utf8_util.c +0 -85
  132. package/vendor/brotli/c/enc/utf8_util.h +0 -32
  133. package/vendor/brotli/c/enc/write_bits.h +0 -87
  134. package/vendor/brotli/c/include/brotli/decode.h +0 -344
  135. package/vendor/brotli/c/include/brotli/encode.h +0 -448
  136. package/vendor/brotli/c/include/brotli/port.h +0 -288
  137. package/vendor/brotli/c/include/brotli/types.h +0 -83
  138. package/vendor/brotli/c/tools/brotli.c +0 -1116
  139. package/vendor/brotli/c/tools/brotli.md +0 -107
  140. package/vendor/brotli/compiler_config_setting.bzl +0 -28
  141. package/vendor/brotli/configure +0 -8
  142. package/vendor/brotli/configure-cmake +0 -318
  143. package/vendor/brotli/configure.ac +0 -14
  144. package/vendor/brotli/docs/brotli.1 +0 -132
  145. package/vendor/brotli/docs/constants.h.3 +0 -47
  146. package/vendor/brotli/docs/decode.h.3 +0 -415
  147. package/vendor/brotli/docs/encode.h.3 +0 -586
  148. package/vendor/brotli/docs/types.h.3 +0 -117
  149. package/vendor/brotli/premake5.lua +0 -78
  150. package/vendor/brotli/python/Makefile +0 -57
  151. package/vendor/brotli/python/README.md +0 -54
  152. package/vendor/brotli/python/_brotli.cc +0 -753
  153. package/vendor/brotli/python/bro.py +0 -160
  154. package/vendor/brotli/python/brotli.py +0 -56
  155. package/vendor/brotli/python/tests/__init__.py +0 -0
  156. package/vendor/brotli/python/tests/_test_utils.py +0 -112
  157. package/vendor/brotli/python/tests/bro_test.py +0 -102
  158. package/vendor/brotli/python/tests/compress_test.py +0 -41
  159. package/vendor/brotli/python/tests/compressor_test.py +0 -94
  160. package/vendor/brotli/python/tests/decompress_test.py +0 -42
  161. package/vendor/brotli/python/tests/decompressor_test.py +0 -59
  162. package/vendor/brotli/scripts/libbrotlicommon.pc.in +0 -11
  163. package/vendor/brotli/scripts/libbrotlidec.pc.in +0 -12
  164. package/vendor/brotli/scripts/libbrotlienc.pc.in +0 -12
  165. package/vendor/brotli/scripts/sources.lst +0 -104
  166. package/vendor/brotli/setup.cfg +0 -5
  167. package/vendor/brotli/setup.py +0 -293
  168. package/vendor/brotli/tests/Makefile +0 -17
  169. package/vendor/brotli/tests/compatibility_test.sh +0 -25
  170. package/vendor/brotli/tests/roundtrip_test.sh +0 -36
  171. package/vendor/brotli/tests/run-compatibility-test.cmake +0 -31
  172. package/vendor/brotli/tests/run-roundtrip-test.cmake +0 -36
  173. package/vendor/brotli/tests/testdata/empty +0 -0
  174. package/vendor/brotli/tests/testdata/empty.compressed +0 -1
  175. package/vendor/brotli/tests/testdata/ukkonooa +0 -1
  176. package/vendor/brotli/tests/testdata/ukkonooa.compressed +0 -0
  177. package/vendor/dragonbox/CMakeLists.txt +0 -123
  178. package/vendor/dragonbox/LICENSE-Apache2-LLVM +0 -218
  179. package/vendor/dragonbox/LICENSE-Boost +0 -23
  180. package/vendor/dragonbox/README.md +0 -277
  181. package/vendor/dragonbox/cmake/dragonboxConfig.cmake +0 -1
  182. package/vendor/dragonbox/include/dragonbox/dragonbox.h +0 -2674
  183. package/vendor/dragonbox/include/dragonbox/dragonbox_to_chars.h +0 -108
  184. package/vendor/dragonbox/other_files/Dragonbox.pdf +0 -0
  185. package/vendor/dragonbox/other_files/Dragonbox_old.pdf +0 -0
  186. package/vendor/dragonbox/other_files/milo_benchmark.png +0 -0
  187. package/vendor/dragonbox/other_files/unknown_win64_vc2019.html +0 -540
  188. package/vendor/dragonbox/other_files/unknown_win64_vc2019_randomdigit_time.png +0 -0
  189. package/vendor/dragonbox/source/dragonbox_to_chars.cpp +0 -303
  190. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/CMakeLists.txt +0 -24
  191. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/fp_to_chars.cpp +0 -238
  192. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/fp_to_chars.h +0 -95
  193. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/grisu_exact.h +0 -2666
  194. package/vendor/dragonbox/subproject/3rdparty/ryu/CMakeLists.txt +0 -16
  195. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/common.h +0 -114
  196. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s.c +0 -509
  197. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s_full_table.h +0 -367
  198. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s_intrinsics.h +0 -357
  199. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/digit_table.h +0 -35
  200. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s.c +0 -345
  201. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s_full_table.h +0 -55
  202. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s_intrinsics.h +0 -128
  203. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/ryu.h +0 -46
  204. package/vendor/dragonbox/subproject/3rdparty/schubfach/CMakeLists.txt +0 -22
  205. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_32.cc +0 -699
  206. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_32.h +0 -31
  207. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_64.cc +0 -1354
  208. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_64.h +0 -31
  209. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/example_shaded_plots.m +0 -68
  210. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/license.txt +0 -25
  211. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_distribution.m +0 -92
  212. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_distribution_prctile.m +0 -121
  213. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_histogram_shaded.m +0 -99
  214. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_shaded.m +0 -93
  215. package/vendor/dragonbox/subproject/benchmark/CMakeLists.txt +0 -65
  216. package/vendor/dragonbox/subproject/benchmark/include/benchmark.h +0 -40
  217. package/vendor/dragonbox/subproject/benchmark/matlab/plot_benchmarks.m +0 -22
  218. package/vendor/dragonbox/subproject/benchmark/matlab/plot_digit_benchmark.m +0 -78
  219. package/vendor/dragonbox/subproject/benchmark/matlab/plot_uniform_benchmark.m +0 -95
  220. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary32_clang.png +0 -0
  221. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary32_msvc.png +0 -0
  222. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary64_clang.png +0 -0
  223. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary64_msvc.png +0 -0
  224. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary32_clang.png +0 -0
  225. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary32_msvc.png +0 -0
  226. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary64_clang.png +0 -0
  227. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary64_msvc.png +0 -0
  228. package/vendor/dragonbox/subproject/benchmark/source/benchmark.cpp +0 -238
  229. package/vendor/dragonbox/subproject/benchmark/source/dragonbox.cpp +0 -30
  230. package/vendor/dragonbox/subproject/benchmark/source/grisu_exact.cpp +0 -36
  231. package/vendor/dragonbox/subproject/benchmark/source/ryu.cpp +0 -27
  232. package/vendor/dragonbox/subproject/benchmark/source/schubfach.cpp +0 -31
  233. package/vendor/dragonbox/subproject/common/CMakeLists.txt +0 -42
  234. package/vendor/dragonbox/subproject/common/include/best_rational_approx.h +0 -97
  235. package/vendor/dragonbox/subproject/common/include/big_uint.h +0 -218
  236. package/vendor/dragonbox/subproject/common/include/continued_fractions.h +0 -174
  237. package/vendor/dragonbox/subproject/common/include/good_rational_approx.h +0 -267
  238. package/vendor/dragonbox/subproject/common/include/random_float.h +0 -182
  239. package/vendor/dragonbox/subproject/common/include/rational_continued_fractions.h +0 -57
  240. package/vendor/dragonbox/subproject/common/source/big_uint.cpp +0 -602
  241. package/vendor/dragonbox/subproject/meta/CMakeLists.txt +0 -41
  242. package/vendor/dragonbox/subproject/meta/results/binary32_generated_cache.txt +0 -82
  243. package/vendor/dragonbox/subproject/meta/results/binary64_compressed_cache_error_table.txt +0 -10
  244. package/vendor/dragonbox/subproject/meta/results/binary64_generated_cache.txt +0 -623
  245. package/vendor/dragonbox/subproject/meta/source/generate_cache.cpp +0 -126
  246. package/vendor/dragonbox/subproject/meta/source/live_test.cpp +0 -81
  247. package/vendor/dragonbox/subproject/meta/source/perf_test.cpp +0 -104
  248. package/vendor/dragonbox/subproject/meta/source/sandbox.cpp +0 -20
  249. package/vendor/dragonbox/subproject/test/CMakeLists.txt +0 -70
  250. package/vendor/dragonbox/subproject/test/results/binary32.csv +0 -255
  251. package/vendor/dragonbox/subproject/test/results/binary64.csv +0 -2047
  252. package/vendor/dragonbox/subproject/test/results/plot_required_bits.m +0 -18
  253. package/vendor/dragonbox/subproject/test/source/test_all_shorter_interval_cases.cpp +0 -88
  254. package/vendor/dragonbox/subproject/test/source/uniform_random_test.cpp +0 -95
  255. package/vendor/dragonbox/subproject/test/source/verify_cache_precision.cpp +0 -338
  256. package/vendor/dragonbox/subproject/test/source/verify_compressed_cache.cpp +0 -154
  257. package/vendor/dragonbox/subproject/test/source/verify_fast_multiplication.cpp +0 -168
  258. package/vendor/dragonbox/subproject/test/source/verify_log_computation.cpp +0 -251
  259. package/vendor/dragonbox/subproject/test/source/verify_magic_division.cpp +0 -113
  260. package/vendor/miniz/ChangeLog.md +0 -239
  261. package/vendor/miniz/LICENSE +0 -22
  262. package/vendor/miniz/examples/example1.c +0 -105
  263. package/vendor/miniz/examples/example2.c +0 -164
  264. package/vendor/miniz/examples/example3.c +0 -269
  265. package/vendor/miniz/examples/example4.c +0 -102
  266. package/vendor/miniz/examples/example5.c +0 -327
  267. package/vendor/miniz/examples/example6.c +0 -166
  268. package/vendor/miniz/miniz.c +0 -7835
  269. package/vendor/miniz/miniz.h +0 -1422
  270. package/vendor/miniz/readme.md +0 -46
  271. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_arm64/koffi.exp +0 -0
  272. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_arm64/koffi.lib +0 -0
  273. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_ia32/koffi.exp +0 -0
  274. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_ia32/koffi.lib +0 -0
  275. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_x64/koffi.exp +0 -0
  276. /package/src/koffi/build/{2.3.6-beta.6 → 2.3.7}/koffi_win32_x64/koffi.lib +0 -0
@@ -1,421 +0,0 @@
1
- # Ubuntu 12.04 LTS has CMake 2.8.7, and is an important target since
2
- # several CI services, such as Travis and Drone, use it. Solaris 11
3
- # has 2.8.6, and it's not difficult to support if you already have to
4
- # support 2.8.7.
5
- cmake_minimum_required(VERSION 2.8.6)
6
-
7
- project(brotli C)
8
-
9
- if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
10
- message(STATUS "Setting build type to Release as none was specified.")
11
- set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build." FORCE)
12
- else()
13
- message(STATUS "Build type is '${CMAKE_BUILD_TYPE}'")
14
- endif()
15
-
16
- include(CheckCSourceCompiles)
17
- check_c_source_compiles(
18
- "#if defined(__EMSCRIPTEN__)
19
- int main() {return 0;}
20
- #endif"
21
- BROTLI_EMSCRIPTEN
22
- )
23
- if (BROTLI_EMSCRIPTEN)
24
- message("-- Compiler is EMSCRIPTEN")
25
- else()
26
- message("-- Compiler is not EMSCRIPTEN")
27
- endif()
28
-
29
- # If Brotli is being bundled in another project, we don't want to
30
- # install anything. However, we want to let people override this, so
31
- # we'll use the BROTLI_BUNDLED_MODE variable to let them do that; just
32
- # set it to OFF in your project before you add_subdirectory(brotli).
33
- get_directory_property(BROTLI_PARENT_DIRECTORY PARENT_DIRECTORY)
34
- if(NOT DEFINED BROTLI_BUNDLED_MODE)
35
- # Bundled mode hasn't been set one way or the other, set the default
36
- # depending on whether or not we are the top-level project.
37
- if(BROTLI_PARENT_DIRECTORY)
38
- set(BROTLI_BUNDLED_MODE ON)
39
- else()
40
- set(BROTLI_BUNDLED_MODE OFF)
41
- endif()
42
- endif()
43
- mark_as_advanced(BROTLI_BUNDLED_MODE)
44
-
45
- include(GNUInstallDirs)
46
-
47
- # Parse version information from common/version.h. Normally we would
48
- # define these values here and write them out to configuration file(s)
49
- # (i.e., config.h), but in this case we parse them from
50
- # common/version.h to be less intrusive.
51
- function(hex_to_dec HEXADECIMAL DECIMAL)
52
- string(TOUPPER "${HEXADECIMAL}" _tail)
53
- set(_decimal 0)
54
- string(LENGTH "${_tail}" _tail_length)
55
- while (_tail_length GREATER 0)
56
- math(EXPR _decimal "${_decimal} * 16")
57
- string(SUBSTRING "${_tail}" 0 1 _digit)
58
- string(SUBSTRING "${_tail}" 1 -1 _tail)
59
- if (_digit STREQUAL "A")
60
- math(EXPR _decimal "${_decimal} + 10")
61
- elseif (_digit STREQUAL "B")
62
- math(EXPR _decimal "${_decimal} + 11")
63
- elseif (_digit STREQUAL "C")
64
- math(EXPR _decimal "${_decimal} + 12")
65
- elseif (_digit STREQUAL "D")
66
- math(EXPR _decimal "${_decimal} + 13")
67
- elseif (_digit STREQUAL "E")
68
- math(EXPR _decimal "${_decimal} + 14")
69
- elseif (_digit STREQUAL "F")
70
- math(EXPR _decimal "${_decimal} + 15")
71
- else()
72
- math(EXPR _decimal "${_decimal} + ${_digit}")
73
- endif()
74
- string(LENGTH "${_tail}" _tail_length)
75
- endwhile()
76
- set(${DECIMAL} ${_decimal} PARENT_SCOPE)
77
- endfunction(hex_to_dec)
78
-
79
- # Version information
80
- file(STRINGS "c/common/version.h" _brotli_version_line REGEX "^#define BROTLI_VERSION (0x[0-9a-fA-F]+)$")
81
- string(REGEX REPLACE "^#define BROTLI_VERSION 0x([0-9a-fA-F]+)$" "\\1" _brotli_version_hex "${_brotli_version_line}")
82
- hex_to_dec("${_brotli_version_hex}" _brotli_version)
83
- math(EXPR BROTLI_VERSION_MAJOR "${_brotli_version} >> 24")
84
- math(EXPR BROTLI_VERSION_MINOR "(${_brotli_version} >> 12) & 4095")
85
- math(EXPR BROTLI_VERSION_PATCH "${_brotli_version} & 4095")
86
- set(BROTLI_VERSION "${BROTLI_VERSION_MAJOR}.${BROTLI_VERSION_MINOR}.${BROTLI_VERSION_PATCH}")
87
- mark_as_advanced(BROTLI_VERSION BROTLI_VERSION_MAJOR BROTLI_VERSION_MINOR BROTLI_VERSION_PATCH)
88
-
89
- # ABI Version information
90
- file(STRINGS "c/common/version.h" _brotli_abi_info_line REGEX "^#define BROTLI_ABI_VERSION (0x[0-9a-fA-F]+)$")
91
- string(REGEX REPLACE "^#define BROTLI_ABI_VERSION 0x([0-9a-fA-F]+)$" "\\1" _brotli_abi_info_hex "${_brotli_abi_info_line}")
92
- hex_to_dec("${_brotli_abi_info_hex}" _brotli_abi_info)
93
- math(EXPR BROTLI_ABI_CURRENT "${_brotli_abi_info} >> 24")
94
- math(EXPR BROTLI_ABI_REVISION "(${_brotli_abi_info} >> 12) & 4095")
95
- math(EXPR BROTLI_ABI_AGE "${_brotli_abi_info} & 4095")
96
- math(EXPR BROTLI_ABI_COMPATIBILITY "${BROTLI_ABI_CURRENT} - ${BROTLI_ABI_AGE}")
97
- mark_as_advanced(BROTLI_ABI_CURRENT BROTLI_ABI_REVISION BROTLI_ABI_AGE BROTLI_ABI_COMPATIBILITY)
98
-
99
- if (ENABLE_SANITIZER)
100
- set(CMAKE_C_FLAGS " ${CMAKE_C_FLAGS} -fsanitize=${ENABLE_SANITIZER}")
101
- set(CMAKE_CXX_FLAGS " ${CMAKE_CXX_FLAGS} -fsanitize=${ENABLE_SANITIZER}")
102
- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=${ENABLE_SANITIZER}")
103
-
104
- # By default, brotli depends on undefined behavior, but setting
105
- # BROTLI_BUILD_PORTABLE should result in a build which does not.
106
- if(ENABLE_SANITIZER STREQUAL "undefined")
107
- add_definitions(-DBROTLI_BUILD_PORTABLE)
108
- endif()
109
- endif ()
110
-
111
- include(CheckFunctionExists)
112
- set(LIBM_LIBRARY)
113
- CHECK_FUNCTION_EXISTS(log2 LOG2_RES)
114
- if(NOT LOG2_RES)
115
- set(orig_req_libs "${CMAKE_REQUIRED_LIBRARIES}")
116
- set(CMAKE_REQUIRED_LIBRARIES "${CMAKE_REQUIRED_LIBRARIES};m")
117
- CHECK_FUNCTION_EXISTS(log2 LOG2_LIBM_RES)
118
- if(LOG2_LIBM_RES)
119
- set(LIBM_LIBRARY "m")
120
- add_definitions(-DBROTLI_HAVE_LOG2=1)
121
- else()
122
- add_definitions(-DBROTLI_HAVE_LOG2=0)
123
- endif()
124
-
125
- set(CMAKE_REQUIRED_LIBRARIES "${orig_req_libs}")
126
- unset(LOG2_LIBM_RES)
127
- unset(orig_req_libs)
128
- else()
129
- add_definitions(-DBROTLI_HAVE_LOG2=1)
130
- endif()
131
- unset(LOG2_RES)
132
-
133
- set(BROTLI_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/c/include")
134
- mark_as_advanced(BROTLI_INCLUDE_DIRS)
135
-
136
- set(BROTLI_LIBRARIES_CORE brotlienc brotlidec brotlicommon)
137
- set(BROTLI_LIBRARIES ${BROTLI_LIBRARIES_CORE} ${LIBM_LIBRARY})
138
- mark_as_advanced(BROTLI_LIBRARIES)
139
-
140
- set(BROTLI_LIBRARIES_CORE_STATIC brotlienc-static brotlidec-static brotlicommon-static)
141
- set(BROTLI_LIBRARIES_STATIC ${BROTLI_LIBRARIES_CORE_STATIC} ${LIBM_LIBRARY})
142
- mark_as_advanced(BROTLI_LIBRARIES_STATIC)
143
-
144
- if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
145
- add_definitions(-DOS_LINUX)
146
- elseif(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
147
- add_definitions(-DOS_FREEBSD)
148
- elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
149
- add_definitions(-DOS_MACOSX)
150
- endif()
151
-
152
- function(transform_sources_list INPUT_FILE OUTPUT_FILE)
153
- file(READ ${INPUT_FILE} TEXT)
154
- string(REGEX REPLACE "\\\\\n" "~continuation~" TEXT ${TEXT})
155
- string(REGEX REPLACE "([a-zA-Z_][a-zA-Z0-9_]*)[\t ]*=[\t ]*([^\n]*)" "SET(\\1 \\2)" TEXT ${TEXT})
156
- string(REPLACE "~continuation~" "\n" TEXT ${TEXT})
157
- file(WRITE ${OUTPUT_FILE} ${TEXT})
158
- endfunction()
159
-
160
- transform_sources_list("scripts/sources.lst" "${CMAKE_CURRENT_BINARY_DIR}/sources.lst.cmake")
161
- include("${CMAKE_CURRENT_BINARY_DIR}/sources.lst.cmake")
162
-
163
- if(BROTLI_EMSCRIPTEN)
164
- set(BROTLI_SHARED_LIBS "")
165
- else()
166
- set(BROTLI_SHARED_LIBS brotlicommon brotlidec brotlienc)
167
- add_library(brotlicommon SHARED ${BROTLI_COMMON_C})
168
- add_library(brotlidec SHARED ${BROTLI_DEC_C})
169
- add_library(brotlienc SHARED ${BROTLI_ENC_C})
170
- endif()
171
-
172
- set(BROTLI_STATIC_LIBS brotlicommon-static brotlidec-static brotlienc-static)
173
- add_library(brotlicommon-static STATIC ${BROTLI_COMMON_C})
174
- add_library(brotlidec-static STATIC ${BROTLI_DEC_C})
175
- add_library(brotlienc-static STATIC ${BROTLI_ENC_C})
176
-
177
- # Older CMake versions does not understand INCLUDE_DIRECTORIES property.
178
- include_directories(${BROTLI_INCLUDE_DIRS})
179
-
180
- foreach(lib IN LISTS BROTLI_SHARED_LIBS)
181
- target_compile_definitions(${lib} PUBLIC "BROTLI_SHARED_COMPILATION" )
182
- string(TOUPPER "${lib}" LIB)
183
- set_target_properties (${lib} PROPERTIES DEFINE_SYMBOL "${LIB}_SHARED_COMPILATION")
184
- endforeach()
185
-
186
- foreach(lib IN LISTS BROTLI_SHARED_LIBS BROTLI_STATIC_LIBS)
187
- target_link_libraries(${lib} ${LIBM_LIBRARY})
188
- set_property(TARGET ${lib} APPEND PROPERTY INCLUDE_DIRECTORIES ${BROTLI_INCLUDE_DIRS})
189
- set_target_properties(${lib} PROPERTIES
190
- VERSION "${BROTLI_ABI_COMPATIBILITY}.${BROTLI_ABI_AGE}.${BROTLI_ABI_REVISION}"
191
- SOVERSION "${BROTLI_ABI_COMPATIBILITY}")
192
- if(NOT BROTLI_EMSCRIPTEN)
193
- set_target_properties(${lib} PROPERTIES POSITION_INDEPENDENT_CODE TRUE)
194
- endif()
195
- set_property(TARGET ${lib} APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${BROTLI_INCLUDE_DIRS}")
196
- endforeach()
197
-
198
- if(NOT BROTLI_EMSCRIPTEN)
199
- target_link_libraries(brotlidec brotlicommon)
200
- target_link_libraries(brotlienc brotlicommon)
201
- endif()
202
-
203
- target_link_libraries(brotlidec-static brotlicommon-static)
204
- target_link_libraries(brotlienc-static brotlicommon-static)
205
-
206
- # For projects stuck on older versions of CMake, this will set the
207
- # BROTLI_INCLUDE_DIRS and BROTLI_LIBRARIES variables so they still
208
- # have a relatively easy way to use Brotli:
209
- #
210
- # include_directories(${BROTLI_INCLUDE_DIRS})
211
- # target_link_libraries(foo ${BROTLI_LIBRARIES})
212
- if(BROTLI_PARENT_DIRECTORY)
213
- set(BROTLI_INCLUDE_DIRS "${BROTLI_INCLUDE_DIRS}" PARENT_SCOPE)
214
- set(BROTLI_LIBRARIES "${BROTLI_LIBRARIES}" PARENT_SCOPE)
215
- endif()
216
-
217
- # Build the brotli executable
218
- add_executable(brotli ${BROTLI_CLI_C})
219
- target_link_libraries(brotli ${BROTLI_LIBRARIES_STATIC})
220
-
221
- # Installation
222
- if(NOT BROTLI_EMSCRIPTEN)
223
- if(NOT BROTLI_BUNDLED_MODE)
224
- install(
225
- TARGETS brotli
226
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
227
- )
228
-
229
- install(
230
- TARGETS ${BROTLI_LIBRARIES_CORE}
231
- ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
232
- LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
233
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
234
- )
235
-
236
- install(
237
- TARGETS ${BROTLI_LIBRARIES_CORE_STATIC}
238
- ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
239
- LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
240
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
241
- )
242
-
243
- install(
244
- DIRECTORY ${BROTLI_INCLUDE_DIRS}/brotli
245
- DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
246
- )
247
- endif() # BROTLI_BUNDLED_MODE
248
- endif() # BROTLI_EMSCRIPTEN
249
-
250
- # Tests
251
-
252
- # If we're targeting Windows but not running on Windows, we need Wine
253
- # to run the tests...
254
- if(NOT BROTLI_DISABLE_TESTS)
255
- if(WIN32 AND NOT CMAKE_HOST_WIN32)
256
- find_program(BROTLI_WRAPPER NAMES wine)
257
-
258
- if(NOT BROTLI_WRAPPER)
259
- message(STATUS "wine not found, disabling tests")
260
- set(BROTLI_DISABLE_TESTS TRUE)
261
- endif()
262
- endif()
263
- endif()
264
-
265
- # If our compiler is a cross-compiler that we know about (arm/aarch64),
266
- # then we need to use qemu to execute the tests.
267
- if(NOT BROTLI_DISABLE_TESTS)
268
- if ("${CMAKE_C_COMPILER}" MATCHES "^.*/arm-linux-gnueabihf-.*$")
269
- message(STATUS "Detected arm-linux-gnueabihf cross-compilation")
270
- set(BROTLI_WRAPPER "qemu-arm")
271
- set(BROTLI_WRAPPER_LD_PREFIX "/usr/arm-linux-gnueabihf")
272
- endif()
273
-
274
- if ("${CMAKE_C_COMPILER}" MATCHES "^.*/arm-linux-gnueabi-.*$")
275
- message(STATUS "Detected arm-linux-gnueabi cross-compilation")
276
- set(BROTLI_WRAPPER "qemu-arm")
277
- set(BROTLI_WRAPPER_LD_PREFIX "/usr/arm-linux-gnueabi")
278
- endif()
279
-
280
- if ("${CMAKE_C_COMPILER}" MATCHES "^.*/aarch64-linux-gnu-.*$")
281
- message(STATUS "Detected aarch64-linux-gnu cross-compilation")
282
- set(BROTLI_WRAPPER "qemu-aarch64")
283
- set(BROTLI_WRAPPER_LD_PREFIX "/usr/aarch64-linux-gnu")
284
- endif()
285
- endif()
286
-
287
- if(NOT BROTLI_DISABLE_TESTS)
288
- include(CTest)
289
- enable_testing()
290
-
291
- set(ROUNDTRIP_INPUTS
292
- tests/testdata/alice29.txt
293
- tests/testdata/asyoulik.txt
294
- tests/testdata/lcet10.txt
295
- tests/testdata/plrabn12.txt
296
- c/enc/encode.c
297
- c/common/dictionary.h
298
- c/dec/decode.c)
299
-
300
- foreach(INPUT ${ROUNDTRIP_INPUTS})
301
- get_filename_component(OUTPUT_NAME "${INPUT}" NAME)
302
-
303
- set(OUTPUT_FILE "${CMAKE_CURRENT_BINARY_DIR}/${OUTPUT_NAME}")
304
- set(INPUT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/${INPUT}")
305
-
306
- if (EXISTS "${INPUT_FILE}")
307
- foreach(quality 1 6 9 11)
308
- add_test(NAME "${BROTLI_TEST_PREFIX}roundtrip/${INPUT}/${quality}"
309
- COMMAND "${CMAKE_COMMAND}"
310
- -DBROTLI_WRAPPER=${BROTLI_WRAPPER}
311
- -DBROTLI_WRAPPER_LD_PREFIX=${BROTLI_WRAPPER_LD_PREFIX}
312
- -DBROTLI_CLI=$<TARGET_FILE:brotli>
313
- -DQUALITY=${quality}
314
- -DINPUT=${INPUT_FILE}
315
- -DOUTPUT=${OUTPUT_FILE}.${quality}
316
- -P ${CMAKE_CURRENT_SOURCE_DIR}/tests/run-roundtrip-test.cmake)
317
- endforeach()
318
- else()
319
- message(WARNING "Test file ${INPUT} does not exist.")
320
- endif()
321
- endforeach()
322
-
323
- file(GLOB_RECURSE
324
- COMPATIBILITY_INPUTS
325
- RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
326
- tests/testdata/*.compressed*)
327
-
328
- foreach(INPUT ${COMPATIBILITY_INPUTS})
329
- add_test(NAME "${BROTLI_TEST_PREFIX}compatibility/${INPUT}"
330
- COMMAND "${CMAKE_COMMAND}"
331
- -DBROTLI_WRAPPER=${BROTLI_WRAPPER}
332
- -DBROTLI_WRAPPER_LD_PREFIX=${BROTLI_WRAPPER_LD_PREFIX}
333
- -DBROTLI_CLI=$<TARGET_FILE:brotli>
334
- -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/${INPUT}
335
- -P ${CMAKE_CURRENT_SOURCE_DIR}/tests/run-compatibility-test.cmake)
336
- endforeach()
337
- endif()
338
-
339
- # Generate a pkg-config files
340
-
341
- function(generate_pkg_config_path outvar path)
342
- string(LENGTH "${path}" path_length)
343
-
344
- set(path_args ${ARGV})
345
- list(REMOVE_AT path_args 0 1)
346
- list(LENGTH path_args path_args_remaining)
347
-
348
- set("${outvar}" "${path}")
349
-
350
- while(path_args_remaining GREATER 1)
351
- list(GET path_args 0 name)
352
- list(GET path_args 1 value)
353
-
354
- get_filename_component(value_full "${value}" ABSOLUTE)
355
- string(LENGTH "${value}" value_length)
356
-
357
- if(path_length EQUAL value_length AND path STREQUAL value)
358
- set("${outvar}" "\${${name}}")
359
- break()
360
- elseif(path_length GREATER value_length)
361
- # We might be in a subdirectory of the value, but we have to be
362
- # careful about a prefix matching but not being a subdirectory
363
- # (for example, /usr/lib64 is not a subdirectory of /usr/lib).
364
- # We'll do this by making sure the next character is a directory
365
- # separator.
366
- string(SUBSTRING "${path}" ${value_length} 1 sep)
367
- if(sep STREQUAL "/")
368
- string(SUBSTRING "${path}" 0 ${value_length} s)
369
- if(s STREQUAL value)
370
- string(SUBSTRING "${path}" "${value_length}" -1 suffix)
371
- set("${outvar}" "\${${name}}${suffix}")
372
- break()
373
- endif()
374
- endif()
375
- endif()
376
-
377
- list(REMOVE_AT path_args 0 1)
378
- list(LENGTH path_args path_args_remaining)
379
- endwhile()
380
-
381
- set("${outvar}" "${${outvar}}" PARENT_SCOPE)
382
- endfunction(generate_pkg_config_path)
383
-
384
- function(transform_pc_file INPUT_FILE OUTPUT_FILE VERSION)
385
- file(READ ${INPUT_FILE} TEXT)
386
-
387
- set(PREFIX "${CMAKE_INSTALL_PREFIX}")
388
- string(REGEX REPLACE "@prefix@" "${PREFIX}" TEXT ${TEXT})
389
- string(REGEX REPLACE "@exec_prefix@" "${PREFIX}" TEXT ${TEXT})
390
-
391
- generate_pkg_config_path(LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}" prefix "${PREFIX}")
392
- string(REGEX REPLACE "@libdir@" "${LIBDIR}" TEXT ${TEXT})
393
-
394
- generate_pkg_config_path(INCLUDEDIR "${CMAKE_INSTALL_FULL_INCLUDEDIR}" prefix "${PREFIX}")
395
- string(REGEX REPLACE "@includedir@" "${INCLUDEDIR}" TEXT ${TEXT})
396
-
397
- string(REGEX REPLACE "@PACKAGE_VERSION@" "${VERSION}" TEXT ${TEXT})
398
-
399
- file(WRITE ${OUTPUT_FILE} ${TEXT})
400
- endfunction()
401
-
402
- transform_pc_file("scripts/libbrotlicommon.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/libbrotlicommon.pc" "${BROTLI_VERSION}")
403
-
404
- transform_pc_file("scripts/libbrotlidec.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/libbrotlidec.pc" "${BROTLI_VERSION}")
405
-
406
- transform_pc_file("scripts/libbrotlienc.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/libbrotlienc.pc" "${BROTLI_VERSION}")
407
-
408
- if(NOT BROTLI_EMSCRIPTEN)
409
- if(NOT BROTLI_BUNDLED_MODE)
410
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libbrotlicommon.pc"
411
- DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
412
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libbrotlidec.pc"
413
- DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
414
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libbrotlienc.pc"
415
- DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
416
- endif() # BROTLI_BUNDLED_MODE
417
- endif() # BROTLI_EMSCRIPTEN
418
-
419
- if (ENABLE_COVERAGE STREQUAL "yes")
420
- SETUP_TARGET_FOR_COVERAGE(coverage test coverage)
421
- endif ()
@@ -1,27 +0,0 @@
1
- Want to contribute? Great! First, read this page (including the small print at
2
- the end).
3
-
4
- ### Before you contribute
5
- Before we can use your code, you must sign the
6
- [Google Individual Contributor License Agreement]
7
- (https://cla.developers.google.com/about/google-individual)
8
- (CLA), which you can do online. The CLA is necessary mainly because you own the
9
- copyright to your changes, even after your contribution becomes part of our
10
- codebase, so we need your permission to use and distribute your code. We also
11
- need to be sure of various other things—for instance that you'll tell us if you
12
- know that your code infringes on other people's patents. You don't have to sign
13
- the CLA until after you've submitted your code for review and a member has
14
- approved it, but you must do it before we can put your code into our codebase.
15
- Before you start working on a larger contribution, you should get in touch with
16
- us first through the issue tracker with your idea so that we can help out and
17
- possibly guide you. Coordinating up front makes it much easier to avoid
18
- frustration later on.
19
-
20
- ### Code reviews
21
- All submissions, including submissions by project members, require review. We
22
- use Github pull requests for this purpose.
23
-
24
- ### The small print
25
- Contributions made by corporations are covered by a different agreement than
26
- the one above, the [Software Grant and Corporate Contributor License Agreement]
27
- (https://cla.developers.google.com/about/google-corporate).
@@ -1,19 +0,0 @@
1
- Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a copy
4
- of this software and associated documentation files (the "Software"), to deal
5
- in the Software without restriction, including without limitation the rights
6
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
- copies of the Software, and to permit persons to whom the Software is
8
- furnished to do so, subject to the following conditions:
9
-
10
- The above copyright notice and this permission notice shall be included in
11
- all copies or substantial portions of the Software.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
- THE SOFTWARE.
@@ -1,17 +0,0 @@
1
- include CONTRIBUTING.md
2
- include c/common/*.c
3
- include c/common/*.h
4
- include c/dec/*.c
5
- include c/dec/*.h
6
- include c/enc/*.c
7
- include c/enc/*.h
8
- include c/include/brotli/*.h
9
- include LICENSE
10
- include MANIFEST.in
11
- include python/_brotli.cc
12
- include python/bro.py
13
- include python/brotli.py
14
- include python/README.md
15
- include README.md
16
- include setup.py
17
- include c/tools/brotli.c
@@ -1,55 +0,0 @@
1
- OS := $(shell uname)
2
- LIBSOURCES = $(wildcard c/common/*.c) $(wildcard c/dec/*.c) \
3
- $(wildcard c/enc/*.c)
4
- SOURCES = $(LIBSOURCES) c/tools/brotli.c
5
- BINDIR = bin
6
- OBJDIR = $(BINDIR)/obj
7
- LIBOBJECTS = $(addprefix $(OBJDIR)/, $(LIBSOURCES:.c=.o))
8
- OBJECTS = $(addprefix $(OBJDIR)/, $(SOURCES:.c=.o))
9
- LIB_A = libbrotli.a
10
- EXECUTABLE = brotli
11
- DIRS = $(OBJDIR)/c/common $(OBJDIR)/c/dec $(OBJDIR)/c/enc \
12
- $(OBJDIR)/c/tools $(BINDIR)/tmp
13
- CFLAGS += -O2
14
- ifeq ($(os), Darwin)
15
- CPPFLAGS += -DOS_MACOSX
16
- endif
17
-
18
- ifneq ($(strip $(CROSS_COMPILE)), )
19
- CC=$(CROSS_COMPILE)-gcc
20
- ARCH=$(firstword $(subst -, ,$(CROSS_COMPILE)))
21
- BROTLI_WRAPPER="qemu-$(ARCH) -L /usr/$(CROSS_COMPILE)"
22
- endif
23
-
24
- # The arm-linux-gnueabi compiler defaults to Armv5. Since we only support Armv7
25
- # and beyond, we need to select Armv7 explicitly with march.
26
- ifeq ($(ARCH), arm)
27
- CFLAGS += -march=armv7-a -mfloat-abi=hard -mfpu=neon
28
- endif
29
-
30
- all: test
31
- @:
32
-
33
- .PHONY: all clean test
34
-
35
- $(DIRS):
36
- mkdir -p $@
37
-
38
- $(EXECUTABLE): $(OBJECTS)
39
- $(CC) $(LDFLAGS) $(OBJECTS) -lm -o $(BINDIR)/$(EXECUTABLE)
40
-
41
- lib: $(LIBOBJECTS)
42
- rm -f $(LIB_A)
43
- ar -crs $(LIB_A) $(LIBOBJECTS)
44
-
45
- test: $(EXECUTABLE)
46
- tests/compatibility_test.sh $(BROTLI_WRAPPER)
47
- tests/roundtrip_test.sh $(BROTLI_WRAPPER)
48
-
49
- clean:
50
- rm -rf $(BINDIR) $(LIB_A)
51
-
52
- .SECONDEXPANSION:
53
- $(OBJECTS): $$(patsubst %.o,%.c,$$(patsubst $$(OBJDIR)/%,%,$$@)) | $(DIRS)
54
- $(CC) $(CFLAGS) $(CPPFLAGS) -Ic/include \
55
- -c $(patsubst %.o,%.c,$(patsubst $(OBJDIR)/%,%,$@)) -o $@
@@ -1,38 +0,0 @@
1
- AUTOMAKE_OPTIONS = foreign nostdinc subdir-objects
2
-
3
- ACLOCAL_AMFLAGS = -I m4
4
-
5
- # Actual ABI version is substituted by bootstrap
6
- LIBBROTLI_VERSION_INFO = -version-info 0:0:0
7
-
8
- bin_PROGRAMS = brotli
9
- lib_LTLIBRARIES = libbrotlicommon.la libbrotlidec.la libbrotlienc.la
10
-
11
- include scripts/sources.lst
12
-
13
- brotliincludedir = $(includedir)/brotli
14
- brotliinclude_HEADERS = $(BROTLI_INCLUDE)
15
-
16
- AM_CFLAGS = -I$(top_srcdir)/c/include
17
-
18
- brotli_SOURCES = $(BROTLI_CLI_C)
19
- brotli_LDADD = libbrotlidec.la libbrotlienc.la libbrotlicommon.la -lm
20
- #brotli_LDFLAGS = -static
21
-
22
- libbrotlicommon_la_SOURCES = $(BROTLI_COMMON_C) $(BROTLI_COMMON_H)
23
- libbrotlicommon_la_LDFLAGS = $(AM_LDFLAGS) $(LIBBROTLI_VERSION_INFO) $(LDFLAGS)
24
- libbrotlidec_la_SOURCES = $(BROTLI_DEC_C) $(BROTLI_DEC_H)
25
- libbrotlidec_la_LDFLAGS = $(AM_LDFLAGS) $(LIBBROTLI_VERSION_INFO) $(LDFLAGS)
26
- libbrotlidec_la_LIBADD = libbrotlicommon.la -lm
27
- libbrotlienc_la_SOURCES = $(BROTLI_ENC_C) $(BROTLI_ENC_H)
28
- libbrotlienc_la_LDFLAGS = $(AM_LDFLAGS) $(LIBBROTLI_VERSION_INFO) $(LDFLAGS)
29
- libbrotlienc_la_LIBADD = libbrotlicommon.la -lm
30
-
31
- pkgconfigdir = $(libdir)/pkgconfig
32
- pkgconfig_DATA = \
33
- scripts/libbrotlicommon.pc \
34
- scripts/libbrotlidec.pc \
35
- scripts/libbrotlienc.pc
36
- pkgincludedir= $(brotliincludedir)
37
-
38
- dist_doc_DATA = README
@@ -1,15 +0,0 @@
1
- BROTLI DATA COMPRESSION LIBRARY
2
-
3
- Brotli is a generic-purpose lossless compression algorithm that compresses data
4
- using a combination of a modern variant of the LZ77 algorithm, Huffman coding
5
- and 2nd order context modeling, with a compression ratio comparable to the best
6
- currently available general-purpose compression methods. It is similar in speed
7
- with deflate but offers more dense compression.
8
-
9
- The specification of the Brotli Compressed Data Format is defined in RFC 7932
10
- https://tools.ietf.org/html/rfc7932
11
-
12
- Brotli is open-sourced under the MIT License, see the LICENSE file.
13
-
14
- Brotli mailing list:
15
- https://groups.google.com/forum/#!forum/brotli