koffi 2.3.6 → 2.3.8

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 (280) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/package.json +2 -2
  3. package/src/cnoke/cnoke.js +3 -7
  4. package/src/cnoke/src/builder.js +7 -4
  5. package/src/cnoke/src/index.js +2 -2
  6. package/src/koffi/build/2.3.8/koffi_darwin_arm64/koffi.node +0 -0
  7. package/src/koffi/build/2.3.8/koffi_darwin_x64/koffi.node +0 -0
  8. package/src/koffi/build/2.3.8/koffi_freebsd_arm64/koffi.node +0 -0
  9. package/src/koffi/build/2.3.8/koffi_freebsd_ia32/koffi.node +0 -0
  10. package/src/koffi/build/2.3.8/koffi_freebsd_x64/koffi.node +0 -0
  11. package/src/koffi/build/2.3.8/koffi_linux_arm32hf/koffi.node +0 -0
  12. package/src/koffi/build/2.3.8/koffi_linux_arm64/koffi.node +0 -0
  13. package/src/koffi/build/2.3.8/koffi_linux_ia32/koffi.node +0 -0
  14. package/src/koffi/build/2.3.8/koffi_linux_riscv64hf64/koffi.node +0 -0
  15. package/src/koffi/build/2.3.8/koffi_linux_x64/koffi.node +0 -0
  16. package/src/koffi/build/2.3.8/koffi_openbsd_ia32/koffi.node +0 -0
  17. package/src/koffi/build/2.3.8/koffi_openbsd_x64/koffi.node +0 -0
  18. package/src/koffi/build/2.3.8/koffi_win32_arm64/koffi.node +0 -0
  19. package/src/koffi/build/2.3.8/koffi_win32_ia32/koffi.node +0 -0
  20. package/src/koffi/build/2.3.8/koffi_win32_x64/koffi.node +0 -0
  21. package/src/koffi/src/abi_arm64.cc +8 -2
  22. package/src/koffi/src/abi_x64_win.cc +8 -2
  23. package/src/koffi/src/abi_x86.cc +8 -2
  24. package/src/koffi/src/ffi.cc +3 -22
  25. package/src/koffi/src/index.d.ts +1 -1
  26. package/src/koffi/src/index.js +1 -0
  27. package/src/koffi/src/win32.hh +10 -4
  28. package/src/koffi/build/2.3.6/koffi_darwin_arm64/koffi.node +0 -0
  29. package/src/koffi/build/2.3.6/koffi_darwin_x64/koffi.node +0 -0
  30. package/src/koffi/build/2.3.6/koffi_freebsd_arm64/koffi.node +0 -0
  31. package/src/koffi/build/2.3.6/koffi_freebsd_ia32/koffi.node +0 -0
  32. package/src/koffi/build/2.3.6/koffi_freebsd_x64/koffi.node +0 -0
  33. package/src/koffi/build/2.3.6/koffi_linux_arm32hf/koffi.node +0 -0
  34. package/src/koffi/build/2.3.6/koffi_linux_arm64/koffi.node +0 -0
  35. package/src/koffi/build/2.3.6/koffi_linux_ia32/koffi.node +0 -0
  36. package/src/koffi/build/2.3.6/koffi_linux_riscv64hf64/koffi.node +0 -0
  37. package/src/koffi/build/2.3.6/koffi_linux_x64/koffi.node +0 -0
  38. package/src/koffi/build/2.3.6/koffi_openbsd_ia32/koffi.node +0 -0
  39. package/src/koffi/build/2.3.6/koffi_openbsd_x64/koffi.node +0 -0
  40. package/src/koffi/build/2.3.6/koffi_win32_arm64/koffi.node +0 -0
  41. package/src/koffi/build/2.3.6/koffi_win32_arm64/koffi.pdb +0 -0
  42. package/src/koffi/build/2.3.6/koffi_win32_ia32/koffi.node +0 -0
  43. package/src/koffi/build/2.3.6/koffi_win32_ia32/koffi.pdb +0 -0
  44. package/src/koffi/build/2.3.6/koffi_win32_x64/koffi.node +0 -0
  45. package/src/koffi/build/2.3.6/koffi_win32_x64/koffi.pdb +0 -0
  46. package/vendor/brotli/BUILD +0 -144
  47. package/vendor/brotli/CMakeLists.txt +0 -421
  48. package/vendor/brotli/CONTRIBUTING.md +0 -27
  49. package/vendor/brotli/LICENSE +0 -19
  50. package/vendor/brotli/MANIFEST.in +0 -17
  51. package/vendor/brotli/Makefile +0 -55
  52. package/vendor/brotli/Makefile.am +0 -38
  53. package/vendor/brotli/README +0 -15
  54. package/vendor/brotli/README.md +0 -104
  55. package/vendor/brotli/WORKSPACE +0 -21
  56. package/vendor/brotli/bootstrap +0 -35
  57. package/vendor/brotli/c/common/constants.c +0 -15
  58. package/vendor/brotli/c/common/constants.h +0 -200
  59. package/vendor/brotli/c/common/context.c +0 -156
  60. package/vendor/brotli/c/common/context.h +0 -113
  61. package/vendor/brotli/c/common/dictionary.c +0 -5914
  62. package/vendor/brotli/c/common/dictionary.h +0 -64
  63. package/vendor/brotli/c/common/platform.c +0 -22
  64. package/vendor/brotli/c/common/platform.h +0 -596
  65. package/vendor/brotli/c/common/transform.c +0 -291
  66. package/vendor/brotli/c/common/transform.h +0 -85
  67. package/vendor/brotli/c/common/version.h +0 -26
  68. package/vendor/brotli/c/dec/bit_reader.c +0 -76
  69. package/vendor/brotli/c/dec/bit_reader.h +0 -351
  70. package/vendor/brotli/c/dec/decode.c +0 -2608
  71. package/vendor/brotli/c/dec/huffman.c +0 -339
  72. package/vendor/brotli/c/dec/huffman.h +0 -121
  73. package/vendor/brotli/c/dec/prefix.h +0 -732
  74. package/vendor/brotli/c/dec/state.c +0 -159
  75. package/vendor/brotli/c/dec/state.h +0 -365
  76. package/vendor/brotli/c/enc/backward_references.c +0 -145
  77. package/vendor/brotli/c/enc/backward_references.h +0 -39
  78. package/vendor/brotli/c/enc/backward_references_hq.c +0 -843
  79. package/vendor/brotli/c/enc/backward_references_hq.h +0 -95
  80. package/vendor/brotli/c/enc/backward_references_inc.h +0 -163
  81. package/vendor/brotli/c/enc/bit_cost.c +0 -35
  82. package/vendor/brotli/c/enc/bit_cost.h +0 -63
  83. package/vendor/brotli/c/enc/bit_cost_inc.h +0 -127
  84. package/vendor/brotli/c/enc/block_encoder_inc.h +0 -34
  85. package/vendor/brotli/c/enc/block_splitter.c +0 -194
  86. package/vendor/brotli/c/enc/block_splitter.h +0 -51
  87. package/vendor/brotli/c/enc/block_splitter_inc.h +0 -440
  88. package/vendor/brotli/c/enc/brotli_bit_stream.c +0 -1314
  89. package/vendor/brotli/c/enc/brotli_bit_stream.h +0 -84
  90. package/vendor/brotli/c/enc/cluster.c +0 -56
  91. package/vendor/brotli/c/enc/cluster.h +0 -48
  92. package/vendor/brotli/c/enc/cluster_inc.h +0 -320
  93. package/vendor/brotli/c/enc/command.c +0 -28
  94. package/vendor/brotli/c/enc/command.h +0 -190
  95. package/vendor/brotli/c/enc/compress_fragment.c +0 -790
  96. package/vendor/brotli/c/enc/compress_fragment.h +0 -61
  97. package/vendor/brotli/c/enc/compress_fragment_two_pass.c +0 -645
  98. package/vendor/brotli/c/enc/compress_fragment_two_pass.h +0 -54
  99. package/vendor/brotli/c/enc/dictionary_hash.c +0 -1846
  100. package/vendor/brotli/c/enc/dictionary_hash.h +0 -25
  101. package/vendor/brotli/c/enc/encode.c +0 -1927
  102. package/vendor/brotli/c/enc/encoder_dict.c +0 -33
  103. package/vendor/brotli/c/enc/encoder_dict.h +0 -43
  104. package/vendor/brotli/c/enc/entropy_encode.c +0 -503
  105. package/vendor/brotli/c/enc/entropy_encode.h +0 -122
  106. package/vendor/brotli/c/enc/entropy_encode_static.h +0 -539
  107. package/vendor/brotli/c/enc/fast_log.c +0 -105
  108. package/vendor/brotli/c/enc/fast_log.h +0 -66
  109. package/vendor/brotli/c/enc/find_match_length.h +0 -79
  110. package/vendor/brotli/c/enc/hash.h +0 -488
  111. package/vendor/brotli/c/enc/hash_composite_inc.h +0 -125
  112. package/vendor/brotli/c/enc/hash_forgetful_chain_inc.h +0 -293
  113. package/vendor/brotli/c/enc/hash_longest_match64_inc.h +0 -267
  114. package/vendor/brotli/c/enc/hash_longest_match_inc.h +0 -262
  115. package/vendor/brotli/c/enc/hash_longest_match_quickly_inc.h +0 -266
  116. package/vendor/brotli/c/enc/hash_rolling_inc.h +0 -212
  117. package/vendor/brotli/c/enc/hash_to_binary_tree_inc.h +0 -329
  118. package/vendor/brotli/c/enc/histogram.c +0 -100
  119. package/vendor/brotli/c/enc/histogram.h +0 -63
  120. package/vendor/brotli/c/enc/histogram_inc.h +0 -51
  121. package/vendor/brotli/c/enc/literal_cost.c +0 -175
  122. package/vendor/brotli/c/enc/literal_cost.h +0 -30
  123. package/vendor/brotli/c/enc/memory.c +0 -170
  124. package/vendor/brotli/c/enc/memory.h +0 -114
  125. package/vendor/brotli/c/enc/metablock.c +0 -663
  126. package/vendor/brotli/c/enc/metablock.h +0 -105
  127. package/vendor/brotli/c/enc/metablock_inc.h +0 -183
  128. package/vendor/brotli/c/enc/params.h +0 -46
  129. package/vendor/brotli/c/enc/prefix.h +0 -53
  130. package/vendor/brotli/c/enc/quality.h +0 -165
  131. package/vendor/brotli/c/enc/ringbuffer.h +0 -167
  132. package/vendor/brotli/c/enc/static_dict.c +0 -486
  133. package/vendor/brotli/c/enc/static_dict.h +0 -40
  134. package/vendor/brotli/c/enc/static_dict_lut.h +0 -5864
  135. package/vendor/brotli/c/enc/utf8_util.c +0 -85
  136. package/vendor/brotli/c/enc/utf8_util.h +0 -32
  137. package/vendor/brotli/c/enc/write_bits.h +0 -87
  138. package/vendor/brotli/c/include/brotli/decode.h +0 -344
  139. package/vendor/brotli/c/include/brotli/encode.h +0 -448
  140. package/vendor/brotli/c/include/brotli/port.h +0 -288
  141. package/vendor/brotli/c/include/brotli/types.h +0 -83
  142. package/vendor/brotli/c/tools/brotli.c +0 -1116
  143. package/vendor/brotli/c/tools/brotli.md +0 -107
  144. package/vendor/brotli/compiler_config_setting.bzl +0 -28
  145. package/vendor/brotli/configure +0 -8
  146. package/vendor/brotli/configure-cmake +0 -318
  147. package/vendor/brotli/configure.ac +0 -14
  148. package/vendor/brotli/docs/brotli.1 +0 -132
  149. package/vendor/brotli/docs/constants.h.3 +0 -47
  150. package/vendor/brotli/docs/decode.h.3 +0 -415
  151. package/vendor/brotli/docs/encode.h.3 +0 -586
  152. package/vendor/brotli/docs/types.h.3 +0 -117
  153. package/vendor/brotli/premake5.lua +0 -78
  154. package/vendor/brotli/python/Makefile +0 -57
  155. package/vendor/brotli/python/README.md +0 -54
  156. package/vendor/brotli/python/_brotli.cc +0 -753
  157. package/vendor/brotli/python/bro.py +0 -160
  158. package/vendor/brotli/python/brotli.py +0 -56
  159. package/vendor/brotli/python/tests/__init__.py +0 -0
  160. package/vendor/brotli/python/tests/_test_utils.py +0 -112
  161. package/vendor/brotli/python/tests/bro_test.py +0 -102
  162. package/vendor/brotli/python/tests/compress_test.py +0 -41
  163. package/vendor/brotli/python/tests/compressor_test.py +0 -94
  164. package/vendor/brotli/python/tests/decompress_test.py +0 -42
  165. package/vendor/brotli/python/tests/decompressor_test.py +0 -59
  166. package/vendor/brotli/scripts/libbrotlicommon.pc.in +0 -11
  167. package/vendor/brotli/scripts/libbrotlidec.pc.in +0 -12
  168. package/vendor/brotli/scripts/libbrotlienc.pc.in +0 -12
  169. package/vendor/brotli/scripts/sources.lst +0 -104
  170. package/vendor/brotli/setup.cfg +0 -5
  171. package/vendor/brotli/setup.py +0 -293
  172. package/vendor/brotli/tests/Makefile +0 -17
  173. package/vendor/brotli/tests/compatibility_test.sh +0 -25
  174. package/vendor/brotli/tests/roundtrip_test.sh +0 -36
  175. package/vendor/brotli/tests/run-compatibility-test.cmake +0 -31
  176. package/vendor/brotli/tests/run-roundtrip-test.cmake +0 -36
  177. package/vendor/brotli/tests/testdata/empty +0 -0
  178. package/vendor/brotli/tests/testdata/empty.compressed +0 -1
  179. package/vendor/brotli/tests/testdata/ukkonooa +0 -1
  180. package/vendor/brotli/tests/testdata/ukkonooa.compressed +0 -0
  181. package/vendor/dragonbox/CMakeLists.txt +0 -123
  182. package/vendor/dragonbox/LICENSE-Apache2-LLVM +0 -218
  183. package/vendor/dragonbox/LICENSE-Boost +0 -23
  184. package/vendor/dragonbox/README.md +0 -277
  185. package/vendor/dragonbox/cmake/dragonboxConfig.cmake +0 -1
  186. package/vendor/dragonbox/include/dragonbox/dragonbox.h +0 -2674
  187. package/vendor/dragonbox/include/dragonbox/dragonbox_to_chars.h +0 -108
  188. package/vendor/dragonbox/other_files/Dragonbox.pdf +0 -0
  189. package/vendor/dragonbox/other_files/Dragonbox_old.pdf +0 -0
  190. package/vendor/dragonbox/other_files/milo_benchmark.png +0 -0
  191. package/vendor/dragonbox/other_files/unknown_win64_vc2019.html +0 -540
  192. package/vendor/dragonbox/other_files/unknown_win64_vc2019_randomdigit_time.png +0 -0
  193. package/vendor/dragonbox/source/dragonbox_to_chars.cpp +0 -303
  194. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/CMakeLists.txt +0 -24
  195. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/fp_to_chars.cpp +0 -238
  196. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/fp_to_chars.h +0 -95
  197. package/vendor/dragonbox/subproject/3rdparty/grisu_exact/grisu_exact.h +0 -2666
  198. package/vendor/dragonbox/subproject/3rdparty/ryu/CMakeLists.txt +0 -16
  199. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/common.h +0 -114
  200. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s.c +0 -509
  201. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s_full_table.h +0 -367
  202. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/d2s_intrinsics.h +0 -357
  203. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/digit_table.h +0 -35
  204. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s.c +0 -345
  205. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s_full_table.h +0 -55
  206. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/f2s_intrinsics.h +0 -128
  207. package/vendor/dragonbox/subproject/3rdparty/ryu/ryu/ryu.h +0 -46
  208. package/vendor/dragonbox/subproject/3rdparty/schubfach/CMakeLists.txt +0 -22
  209. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_32.cc +0 -699
  210. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_32.h +0 -31
  211. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_64.cc +0 -1354
  212. package/vendor/dragonbox/subproject/3rdparty/schubfach/schubfach_64.h +0 -31
  213. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/example_shaded_plots.m +0 -68
  214. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/license.txt +0 -25
  215. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_distribution.m +0 -92
  216. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_distribution_prctile.m +0 -121
  217. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_histogram_shaded.m +0 -99
  218. package/vendor/dragonbox/subproject/3rdparty/shaded_plots/plot_shaded.m +0 -93
  219. package/vendor/dragonbox/subproject/benchmark/CMakeLists.txt +0 -65
  220. package/vendor/dragonbox/subproject/benchmark/include/benchmark.h +0 -40
  221. package/vendor/dragonbox/subproject/benchmark/matlab/plot_benchmarks.m +0 -22
  222. package/vendor/dragonbox/subproject/benchmark/matlab/plot_digit_benchmark.m +0 -78
  223. package/vendor/dragonbox/subproject/benchmark/matlab/plot_uniform_benchmark.m +0 -95
  224. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary32_clang.png +0 -0
  225. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary32_msvc.png +0 -0
  226. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary64_clang.png +0 -0
  227. package/vendor/dragonbox/subproject/benchmark/results/digits_benchmark_binary64_msvc.png +0 -0
  228. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary32_clang.png +0 -0
  229. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary32_msvc.png +0 -0
  230. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary64_clang.png +0 -0
  231. package/vendor/dragonbox/subproject/benchmark/results/uniform_benchmark_binary64_msvc.png +0 -0
  232. package/vendor/dragonbox/subproject/benchmark/source/benchmark.cpp +0 -238
  233. package/vendor/dragonbox/subproject/benchmark/source/dragonbox.cpp +0 -30
  234. package/vendor/dragonbox/subproject/benchmark/source/grisu_exact.cpp +0 -36
  235. package/vendor/dragonbox/subproject/benchmark/source/ryu.cpp +0 -27
  236. package/vendor/dragonbox/subproject/benchmark/source/schubfach.cpp +0 -31
  237. package/vendor/dragonbox/subproject/common/CMakeLists.txt +0 -42
  238. package/vendor/dragonbox/subproject/common/include/best_rational_approx.h +0 -97
  239. package/vendor/dragonbox/subproject/common/include/big_uint.h +0 -218
  240. package/vendor/dragonbox/subproject/common/include/continued_fractions.h +0 -174
  241. package/vendor/dragonbox/subproject/common/include/good_rational_approx.h +0 -267
  242. package/vendor/dragonbox/subproject/common/include/random_float.h +0 -182
  243. package/vendor/dragonbox/subproject/common/include/rational_continued_fractions.h +0 -57
  244. package/vendor/dragonbox/subproject/common/source/big_uint.cpp +0 -602
  245. package/vendor/dragonbox/subproject/meta/CMakeLists.txt +0 -41
  246. package/vendor/dragonbox/subproject/meta/results/binary32_generated_cache.txt +0 -82
  247. package/vendor/dragonbox/subproject/meta/results/binary64_compressed_cache_error_table.txt +0 -10
  248. package/vendor/dragonbox/subproject/meta/results/binary64_generated_cache.txt +0 -623
  249. package/vendor/dragonbox/subproject/meta/source/generate_cache.cpp +0 -126
  250. package/vendor/dragonbox/subproject/meta/source/live_test.cpp +0 -81
  251. package/vendor/dragonbox/subproject/meta/source/perf_test.cpp +0 -104
  252. package/vendor/dragonbox/subproject/meta/source/sandbox.cpp +0 -20
  253. package/vendor/dragonbox/subproject/test/CMakeLists.txt +0 -70
  254. package/vendor/dragonbox/subproject/test/results/binary32.csv +0 -255
  255. package/vendor/dragonbox/subproject/test/results/binary64.csv +0 -2047
  256. package/vendor/dragonbox/subproject/test/results/plot_required_bits.m +0 -18
  257. package/vendor/dragonbox/subproject/test/source/test_all_shorter_interval_cases.cpp +0 -88
  258. package/vendor/dragonbox/subproject/test/source/uniform_random_test.cpp +0 -95
  259. package/vendor/dragonbox/subproject/test/source/verify_cache_precision.cpp +0 -338
  260. package/vendor/dragonbox/subproject/test/source/verify_compressed_cache.cpp +0 -154
  261. package/vendor/dragonbox/subproject/test/source/verify_fast_multiplication.cpp +0 -168
  262. package/vendor/dragonbox/subproject/test/source/verify_log_computation.cpp +0 -251
  263. package/vendor/dragonbox/subproject/test/source/verify_magic_division.cpp +0 -113
  264. package/vendor/miniz/ChangeLog.md +0 -239
  265. package/vendor/miniz/LICENSE +0 -22
  266. package/vendor/miniz/examples/example1.c +0 -105
  267. package/vendor/miniz/examples/example2.c +0 -164
  268. package/vendor/miniz/examples/example3.c +0 -269
  269. package/vendor/miniz/examples/example4.c +0 -102
  270. package/vendor/miniz/examples/example5.c +0 -327
  271. package/vendor/miniz/examples/example6.c +0 -166
  272. package/vendor/miniz/miniz.c +0 -7835
  273. package/vendor/miniz/miniz.h +0 -1422
  274. package/vendor/miniz/readme.md +0 -46
  275. /package/src/koffi/build/{2.3.6 → 2.3.8}/koffi_win32_arm64/koffi.exp +0 -0
  276. /package/src/koffi/build/{2.3.6 → 2.3.8}/koffi_win32_arm64/koffi.lib +0 -0
  277. /package/src/koffi/build/{2.3.6 → 2.3.8}/koffi_win32_ia32/koffi.exp +0 -0
  278. /package/src/koffi/build/{2.3.6 → 2.3.8}/koffi_win32_ia32/koffi.lib +0 -0
  279. /package/src/koffi/build/{2.3.6 → 2.3.8}/koffi_win32_x64/koffi.exp +0 -0
  280. /package/src/koffi/build/{2.3.6 → 2.3.8}/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