koffi 2.1.3 → 2.1.4
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.
- package/package.json +44 -68
- package/{LICENSE.txt → src/cnoke/LICENSE.txt} +0 -0
- package/src/cnoke/README.md +97 -0
- package/src/cnoke/assets/FindCNoke.cmake +71 -0
- package/src/cnoke/assets/win_delay_hook.c +34 -0
- package/src/cnoke/cnoke.js +968 -0
- package/src/cnoke/package.json +25 -0
- package/{vendor → src/core}/libcc/libcc.cc +38 -11
- package/{vendor → src/core}/libcc/libcc.hh +4 -2
- package/{CMakeLists.txt → src/koffi/CMakeLists.txt} +3 -3
- package/{ChangeLog.md → src/koffi/ChangeLog.md} +11 -0
- package/src/koffi/LICENSE.txt +661 -0
- package/{README.md → src/koffi/README.md} +0 -0
- package/{benchmark → src/koffi/benchmark}/CMakeLists.txt +9 -6
- package/{benchmark → src/koffi/benchmark}/atoi_koffi.js +0 -0
- package/{benchmark → src/koffi/benchmark}/atoi_napi.cc +1 -1
- package/{benchmark → src/koffi/benchmark}/atoi_napi.js +0 -0
- package/{benchmark → src/koffi/benchmark}/atoi_node_ffi.js +0 -0
- package/src/koffi/benchmark/benchmark.js +118 -0
- package/src/koffi/benchmark/rand_koffi.js +52 -0
- package/src/koffi/benchmark/rand_napi.cc +69 -0
- package/src/koffi/benchmark/rand_napi.js +47 -0
- package/src/koffi/benchmark/rand_node_ffi.js +55 -0
- package/{benchmark → src/koffi/benchmark}/raylib_cc.cc +2 -2
- package/{benchmark → src/koffi/benchmark}/raylib_cc.js +0 -0
- package/{benchmark → src/koffi/benchmark}/raylib_koffi.js +0 -0
- package/{benchmark → src/koffi/benchmark}/raylib_node_ffi.js +0 -0
- package/{benchmark → src/koffi/benchmark}/raylib_node_raylib.js +0 -0
- package/src/koffi/build/2.1.4/koffi_darwin_arm64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_darwin_x64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_freebsd_arm64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_freebsd_ia32.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_freebsd_x64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_linux_arm32hf.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_linux_arm64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_linux_ia32.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_linux_riscv64hf64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_linux_x64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_openbsd_ia32.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_openbsd_x64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_win32_arm64.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_win32_ia32.tar.gz +0 -0
- package/src/koffi/build/2.1.4/koffi_win32_x64.tar.gz +0 -0
- package/{doc → src/koffi/doc}/Makefile +0 -0
- package/{doc → src/koffi/doc}/benchmarks.md +0 -0
- package/{doc → src/koffi/doc}/benchmarks.xlsx +0 -0
- package/{doc → src/koffi/doc}/changes.md +0 -0
- package/{doc → src/koffi/doc}/conf.py +0 -0
- package/{doc → src/koffi/doc}/contribute.md +5 -5
- package/{doc → src/koffi/doc}/functions.md +0 -0
- package/{doc → src/koffi/doc}/index.rst +1 -1
- package/{doc → src/koffi/doc}/make.bat +0 -0
- package/{doc → src/koffi/doc}/memory.md +1 -0
- package/{doc → src/koffi/doc}/platforms.md +0 -0
- package/{doc → src/koffi/doc}/poetry.lock +0 -0
- package/{doc → src/koffi/doc}/pyproject.toml +0 -0
- package/{doc → src/koffi/doc}/start.md +0 -0
- package/{doc → src/koffi/doc}/static/bench_linux.png +0 -0
- package/{doc → src/koffi/doc}/static/bench_windows.png +0 -0
- package/{doc → src/koffi/doc}/static/custom.css +0 -0
- package/{doc → src/koffi/doc}/static/perf_linux_20220623.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_linux_20220623_2.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_linux_20220627.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_linux_20220628.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_linux_20220812.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_windows_20220623.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_windows_20220623_2.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_windows_20220627.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_windows_20220628.png +0 -0
- package/{doc → src/koffi/doc}/static/perf_windows_20220812.png +0 -0
- package/{doc → src/koffi/doc}/templates/badges.html +1 -1
- package/{doc → src/koffi/doc}/types.md +0 -0
- package/src/koffi/qemu/qemu/.gitkeep +0 -0
- package/{qemu → src/koffi/qemu}/qemu.js +217 -131
- package/{qemu → src/koffi/qemu}/registry/machines.json +24 -0
- package/{qemu → src/koffi/qemu}/registry/sha256sum.txt +0 -0
- package/src/{abi_arm32.cc → koffi/src/abi_arm32.cc} +1 -1
- package/src/{abi_arm32_fwd.S → koffi/src/abi_arm32_fwd.S} +0 -0
- package/src/{abi_arm64.cc → koffi/src/abi_arm64.cc} +1 -1
- package/src/{abi_arm64_fwd.S → koffi/src/abi_arm64_fwd.S} +0 -0
- package/src/{abi_arm64_fwd.asm → koffi/src/abi_arm64_fwd.asm} +0 -0
- package/src/{abi_riscv64.cc → koffi/src/abi_riscv64.cc} +1 -1
- package/src/{abi_riscv64_fwd.S → koffi/src/abi_riscv64_fwd.S} +0 -0
- package/src/{abi_x64_sysv.cc → koffi/src/abi_x64_sysv.cc} +1 -1
- package/src/{abi_x64_sysv_fwd.S → koffi/src/abi_x64_sysv_fwd.S} +0 -0
- package/src/{abi_x64_win.cc → koffi/src/abi_x64_win.cc} +1 -1
- package/src/{abi_x64_win_fwd.asm → koffi/src/abi_x64_win_fwd.asm} +0 -0
- package/src/{abi_x86.cc → koffi/src/abi_x86.cc} +1 -1
- package/src/{abi_x86_fwd.S → koffi/src/abi_x86_fwd.S} +0 -0
- package/src/{abi_x86_fwd.asm → koffi/src/abi_x86_fwd.asm} +0 -0
- package/src/{call.cc → koffi/src/call.cc} +1 -1
- package/src/{call.hh → koffi/src/call.hh} +2 -2
- package/src/{ffi.cc → koffi/src/ffi.cc} +34 -18
- package/src/{ffi.hh → koffi/src/ffi.hh} +5 -3
- package/src/{index.js → koffi/src/index.js} +0 -0
- package/src/{parser.cc → koffi/src/parser.cc} +1 -1
- package/src/{parser.hh → koffi/src/parser.hh} +1 -1
- package/src/{util.cc → koffi/src/util.cc} +1 -1
- package/src/{util.hh → koffi/src/util.hh} +1 -1
- package/{test → src/koffi/test}/CMakeLists.txt +14 -15
- package/{test → src/koffi/test}/async.js +0 -0
- package/{test → src/koffi/test}/callbacks.js +0 -0
- package/{test → src/koffi/test}/misc.c +13 -0
- package/{test → src/koffi/test}/misc.def +0 -0
- package/{test → src/koffi/test}/raylib.js +0 -0
- package/{test → src/koffi/test}/sqlite.js +1 -1
- package/{test → src/koffi/test}/sync.js +17 -0
- package/vendor/brotli/BUILD +144 -0
- package/vendor/brotli/CMakeLists.txt +421 -0
- package/vendor/brotli/CONTRIBUTING.md +27 -0
- package/vendor/brotli/LICENSE +19 -0
- package/vendor/brotli/MANIFEST.in +17 -0
- package/vendor/brotli/Makefile +55 -0
- package/vendor/brotli/Makefile.am +38 -0
- package/vendor/brotli/README +15 -0
- package/vendor/brotli/README.md +104 -0
- package/vendor/brotli/WORKSPACE +21 -0
- package/vendor/brotli/bootstrap +35 -0
- package/vendor/brotli/c/common/constants.c +15 -0
- package/vendor/brotli/c/common/constants.h +200 -0
- package/vendor/brotli/c/common/context.c +156 -0
- package/vendor/brotli/c/common/context.h +113 -0
- package/vendor/brotli/c/common/dictionary.c +5914 -0
- package/vendor/brotli/c/common/dictionary.h +64 -0
- package/vendor/brotli/c/common/platform.c +22 -0
- package/vendor/brotli/c/common/platform.h +594 -0
- package/vendor/brotli/c/common/transform.c +291 -0
- package/vendor/brotli/c/common/transform.h +85 -0
- package/vendor/brotli/c/common/version.h +26 -0
- package/vendor/brotli/c/dec/bit_reader.c +76 -0
- package/vendor/brotli/c/dec/bit_reader.h +351 -0
- package/vendor/brotli/c/dec/decode.c +2608 -0
- package/vendor/brotli/c/dec/huffman.c +339 -0
- package/vendor/brotli/c/dec/huffman.h +121 -0
- package/vendor/brotli/c/dec/prefix.h +732 -0
- package/vendor/brotli/c/dec/state.c +159 -0
- package/vendor/brotli/c/dec/state.h +365 -0
- package/vendor/brotli/c/enc/backward_references.c +145 -0
- package/vendor/brotli/c/enc/backward_references.h +39 -0
- package/vendor/brotli/c/enc/backward_references_hq.c +843 -0
- package/vendor/brotli/c/enc/backward_references_hq.h +95 -0
- package/vendor/brotli/c/enc/backward_references_inc.h +163 -0
- package/vendor/brotli/c/enc/bit_cost.c +35 -0
- package/vendor/brotli/c/enc/bit_cost.h +63 -0
- package/vendor/brotli/c/enc/bit_cost_inc.h +127 -0
- package/vendor/brotli/c/enc/block_encoder_inc.h +34 -0
- package/vendor/brotli/c/enc/block_splitter.c +194 -0
- package/vendor/brotli/c/enc/block_splitter.h +51 -0
- package/vendor/brotli/c/enc/block_splitter_inc.h +440 -0
- package/vendor/brotli/c/enc/brotli_bit_stream.c +1314 -0
- package/vendor/brotli/c/enc/brotli_bit_stream.h +84 -0
- package/vendor/brotli/c/enc/cluster.c +56 -0
- package/vendor/brotli/c/enc/cluster.h +48 -0
- package/vendor/brotli/c/enc/cluster_inc.h +320 -0
- package/vendor/brotli/c/enc/command.c +28 -0
- package/vendor/brotli/c/enc/command.h +190 -0
- package/vendor/brotli/c/enc/compress_fragment.c +790 -0
- package/vendor/brotli/c/enc/compress_fragment.h +61 -0
- package/vendor/brotli/c/enc/compress_fragment_two_pass.c +645 -0
- package/vendor/brotli/c/enc/compress_fragment_two_pass.h +54 -0
- package/vendor/brotli/c/enc/dictionary_hash.c +1846 -0
- package/vendor/brotli/c/enc/dictionary_hash.h +25 -0
- package/vendor/brotli/c/enc/encode.c +1927 -0
- package/vendor/brotli/c/enc/encoder_dict.c +33 -0
- package/vendor/brotli/c/enc/encoder_dict.h +43 -0
- package/vendor/brotli/c/enc/entropy_encode.c +503 -0
- package/vendor/brotli/c/enc/entropy_encode.h +122 -0
- package/vendor/brotli/c/enc/entropy_encode_static.h +539 -0
- package/vendor/brotli/c/enc/fast_log.c +105 -0
- package/vendor/brotli/c/enc/fast_log.h +66 -0
- package/vendor/brotli/c/enc/find_match_length.h +79 -0
- package/vendor/brotli/c/enc/hash.h +488 -0
- package/vendor/brotli/c/enc/hash_composite_inc.h +125 -0
- package/vendor/brotli/c/enc/hash_forgetful_chain_inc.h +293 -0
- package/vendor/brotli/c/enc/hash_longest_match64_inc.h +267 -0
- package/vendor/brotli/c/enc/hash_longest_match_inc.h +262 -0
- package/vendor/brotli/c/enc/hash_longest_match_quickly_inc.h +266 -0
- package/vendor/brotli/c/enc/hash_rolling_inc.h +212 -0
- package/vendor/brotli/c/enc/hash_to_binary_tree_inc.h +329 -0
- package/vendor/brotli/c/enc/histogram.c +100 -0
- package/vendor/brotli/c/enc/histogram.h +63 -0
- package/vendor/brotli/c/enc/histogram_inc.h +51 -0
- package/vendor/brotli/c/enc/literal_cost.c +175 -0
- package/vendor/brotli/c/enc/literal_cost.h +30 -0
- package/vendor/brotli/c/enc/memory.c +170 -0
- package/vendor/brotli/c/enc/memory.h +114 -0
- package/vendor/brotli/c/enc/metablock.c +663 -0
- package/vendor/brotli/c/enc/metablock.h +105 -0
- package/vendor/brotli/c/enc/metablock_inc.h +183 -0
- package/vendor/brotli/c/enc/params.h +46 -0
- package/vendor/brotli/c/enc/prefix.h +53 -0
- package/vendor/brotli/c/enc/quality.h +165 -0
- package/vendor/brotli/c/enc/ringbuffer.h +167 -0
- package/vendor/brotli/c/enc/static_dict.c +486 -0
- package/vendor/brotli/c/enc/static_dict.h +40 -0
- package/vendor/brotli/c/enc/static_dict_lut.h +5864 -0
- package/vendor/brotli/c/enc/utf8_util.c +85 -0
- package/vendor/brotli/c/enc/utf8_util.h +32 -0
- package/vendor/brotli/c/enc/write_bits.h +87 -0
- package/vendor/brotli/c/include/brotli/decode.h +344 -0
- package/vendor/brotli/c/include/brotli/encode.h +448 -0
- package/vendor/brotli/c/include/brotli/port.h +288 -0
- package/vendor/brotli/c/include/brotli/types.h +83 -0
- package/vendor/brotli/c/tools/brotli.c +1116 -0
- package/vendor/brotli/c/tools/brotli.md +107 -0
- package/vendor/brotli/compiler_config_setting.bzl +28 -0
- package/vendor/brotli/configure +8 -0
- package/vendor/brotli/configure-cmake +318 -0
- package/vendor/brotli/configure.ac +14 -0
- package/vendor/brotli/docs/brotli.1 +132 -0
- package/vendor/brotli/docs/constants.h.3 +47 -0
- package/vendor/brotli/docs/decode.h.3 +415 -0
- package/vendor/brotli/docs/encode.h.3 +586 -0
- package/vendor/brotli/docs/types.h.3 +117 -0
- package/vendor/brotli/premake5.lua +78 -0
- package/vendor/brotli/python/Makefile +57 -0
- package/vendor/brotli/python/README.md +54 -0
- package/vendor/brotli/python/_brotli.cc +753 -0
- package/vendor/brotli/python/bro.py +160 -0
- package/vendor/brotli/python/brotli.py +56 -0
- package/vendor/brotli/python/tests/__init__.py +0 -0
- package/vendor/brotli/python/tests/_test_utils.py +112 -0
- package/vendor/brotli/python/tests/bro_test.py +102 -0
- package/vendor/brotli/python/tests/compress_test.py +41 -0
- package/vendor/brotli/python/tests/compressor_test.py +94 -0
- package/vendor/brotli/python/tests/decompress_test.py +42 -0
- package/vendor/brotli/python/tests/decompressor_test.py +59 -0
- package/vendor/brotli/scripts/libbrotlicommon.pc.in +11 -0
- package/vendor/brotli/scripts/libbrotlidec.pc.in +12 -0
- package/vendor/brotli/scripts/libbrotlienc.pc.in +12 -0
- package/vendor/brotli/scripts/sources.lst +104 -0
- package/vendor/brotli/setup.cfg +5 -0
- package/vendor/brotli/setup.py +293 -0
- package/vendor/brotli/tests/Makefile +17 -0
- package/vendor/brotli/tests/compatibility_test.sh +25 -0
- package/vendor/brotli/tests/roundtrip_test.sh +36 -0
- package/vendor/brotli/tests/run-compatibility-test.cmake +31 -0
- package/vendor/brotli/tests/run-roundtrip-test.cmake +36 -0
- package/vendor/brotli/tests/testdata/empty +0 -0
- package/vendor/brotli/tests/testdata/empty.compressed +1 -0
- package/vendor/brotli/tests/testdata/ukkonooa +1 -0
- package/vendor/brotli/tests/testdata/ukkonooa.compressed +0 -0
- package/vendor/miniz/ChangeLog.md +235 -0
- package/vendor/miniz/LICENSE +22 -0
- package/vendor/miniz/examples/example1.c +105 -0
- package/vendor/miniz/examples/example2.c +164 -0
- package/vendor/miniz/examples/example3.c +269 -0
- package/vendor/miniz/examples/example4.c +102 -0
- package/vendor/miniz/examples/example5.c +327 -0
- package/vendor/miniz/examples/example6.c +166 -0
- package/vendor/miniz/miniz.c +7835 -0
- package/vendor/miniz/miniz.h +1422 -0
- package/vendor/miniz/readme.md +46 -0
- package/vendor/{sqlite3 → sqlite3mc}/sqlite3ext.h +18 -2
- package/vendor/{sqlite3/sqlite3.c → sqlite3mc/sqlite3mc.c} +60872 -4890
- package/vendor/sqlite3mc/sqlite3mc.def +312 -0
- package/vendor/{sqlite3/sqlite3.h → sqlite3mc/sqlite3mc.h} +480 -36
- package/build/qemu/2.1.3/koffi_darwin_arm64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_darwin_x64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_freebsd_arm64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_freebsd_ia32.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_freebsd_x64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_linux_arm32hf.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_linux_arm64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_linux_ia32.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_linux_riscv64hf64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_linux_x64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_openbsd_ia32.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_openbsd_x64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_win32_arm64.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_win32_ia32.tar.gz +0 -0
- package/build/qemu/2.1.3/koffi_win32_x64.tar.gz +0 -0
- package/vendor/_patches/glfw_001_fix_openbsd_xlib_soname.patch +0 -145
- package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj +0 -226
- package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj.filters +0 -10
- package/vendor/raylib/projects/VS2019-Android/raylib_android/raylib_android.NativeActivity/raylib_android.NativeActivity.vcxproj.user +0 -4
- package/vendor/raylib/projects/VS2019-Android/raylib_android.sln +0 -75
- package/vendor/raylib/projects/VS2022/examples/audio_module_playing.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/audio_multichannel_sound.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/audio_music_stream.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/audio_raw_stream.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/audio_sound_loading.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/audio_stream_effects.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_2d_camera.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_2d_camera_mouse_zoom.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_2d_camera_platformer.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_3d_camera_first_person.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_3d_camera_free.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_3d_camera_mode.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_3d_picking.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_basic_screen_manager.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_basic_window.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_custom_frame_control.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_custom_logging.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_drop_files.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_input_gamepad.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_input_gestures.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_input_keys.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_input_mouse.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_input_mouse_wheel.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_input_multitouch.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_loading_thread.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_random_values.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_scissor_test.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_split_screen.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_storage_values.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_vr_simulator.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_window_flags.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_window_letterbox.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/core_window_should_close.vcxproj +0 -390
- package/vendor/raylib/projects/VS2022/examples/core_world_screen.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/easings_testbed.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/embedded_files_loading.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_animation.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_billboard.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_box_collisions.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_cubicmap.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_first_person_maze.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_geometric_shapes.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_heightmap.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_loading.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_loading_gltf.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_loading_vox.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_mesh_generation.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_mesh_picking.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_orthographic_projection.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_rlgl_solar_system.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_skybox.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_waving_cubes.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/models_yaw_pitch_roll.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/rlgl_compute_shaders.vcxproj +0 -391
- package/vendor/raylib/projects/VS2022/examples/rlgl_standalone.vcxproj +0 -391
- package/vendor/raylib/projects/VS2022/examples/shaders_basic_lighting.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_custom_uniform.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_eratosthenes.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_fog.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_hot_reloading.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_julia_set.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_mesh_instancing.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_model_shader.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_multi_sample2d.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_palette_switch.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_postprocessing.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_raymarching.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_shapes_textures.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_simple_mask.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_spotlight.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_texture_drawing.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shaders_texture_waves.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_basic_shapes.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_bouncing_ball.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_collision_area.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_colors_palette.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_draw_circle_sector.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_draw_rectangle_rounded.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_draw_ring.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_easings_ball_anim.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_easings_box_anim.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_easings_rectangle_array.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_following_eyes.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_lines_bezier.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_logo_raylib.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_logo_raylib_anim.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/shapes_rectangle_scaling.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_codepoints_loading.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_draw_3d.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_font_filters.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_font_loading.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_font_sdf.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_font_spritefont.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_format_text.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_input_box.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_raylib_fonts.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_rectangle_bounds.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_unicode.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/text_writing_anim.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_background_scrolling.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_blend_modes.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_bunnymark.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_draw_tiled.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_fog_of_war.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_gif_player.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_image_drawing.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_image_generation.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_image_loading.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_image_processing.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_image_text.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_logo_raylib.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_mouse_painting.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_npatch_drawing.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_particles_blending.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_polygon.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_raw_data.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_sprite_anim.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_sprite_button.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_sprite_explosion.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_srcrec_dstrec.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/examples/textures_to_image.vcxproj +0 -387
- package/vendor/raylib/projects/VS2022/raylib/raylib.vcxproj +0 -340
- package/vendor/raylib/projects/VS2022/raylib.sln +0 -2347
- package/vendor/sqlite3/shell.c +0 -23496
|
@@ -0,0 +1,421 @@
|
|
|
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 ()
|
|
@@ -0,0 +1,27 @@
|
|
|
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).
|
|
@@ -0,0 +1,19 @@
|
|
|
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.
|
|
@@ -0,0 +1,17 @@
|
|
|
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
|
|
@@ -0,0 +1,55 @@
|
|
|
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 $@
|
|
@@ -0,0 +1,38 @@
|
|
|
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
|
|
@@ -0,0 +1,15 @@
|
|
|
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
|