zstd-native-ruby 1.0.1 → 1.0.2
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.
- checksums.yaml +4 -4
- data/LICENSE +4 -2
- data/README.md +50 -23
- data/ext/zstd_native/Makefile +269 -0
- data/ext/zstd_native/extconf.rb +37 -0
- data/{vendor → ext/zstd_native}/zstd/CONTRIBUTING.md +1 -6
- data/{vendor → ext/zstd_native}/zstd/Makefile +6 -5
- data/{vendor → ext/zstd_native}/zstd/README.md +35 -42
- data/ext/zstd_native/zstd/build/cmake/CMakeLists.txt +228 -0
- data/{vendor → ext/zstd_native}/zstd/build/cmake/CMakeModules/AddZstdCompilationFlags.cmake +19 -21
- data/{vendor → ext/zstd_native}/zstd/build/cmake/README.md +0 -9
- data/{vendor → ext/zstd_native}/zstd/build/cmake/lib/CMakeLists.txt +6 -9
- data/{vendor → ext/zstd_native}/zstd/build/meson/lib/meson.build +0 -4
- data/{vendor → ext/zstd_native}/zstd/build/meson/meson.build +2 -1
- data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/main.c +2 -3
- data/{vendor → ext/zstd_native}/zstd/contrib/largeNbDicts/largeNbDicts.c +0 -2
- data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/linux_zstd.h +0 -166
- data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/zstd_compress_module.c +0 -49
- data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/zstd_decompress_module.c +0 -36
- data/{vendor → ext/zstd_native}/zstd/contrib/premake/zstd.lua +0 -1
- data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Logging.h +0 -1
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/Makefile +1 -3
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/parallel_compression.c +84 -124
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/parallel_processing.c +5 -2
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/tests/Makefile +2 -22
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/tests/seekable_tests.c +0 -12
- data/{vendor → ext/zstd_native}/zstd/doc/zstd_compression_format.md +2 -3
- data/{vendor → ext/zstd_native}/zstd/doc/zstd_manual.html +24 -31
- data/{vendor → ext/zstd_native}/zstd/lib/Makefile +9 -9
- data/{vendor → ext/zstd_native}/zstd/lib/README.md +4 -23
- data/{vendor → ext/zstd_native}/zstd/lib/common/bits.h +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/common/compiler.h +6 -24
- data/ext/zstd_native/zstd/lib/common/debug.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/entropy_common.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/error_private.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/fse_decompress.o +0 -0
- data/ext/zstd_native/zstd/lib/common/pool.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/portability_macros.h +0 -19
- data/{vendor → ext/zstd_native}/zstd/lib/common/threading.c +2 -16
- data/ext/zstd_native/zstd/lib/common/threading.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/xxhash.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/zstd_common.c +0 -9
- data/ext/zstd_native/zstd/lib/common/zstd_common.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/zstd_internal.h +2 -4
- data/{vendor → ext/zstd_native}/zstd/lib/compress/fse_compress.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/hist.c +191 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/hist.h +0 -4
- data/ext/zstd_native/zstd/lib/compress/hist.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/huf_compress.c +0 -1
- data/{vendor → ext/zstd_native}/zstd/lib/compress/huf_compress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress.c +16 -535
- data/ext/zstd_native/zstd/lib/compress/zstd_compress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_internal.h +3 -3
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_literals.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_sequences.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/zstd_compress_superblock.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/zstd_double_fast.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/zstd_fast.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_lazy.c +3 -47
- data/ext/zstd_native/zstd/lib/compress/zstd_lazy.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/zstd_ldm.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_opt.c +10 -2
- data/ext/zstd_native/zstd/lib/compress/zstd_opt.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_preSplit.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstdmt_compress.c +14 -15
- data/ext/zstd_native/zstd/lib/compress/zstdmt_compress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/huf_decompress.c +48 -57
- data/ext/zstd_native/zstd/lib/decompress/huf_decompress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/huf_decompress_amd64.S +18 -182
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_ddict.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress_block.c +65 -167
- data/ext/zstd_native/zstd/lib/decompress/zstd_decompress_block.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/cover.c +67 -98
- data/ext/zstd_native/zstd/lib/dictBuilder/cover.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/divsufsort.c +4 -4
- data/ext/zstd_native/zstd/lib/dictBuilder/divsufsort.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/fastcover.c +40 -39
- data/ext/zstd_native/zstd/lib/dictBuilder/fastcover.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/zdict.c +14 -18
- data/ext/zstd_native/zstd/lib/dictBuilder/zdict.o +0 -0
- data/ext/zstd_native/zstd/lib/dll/example/build_package.bat +20 -0
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v01.c +5 -6
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v03.c +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v04.c +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v05.c +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v06.c +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/libzstd.mk +1 -4
- data/{vendor → ext/zstd_native}/zstd/lib/libzstd.pc.in +0 -1
- data/{vendor → ext/zstd_native}/zstd/lib/zstd.h +30 -41
- data/{vendor → ext/zstd_native}/zstd/programs/Makefile +8 -8
- data/{vendor → ext/zstd_native}/zstd/programs/README.md +1 -1
- data/{vendor → ext/zstd_native}/zstd/programs/benchzstd.c +62 -51
- data/{vendor → ext/zstd_native}/zstd/programs/benchzstd.h +2 -2
- data/{vendor → ext/zstd_native}/zstd/programs/dibio.c +5 -12
- data/{vendor → ext/zstd_native}/zstd/programs/fileio.c +152 -405
- data/{vendor → ext/zstd_native}/zstd/programs/fileio.h +1 -1
- data/{vendor → ext/zstd_native}/zstd/programs/fileio_types.h +1 -1
- data/{vendor → ext/zstd_native}/zstd/programs/timefn.c +1 -3
- data/{vendor → ext/zstd_native}/zstd/programs/util.c +65 -153
- data/{vendor → ext/zstd_native}/zstd/programs/util.h +2 -4
- data/{vendor → ext/zstd_native}/zstd/programs/zstd.1 +37 -225
- data/{vendor → ext/zstd_native}/zstd/programs/zstd.1.md +14 -14
- data/{vendor → ext/zstd_native}/zstd/programs/zstdcli.c +65 -82
- data/{vendor → ext/zstd_native}/zstd/programs/zstdcli_trace.c +1 -2
- data/{vendor → ext/zstd_native}/zstd/programs/zstdgrep.1 +1 -1
- data/{vendor → ext/zstd_native}/zstd/programs/zstdless.1 +1 -1
- data/{vendor → ext/zstd_native}/zstd/tests/Makefile +4 -8
- data/{vendor → ext/zstd_native}/zstd/tests/automated_benchmarking.py +2 -2
- data/{vendor/zstd/tests/largeDictionary.c → ext/zstd_native/zstd/tests/bigdict.c} +18 -16
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/help.sh.stdout.glob +1 -1
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/common/platform.sh +0 -11
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/multi-threaded.sh +0 -7
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/multi-threaded.sh.stderr.exact +0 -10
- data/ext/zstd_native/zstd/tests/cli-tests/dict-builder/no-inputs.sh.stderr.exact +5 -0
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-dir-without-write-perm.sh.stderr.exact +0 -4
- data/{vendor/zstd/tests/cli-tests/file-stat/compress-file-to-file.sh.stderr.glob → ext/zstd_native/zstd/tests/cli-tests/file-stat/compress-file-to-file.sh.stderr.exact} +0 -4
- data/{vendor/zstd/tests/cli-tests/file-stat/compress-stdin-to-file.sh.stderr.glob → ext/zstd_native/zstd/tests/cli-tests/file-stat/compress-stdin-to-file.sh.stderr.exact} +0 -4
- data/{vendor/zstd/tests/cli-tests/file-stat/decompress-file-to-file.sh.stderr.glob → ext/zstd_native/zstd/tests/cli-tests/file-stat/decompress-file-to-file.sh.stderr.exact} +0 -4
- data/{vendor/zstd/tests/cli-tests/file-stat/decompress-stdin-to-file.sh.stderr.glob → ext/zstd_native/zstd/tests/cli-tests/file-stat/decompress-stdin-to-file.sh.stderr.exact} +0 -4
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/run.py +1 -2
- data/{vendor → ext/zstd_native}/zstd/tests/fullbench.c +0 -1
- data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_helpers.c +3 -2
- data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_helpers.h +0 -1
- data/{vendor → ext/zstd_native}/zstd/tests/fuzzer.c +0 -335
- data/ext/zstd_native/zstd/tests/largeDictionary.c +128 -0
- data/{vendor → ext/zstd_native}/zstd/tests/legacy.c +0 -2
- data/{vendor → ext/zstd_native}/zstd/tests/longmatch.c +17 -38
- data/{vendor → ext/zstd_native}/zstd/tests/paramgrill.c +3 -3
- data/{vendor → ext/zstd_native}/zstd/tests/playTests.sh +34 -35
- data/{vendor → ext/zstd_native}/zstd/tests/regression/method.c +3 -3
- data/{vendor → ext/zstd_native}/zstd/tests/zstreamtest.c +1 -1
- data/ext/zstd_native/zstd_native.c +852 -0
- data/ext/zstd_native/zstd_native.o +0 -0
- data/ext/zstd_native/zstd_native.so +0 -0
- data/lib/zstd_native/version.rb +3 -0
- data/lib/zstd_native/zstd_native.so +0 -0
- data/lib/zstd_native.rb +6 -0
- metadata +647 -657
- data/CLAUDE.md +0 -101
- data/ext/zstd_ruby/extconf.rb +0 -35
- data/ext/zstd_ruby/zstd_ruby.c +0 -221
- data/lib/zstd_ruby.rb +0 -68
- data/vendor/zstd/CMakeLists.txt +0 -11
- data/vendor/zstd/build/cmake/CMakeLists.txt +0 -81
- data/vendor/zstd/build/cmake/CMakeModules/ZstdBuild.cmake +0 -42
- data/vendor/zstd/build/cmake/CMakeModules/ZstdDependencies.cmake +0 -30
- data/vendor/zstd/build/cmake/CMakeModules/ZstdOptions.cmake +0 -68
- data/vendor/zstd/build/cmake/CMakeModules/ZstdPackage.cmake +0 -42
- data/vendor/zstd/build/cmake/CMakeModules/ZstdVersion.cmake +0 -31
- data/vendor/zstd/lib/common/debug.o +0 -0
- data/vendor/zstd/lib/common/pool.o +0 -0
- data/vendor/zstd/lib/common/threading.o +0 -0
- data/vendor/zstd/lib/common/zstd_common.o +0 -0
- data/vendor/zstd/lib/compress/hist.c +0 -446
- data/vendor/zstd/lib/compress/hist.o +0 -0
- data/vendor/zstd/lib/compress/zstd_compress.o +0 -0
- data/vendor/zstd/lib/compress/zstd_compress_superblock.o +0 -0
- data/vendor/zstd/lib/compress/zstd_double_fast.o +0 -0
- data/vendor/zstd/lib/compress/zstd_fast.o +0 -0
- data/vendor/zstd/lib/compress/zstd_lazy.o +0 -0
- data/vendor/zstd/lib/compress/zstd_ldm.o +0 -0
- data/vendor/zstd/lib/compress/zstd_opt.o +0 -0
- data/vendor/zstd/lib/compress/zstdmt_compress.o +0 -0
- data/vendor/zstd/lib/decompress/huf_decompress.o +0 -0
- data/vendor/zstd/lib/decompress/zstd_decompress_block.o +0 -0
- data/vendor/zstd/lib/dll/example/build_package.bat +0 -55
- data/vendor/zstd/lib/install_oses.mk +0 -17
- data/vendor/zstd/tests/cli-tests/bin/unzstd +0 -1
- data/vendor/zstd/tests/cli-tests/bin/zstdcat +0 -1
- data/vendor/zstd/tests/cli-tests/determinism/basic.sh +0 -36
- data/vendor/zstd/tests/cli-tests/determinism/basic.sh.stderr.exact +0 -0
- data/vendor/zstd/tests/cli-tests/determinism/basic.sh.stdout.exact +0 -880
- data/vendor/zstd/tests/cli-tests/determinism/multithread.sh +0 -45
- data/vendor/zstd/tests/cli-tests/determinism/multithread.sh.stderr.exact +0 -0
- data/vendor/zstd/tests/cli-tests/determinism/multithread.sh.stdout.exact +0 -260
- data/vendor/zstd/tests/cli-tests/determinism/reuse.sh +0 -44
- data/vendor/zstd/tests/cli-tests/determinism/reuse.sh.stderr.exact +0 -0
- data/vendor/zstd/tests/cli-tests/determinism/reuse.sh.stdout.exact +0 -19
- data/vendor/zstd/tests/cli-tests/determinism/setup +0 -5
- data/vendor/zstd/tests/cli-tests/determinism/setup_once +0 -30
- data/vendor/zstd/tests/cli-tests/dict-builder/no-inputs.sh.stderr.exact +0 -5
- data/vendor/zstd/tests/test_process_substitution.bash +0 -92
- /data/{vendor → ext/zstd_native}/zstd/CHANGELOG +0 -0
- /data/{vendor → ext/zstd_native}/zstd/CODE_OF_CONDUCT.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/COPYING +0 -0
- /data/{vendor → ext/zstd_native}/zstd/LICENSE +0 -0
- /data/{vendor → ext/zstd_native}/zstd/Package.swift +0 -0
- /data/{vendor → ext/zstd_native}/zstd/SECURITY.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/TESTING.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/LICENSE +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/fullbench/fullbench.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/fuzzer/fuzzer.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/zstd/zstd.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/zstd.sln +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/zstdlib/zstdlib.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/CompileAsCpp.props +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/datagen/datagen.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/fullbench/fullbench.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/fuzzer/fuzzer.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/libzstd/libzstd.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/libzstd-dll/libzstd-dll.rc +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/libzstd-dll/libzstd-dll.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/zstd/zstd.rc +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/zstd/zstd.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/zstd.sln +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2010.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2012.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2013.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2015.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2017.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2017Community.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2017Enterprise.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2017Professional.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VSPreview.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.generic.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/CMakeModules/FindLibLZ4.cmake +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/CMakeModules/GetZstdLibraryVersion.cmake +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/CMakeModules/JoinPaths.cmake +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/contrib/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/contrib/gen_html/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/contrib/pzstd/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/lib/cmake_uninstall.cmake.in +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/programs/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/tests/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/zstdConfig.cmake.in +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/GetZstdLibraryVersion.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/InstallSymlink.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/contrib/gen_html/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/contrib/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/contrib/pzstd/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/meson_options.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/programs/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/tests/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/tests/valgrindTest.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/build_decoder_test.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/build_library_test.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/combine.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/combine.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/create_single_file_decoder.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/create_single_file_library.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/emscripten.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/roundtrip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/shell.html +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/simple.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/testcard-dxt1.inl +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/testcard-zstd.inl +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/testcard.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/zstd-in.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/zstddeclib-in.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/fullbench/fullbench.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/fuzzer/fuzzer.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/zstd/zstd.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/zstd.sln +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/zstdlib/zstdlib.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/cleanTabs +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/diagnose_corruption/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/diagnose_corruption/check_flipped_bits.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/docker/Dockerfile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/docker/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/sequence_producer.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/sequence_producer.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/freestanding_lib/freestanding.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/gen_html/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/gen_html/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/gen_html/gen-zstd-manual.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/gen_html/gen_html.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/largeNbDicts/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/largeNbDicts/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/btrfs-benchmark.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/btrfs-extract-benchmark.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/decompress_sources.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/linux.mk +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/mem.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/squashfs-benchmark.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/compiler.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/errno.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/kernel.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/limits.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/math64.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/module.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/printk.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/stddef.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/swab.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/types.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/unaligned.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/xxhash.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/macro-test.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/static_test.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/test.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/zstd_common_module.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/zstd_deps.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/match_finders/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/match_finders/zstd_edist.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/match_finders/zstd_edist.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/premake/premake4.lua +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/ErrorHolder.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Options.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Options.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Pzstd.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Pzstd.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/SkippableFrame.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/SkippableFrame.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/images/Cspeed.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/images/Dspeed.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/main.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/OptionsTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/PzstdTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/RoundTrip.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/RoundTripTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/Buffer.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/FileSystem.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/Likely.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/Portability.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/Range.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/ResourcePool.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/ScopeGuard.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/ThreadPool.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/WorkQueue.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/BufferTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/RangeTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/ResourcePoolTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/ScopeGuardTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/ThreadPoolTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/WorkQueueTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/recovery/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/recovery/recover_directory.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/seekable_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/seekable_decompression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/seekable_decompression_mem.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/zstd_seekable.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/zstd_seekable_compression_format.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/zstdseek_compress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/zstdseek_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seqBench/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seqBench/seqBench.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/snap/snapcraft.yaml +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/decompressor_errata.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/decompressor_permissive.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/harness.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/zstd_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/zstd_decompress.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/CSpeed2.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/DCspeed5.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/DSpeed3.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/cdict_v136.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/dict-cr.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/dict-cs.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/dict-ds.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/zstd_cdict_v1_3_5.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/zstd_logo86.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/common.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/dictionary_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/dictionary_decompression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/multiple_simple_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/multiple_streaming_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/simple_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/simple_decompression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/streaming_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/streaming_compression_thread_pool.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/streaming_decompression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/streaming_memory_usage.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/allocations.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/bitstream.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/cpu.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/debug.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/debug.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/entropy_common.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/error_private.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/error_private.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/fse.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/fse_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/huf.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/mem.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/pool.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/pool.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/threading.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/xxhash.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/xxhash.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/zstd_deps.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/zstd_trace.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/clevels.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/fse_compress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_literals.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_literals.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_sequences.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_sequences.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_superblock.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_superblock.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_cwksp.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_double_fast.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_double_fast.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_fast.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_fast.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_lazy.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_ldm.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_ldm.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_ldm_geartab.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_opt.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_preSplit.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_preSplit.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstdmt_compress.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_ddict.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_ddict.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress_block.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress_internal.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/deprecated/zbuff.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/deprecated/zbuff_common.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/deprecated/zbuff_compress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/deprecated/zbuff_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/cover.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/divsufsort.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dll/example/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dll/example/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dll/example/fullbench-dll.sln +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dll/example/fullbench-dll.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_legacy.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v01.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v02.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v02.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v03.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v04.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v05.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v06.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v07.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v07.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/module.modulemap +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/zdict.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/zstd_errors.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/benchfn.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/benchfn.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/datagen.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/datagen.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/dibio.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/fileio_asyncio.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/fileio_asyncio.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/fileio_common.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/lorem.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/lorem.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/platform.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/timefn.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/windres/verrsrc.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/windres/zstd.rc +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/windres/zstd32.res +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/windres/zstd64.res +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdcli_trace.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdgrep +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdgrep.1.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdless +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdless.1.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/DEPRECATED-test-zstd-speed.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/checkTag.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/check_size.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/args.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/args.sh.exit +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/args.sh.stderr.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/help.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/memlimit.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/memlimit.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/memlimit.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/output_dir.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/output_dir.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/output_dir.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/version.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/version.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/cmp_size +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/datagen +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/die +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/println +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/zstd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/zstdgrep +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/zstdless +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/setup +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdgrep.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdgrep.sh.exit +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdgrep.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdgrep.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdless.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdless.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdless.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/common/format.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/common/mtime.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/common/permissions.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/adapt.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/basic.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/compress-literals.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/format.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/golden.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/gzip-compat.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/levels.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/levels.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/long-distance-matcher.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/multiple-files.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/multiple-files.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/row-match-finder.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/setup +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/stream-size.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/verbose-wlog.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/verbose-wlog.sh.stderr.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/verbose-wlog.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/window-resize.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/window-resize.sh.stderr.ignore +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/window-resize.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/detectErrors.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/golden.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/pass-through.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/pass-through.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/pass-through.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dict-builder/empty-input.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dict-builder/empty-input.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dict-builder/no-inputs.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dict-builder/no-inputs.sh.exit +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/dictionary-mismatch.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/dictionary-mismatch.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/golden.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/setup +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/setup_once +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-handling/directory-mirror.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-handling/directory-mirror.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-handling/directory-mirror.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-dir-without-write-perm.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-file.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-stdout.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-stdout.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-stdin-to-file.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-stdin-to-stdout.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-stdin-to-stdout.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-file-to-file.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-file-to-stdout.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-file-to-stdout.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-stdin-to-file.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-stdin-to-stdout.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-stdin-to-stdout.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/progress/no-progress.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/progress/no-progress.sh.stderr.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/progress/progress.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/progress/progress.sh.stderr.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/zstd-symlinks/setup +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/zstd-symlinks/zstdcat.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/zstd-symlinks/zstdcat.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/datagencli.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/decodecorpus.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/dict-files/zero-weight-dict +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/external_matchfinder.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/external_matchfinder.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/block_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/block_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/decompress_cross_format.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/decompress_dstSize_tooSmall.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/dictionary_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/dictionary_loader.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/dictionary_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/dictionary_stream_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fse_read_ncount.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_data_producer.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_data_producer.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_third_party_seq_prod.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/generate_sequences.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/huf_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/huf_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/raw_dictionary_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/regression_driver.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/seekable_roundtrip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/seq_prod_fuzz_example/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/seq_prod_fuzz_example/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/seq_prod_fuzz_example/example_seq_prod.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/sequence_compression_api.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/simple_compress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/simple_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/simple_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/stream_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/stream_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/zstd_frame_info.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/zstd_helpers.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/zstd_helpers.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-compression/PR-3517-block-splitter-corruption-test +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-compression/http +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-compression/huffman-compressed-larger +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-compression/large-literal-and-match-lengths +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression/block-128k.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression/empty-block.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression/rle-first-block.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression/zeroSeq_2B.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression-errors/off0.bin.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression-errors/truncated_huff_state.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression-errors/zeroSeq_extraneous.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-dictionaries/http-dict-missing-symbols +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/gzip-env.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/helin-segv.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/help-version.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/hufts-segv.gz +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/hufts.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/init.cfg +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/init.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/keep.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/list.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/memcpy-abuse.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/mixed.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/null-suffix-clobber.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/stdin.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/test-driver.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/trailing-nul.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/unpack-invalid.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/z-suffix.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/zdiff.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/zgrep-context.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/zgrep-f.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/zgrep-signal.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/znew-k.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/invalidDictionaries.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/libzstd_builds.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/loremOut.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/loremOut.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/poolTests.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/rateLimiter.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/config.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/config.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/data.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/data.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/levels.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/method.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/result.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/result.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/results.csv +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/test.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/roundTripCrash.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/seqgen.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/seqgen.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/test-license.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/test-variants.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/test-zstd-versions.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/example.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/example_original.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/fitblk.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/fitblk_original.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/minigzip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/zwrapbench.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzclose.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzcompatibility.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzguts.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzlib.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzread.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzwrite.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/zstd_zlibwrapper.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/zstd_zlibwrapper.h +0 -0
data/CLAUDE.md
DELETED
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
# CLAUDE.md
|
|
2
|
-
|
|
3
|
-
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
-
|
|
5
|
-
## Project Overview
|
|
6
|
-
|
|
7
|
-
zstd-ruby is a Ruby gem that provides bindings to the Facebook Zstandard (zstd) compression library. The gem bundles the native zstd C library and exposes compression/decompression functionality to Ruby applications.
|
|
8
|
-
|
|
9
|
-
## Architecture
|
|
10
|
-
|
|
11
|
-
### Native Extension Structure
|
|
12
|
-
- **ext/zstd_ruby/**: Contains C extension code that interfaces with the zstd library
|
|
13
|
-
- Wraps zstd C API for compression and decompression
|
|
14
|
-
- Handles Ruby<->C type conversions and memory management
|
|
15
|
-
- Uses extconf.rb to generate the Makefile for compilation
|
|
16
|
-
- **lib/**: Ruby wrapper code that provides the high-level API
|
|
17
|
-
- Main entry point is `lib/zstd_ruby.rb`
|
|
18
|
-
- Requires the compiled native extension
|
|
19
|
-
- Provides user-friendly Ruby API on top of C bindings
|
|
20
|
-
|
|
21
|
-
### Bundled Library
|
|
22
|
-
- **vendor/zstd/**: Contains the Facebook zstd library source code
|
|
23
|
-
- Bundled to ensure consistent behavior across platforms
|
|
24
|
-
- Version should be tracked and updated periodically
|
|
25
|
-
- Library is compiled as part of gem installation
|
|
26
|
-
|
|
27
|
-
### API Design
|
|
28
|
-
The gem should support:
|
|
29
|
-
- File-based compression: input filename → output filename
|
|
30
|
-
- File-based decompression: input filename → output filename
|
|
31
|
-
- Compression level parameter (passed to zstd library during compression)
|
|
32
|
-
|
|
33
|
-
## Development Commands
|
|
34
|
-
|
|
35
|
-
### Setup
|
|
36
|
-
```bash
|
|
37
|
-
bundle install # Install dependencies
|
|
38
|
-
rake compile # Compile the native extension
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
### Testing
|
|
42
|
-
```bash
|
|
43
|
-
rake test # Run full test suite
|
|
44
|
-
ruby test/test_*.rb # Run a specific test file
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
### Building
|
|
48
|
-
```bash
|
|
49
|
-
rake build # Build the gem package
|
|
50
|
-
gem install pkg/*.gem # Install locally built gem
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
### Release
|
|
54
|
-
```bash
|
|
55
|
-
rake release # Build and push to RubyGems.org
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
## Native Extension Development
|
|
59
|
-
|
|
60
|
-
### Compilation
|
|
61
|
-
The native extension must be compiled before running tests or using the gem in development:
|
|
62
|
-
```bash
|
|
63
|
-
rake compile
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
After making changes to C code in ext/, recompile before testing.
|
|
67
|
-
|
|
68
|
-
### Debugging
|
|
69
|
-
- Use `printf` debugging in C code for troubleshooting
|
|
70
|
-
- Check `mkmf.log` in ext/zstd_ruby/ if compilation fails
|
|
71
|
-
- Ensure proper memory management (allocate/free) to prevent leaks
|
|
72
|
-
|
|
73
|
-
## Testing Approach
|
|
74
|
-
|
|
75
|
-
This gem was developed using Test-Driven Development (TDD):
|
|
76
|
-
1. Tests were written first to define expected behavior
|
|
77
|
-
2. Implementation follows the test specifications
|
|
78
|
-
3. All tests must pass before considering features complete
|
|
79
|
-
|
|
80
|
-
Test files cover:
|
|
81
|
-
- Basic compression/decompression operations
|
|
82
|
-
- Various compression levels
|
|
83
|
-
- Edge cases (empty files, large files, invalid inputs)
|
|
84
|
-
- Error handling
|
|
85
|
-
|
|
86
|
-
## Important Notes
|
|
87
|
-
|
|
88
|
-
### Platform Compatibility
|
|
89
|
-
- The gem includes native extensions that must compile on installation
|
|
90
|
-
- Supports common platforms: Linux, macOS, Windows
|
|
91
|
-
- The bundled zstd library ensures consistent behavior across platforms
|
|
92
|
-
|
|
93
|
-
### Memory Management
|
|
94
|
-
- C extension must properly manage memory allocation/deallocation
|
|
95
|
-
- Use Ruby's garbage collector integration appropriately
|
|
96
|
-
- Clean up temporary buffers after compression/decompression
|
|
97
|
-
|
|
98
|
-
### Compression Levels
|
|
99
|
-
- zstd supports compression levels typically from 1 (fastest) to 22 (best compression)
|
|
100
|
-
- Level 3 is default if not specified
|
|
101
|
-
- Validate compression level input in Ruby layer before passing to C
|
data/ext/zstd_ruby/extconf.rb
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
require "mkmf"
|
|
2
|
-
|
|
3
|
-
# Get the path to the bundled zstd library
|
|
4
|
-
zstd_path = File.expand_path("../../../vendor/zstd", __FILE__)
|
|
5
|
-
zstd_lib_path = File.join(zstd_path, "lib")
|
|
6
|
-
|
|
7
|
-
# Add include directories for zstd headers
|
|
8
|
-
$INCFLAGS << " -I#{zstd_lib_path}"
|
|
9
|
-
$INCFLAGS << " -I#{File.join(zstd_lib_path, 'common')}"
|
|
10
|
-
$INCFLAGS << " -I#{File.join(zstd_lib_path, 'compress')}"
|
|
11
|
-
$INCFLAGS << " -I#{File.join(zstd_lib_path, 'decompress')}"
|
|
12
|
-
|
|
13
|
-
# Set compilation flags
|
|
14
|
-
$CFLAGS << " -O3 -std=c99 -DZSTD_MULTITHREAD -DZSTD_DISABLE_ASM"
|
|
15
|
-
|
|
16
|
-
# Get list of zstd source files
|
|
17
|
-
zstd_sources = []
|
|
18
|
-
zstd_sources += Dir[File.join(zstd_lib_path, "common/*.c")]
|
|
19
|
-
zstd_sources += Dir[File.join(zstd_lib_path, "compress/*.c")]
|
|
20
|
-
zstd_sources += Dir[File.join(zstd_lib_path, "decompress/*.c")]
|
|
21
|
-
|
|
22
|
-
# Filter out legacy and deprecated files
|
|
23
|
-
zstd_sources.reject! { |f| f.include?("legacy") || f.include?("deprecated") }
|
|
24
|
-
|
|
25
|
-
# Add zstd source files to be compiled
|
|
26
|
-
$srcs = ["zstd_ruby.c"] + zstd_sources
|
|
27
|
-
|
|
28
|
-
# Set additional object files
|
|
29
|
-
$objs = $srcs.map { |s| s.sub(/\.c$/, ".o") }
|
|
30
|
-
|
|
31
|
-
# Threading support
|
|
32
|
-
have_library("pthread")
|
|
33
|
-
|
|
34
|
-
# Create the Makefile
|
|
35
|
-
create_makefile("zstd_ruby/zstd_ruby")
|
data/ext/zstd_ruby/zstd_ruby.c
DELETED
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
#include <ruby.h>
|
|
2
|
-
#include <zstd.h>
|
|
3
|
-
#include <stdio.h>
|
|
4
|
-
#include <stdlib.h>
|
|
5
|
-
#include <string.h>
|
|
6
|
-
|
|
7
|
-
static VALUE mZstdRuby;
|
|
8
|
-
|
|
9
|
-
#define BUFFER_SIZE (128 * 1024) // 128KB buffer
|
|
10
|
-
|
|
11
|
-
/*
|
|
12
|
-
* Compress a file using zstd
|
|
13
|
-
*
|
|
14
|
-
* @param input_path [String] path to input file
|
|
15
|
-
* @param output_path [String] path to output file
|
|
16
|
-
* @param level [Integer] compression level (1-22)
|
|
17
|
-
* @return [Boolean] true on success
|
|
18
|
-
*/
|
|
19
|
-
static VALUE zstd_compress_file(VALUE self, VALUE input_path, VALUE output_path, VALUE level) {
|
|
20
|
-
Check_Type(input_path, T_STRING);
|
|
21
|
-
Check_Type(output_path, T_STRING);
|
|
22
|
-
Check_Type(level, T_FIXNUM);
|
|
23
|
-
|
|
24
|
-
const char *input_path_str = StringValueCStr(input_path);
|
|
25
|
-
const char *output_path_str = StringValueCStr(output_path);
|
|
26
|
-
int compression_level = FIX2INT(level);
|
|
27
|
-
|
|
28
|
-
FILE *input_file = fopen(input_path_str, "rb");
|
|
29
|
-
if (!input_file) {
|
|
30
|
-
rb_raise(rb_eRuntimeError, "Cannot open input file: %s", input_path_str);
|
|
31
|
-
return Qfalse;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
FILE *output_file = fopen(output_path_str, "wb");
|
|
35
|
-
if (!output_file) {
|
|
36
|
-
fclose(input_file);
|
|
37
|
-
rb_raise(rb_eRuntimeError, "Cannot open output file: %s", output_path_str);
|
|
38
|
-
return Qfalse;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
// Create compression context
|
|
42
|
-
ZSTD_CCtx *cctx = ZSTD_createCCtx();
|
|
43
|
-
if (!cctx) {
|
|
44
|
-
fclose(input_file);
|
|
45
|
-
fclose(output_file);
|
|
46
|
-
rb_raise(rb_eRuntimeError, "Failed to create compression context");
|
|
47
|
-
return Qfalse;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
// Set compression level
|
|
51
|
-
ZSTD_CCtx_setParameter(cctx, ZSTD_c_compressionLevel, compression_level);
|
|
52
|
-
|
|
53
|
-
// Allocate buffers
|
|
54
|
-
void *input_buffer = malloc(BUFFER_SIZE);
|
|
55
|
-
size_t output_buffer_size = ZSTD_compressBound(BUFFER_SIZE);
|
|
56
|
-
void *output_buffer = malloc(output_buffer_size);
|
|
57
|
-
|
|
58
|
-
if (!input_buffer || !output_buffer) {
|
|
59
|
-
free(input_buffer);
|
|
60
|
-
free(output_buffer);
|
|
61
|
-
ZSTD_freeCCtx(cctx);
|
|
62
|
-
fclose(input_file);
|
|
63
|
-
fclose(output_file);
|
|
64
|
-
rb_raise(rb_eRuntimeError, "Memory allocation failed");
|
|
65
|
-
return Qfalse;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
// Read and compress file in chunks
|
|
69
|
-
size_t bytes_read;
|
|
70
|
-
|
|
71
|
-
while ((bytes_read = fread(input_buffer, 1, BUFFER_SIZE, input_file)) > 0) {
|
|
72
|
-
ZSTD_inBuffer input = {input_buffer, bytes_read, 0};
|
|
73
|
-
|
|
74
|
-
// Process all input
|
|
75
|
-
while (input.pos < input.size) {
|
|
76
|
-
ZSTD_outBuffer output = {output_buffer, output_buffer_size, 0};
|
|
77
|
-
size_t remaining = ZSTD_compressStream2(cctx, &output, &input, ZSTD_e_continue);
|
|
78
|
-
|
|
79
|
-
if (ZSTD_isError(remaining)) {
|
|
80
|
-
free(input_buffer);
|
|
81
|
-
free(output_buffer);
|
|
82
|
-
ZSTD_freeCCtx(cctx);
|
|
83
|
-
fclose(input_file);
|
|
84
|
-
fclose(output_file);
|
|
85
|
-
rb_raise(rb_eRuntimeError, "Compression failed: %s", ZSTD_getErrorName(remaining));
|
|
86
|
-
return Qfalse;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
fwrite(output_buffer, 1, output.pos, output_file);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// Finalize the compression stream
|
|
94
|
-
ZSTD_inBuffer empty_input = {NULL, 0, 0};
|
|
95
|
-
int finished = 0;
|
|
96
|
-
while (!finished) {
|
|
97
|
-
ZSTD_outBuffer output = {output_buffer, output_buffer_size, 0};
|
|
98
|
-
size_t remaining = ZSTD_compressStream2(cctx, &output, &empty_input, ZSTD_e_end);
|
|
99
|
-
|
|
100
|
-
if (ZSTD_isError(remaining)) {
|
|
101
|
-
free(input_buffer);
|
|
102
|
-
free(output_buffer);
|
|
103
|
-
ZSTD_freeCCtx(cctx);
|
|
104
|
-
fclose(input_file);
|
|
105
|
-
fclose(output_file);
|
|
106
|
-
rb_raise(rb_eRuntimeError, "Compression finalization failed: %s", ZSTD_getErrorName(remaining));
|
|
107
|
-
return Qfalse;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
fwrite(output_buffer, 1, output.pos, output_file);
|
|
111
|
-
finished = (remaining == 0);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
// Cleanup
|
|
115
|
-
free(input_buffer);
|
|
116
|
-
free(output_buffer);
|
|
117
|
-
ZSTD_freeCCtx(cctx);
|
|
118
|
-
fclose(input_file);
|
|
119
|
-
fclose(output_file);
|
|
120
|
-
|
|
121
|
-
return Qtrue;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
/*
|
|
125
|
-
* Decompress a file using zstd
|
|
126
|
-
*
|
|
127
|
-
* @param input_path [String] path to compressed input file
|
|
128
|
-
* @param output_path [String] path to output file
|
|
129
|
-
* @return [Boolean] true on success
|
|
130
|
-
*/
|
|
131
|
-
static VALUE zstd_decompress_file(VALUE self, VALUE input_path, VALUE output_path) {
|
|
132
|
-
Check_Type(input_path, T_STRING);
|
|
133
|
-
Check_Type(output_path, T_STRING);
|
|
134
|
-
|
|
135
|
-
const char *input_path_str = StringValueCStr(input_path);
|
|
136
|
-
const char *output_path_str = StringValueCStr(output_path);
|
|
137
|
-
|
|
138
|
-
FILE *input_file = fopen(input_path_str, "rb");
|
|
139
|
-
if (!input_file) {
|
|
140
|
-
rb_raise(rb_eRuntimeError, "Cannot open input file: %s", input_path_str);
|
|
141
|
-
return Qfalse;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
FILE *output_file = fopen(output_path_str, "wb");
|
|
145
|
-
if (!output_file) {
|
|
146
|
-
fclose(input_file);
|
|
147
|
-
rb_raise(rb_eRuntimeError, "Cannot open output file: %s", output_path_str);
|
|
148
|
-
return Qfalse;
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
// Create decompression context
|
|
152
|
-
ZSTD_DCtx *dctx = ZSTD_createDCtx();
|
|
153
|
-
if (!dctx) {
|
|
154
|
-
fclose(input_file);
|
|
155
|
-
fclose(output_file);
|
|
156
|
-
rb_raise(rb_eRuntimeError, "Failed to create decompression context");
|
|
157
|
-
return Qfalse;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
// Allocate buffers
|
|
161
|
-
size_t input_buffer_size = ZSTD_DStreamInSize();
|
|
162
|
-
void *input_buffer = malloc(input_buffer_size);
|
|
163
|
-
size_t output_buffer_size = ZSTD_DStreamOutSize();
|
|
164
|
-
void *output_buffer = malloc(output_buffer_size);
|
|
165
|
-
|
|
166
|
-
if (!input_buffer || !output_buffer) {
|
|
167
|
-
free(input_buffer);
|
|
168
|
-
free(output_buffer);
|
|
169
|
-
ZSTD_freeDCtx(dctx);
|
|
170
|
-
fclose(input_file);
|
|
171
|
-
fclose(output_file);
|
|
172
|
-
rb_raise(rb_eRuntimeError, "Memory allocation failed");
|
|
173
|
-
return Qfalse;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
// Read and decompress file
|
|
177
|
-
size_t bytes_read;
|
|
178
|
-
size_t last_result = 0;
|
|
179
|
-
|
|
180
|
-
while ((bytes_read = fread(input_buffer, 1, input_buffer_size, input_file)) > 0) {
|
|
181
|
-
ZSTD_inBuffer input = {input_buffer, bytes_read, 0};
|
|
182
|
-
|
|
183
|
-
while (input.pos < input.size) {
|
|
184
|
-
ZSTD_outBuffer output = {output_buffer, output_buffer_size, 0};
|
|
185
|
-
|
|
186
|
-
size_t result = ZSTD_decompressStream(dctx, &output, &input);
|
|
187
|
-
|
|
188
|
-
if (ZSTD_isError(result)) {
|
|
189
|
-
free(input_buffer);
|
|
190
|
-
free(output_buffer);
|
|
191
|
-
ZSTD_freeDCtx(dctx);
|
|
192
|
-
fclose(input_file);
|
|
193
|
-
fclose(output_file);
|
|
194
|
-
rb_raise(rb_eRuntimeError, "Decompression failed: %s", ZSTD_getErrorName(result));
|
|
195
|
-
return Qfalse;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
fwrite(output_buffer, 1, output.pos, output_file);
|
|
199
|
-
last_result = result;
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
// Cleanup
|
|
204
|
-
free(input_buffer);
|
|
205
|
-
free(output_buffer);
|
|
206
|
-
ZSTD_freeDCtx(dctx);
|
|
207
|
-
fclose(input_file);
|
|
208
|
-
fclose(output_file);
|
|
209
|
-
|
|
210
|
-
return Qtrue;
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
/*
|
|
214
|
-
* Initialize the ZstdRuby module
|
|
215
|
-
*/
|
|
216
|
-
void Init_zstd_ruby(void) {
|
|
217
|
-
mZstdRuby = rb_define_module("ZstdRubyNative");
|
|
218
|
-
|
|
219
|
-
rb_define_singleton_method(mZstdRuby, "compress_file_native", zstd_compress_file, 3);
|
|
220
|
-
rb_define_singleton_method(mZstdRuby, "decompress_file_native", zstd_decompress_file, 2);
|
|
221
|
-
}
|
data/lib/zstd_ruby.rb
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
require "zstd_ruby/zstd_ruby"
|
|
2
|
-
|
|
3
|
-
module ZstdRuby
|
|
4
|
-
# Default compression level
|
|
5
|
-
DEFAULT_COMPRESSION_LEVEL = 3
|
|
6
|
-
|
|
7
|
-
# Valid compression level range
|
|
8
|
-
MIN_COMPRESSION_LEVEL = 1
|
|
9
|
-
MAX_COMPRESSION_LEVEL = 22
|
|
10
|
-
|
|
11
|
-
class << self
|
|
12
|
-
#
|
|
13
|
-
# Compress a file using zstd compression
|
|
14
|
-
#
|
|
15
|
-
# @param input_path [String] path to the input file to compress
|
|
16
|
-
# @param output_path [String] path where the compressed file will be written
|
|
17
|
-
# @param level [Integer] compression level (1-22, default: 3)
|
|
18
|
-
# - Level 1: fastest compression, lower ratio
|
|
19
|
-
# - Level 3: default, good balance
|
|
20
|
-
# - Level 22: best compression, slowest
|
|
21
|
-
# @return [Boolean] true on success
|
|
22
|
-
# @raise [ArgumentError] if compression level is invalid
|
|
23
|
-
# @raise [RuntimeError] if file operations fail
|
|
24
|
-
#
|
|
25
|
-
# @example
|
|
26
|
-
# ZstdRuby.compress_file('input.txt', 'output.txt.zst')
|
|
27
|
-
# ZstdRuby.compress_file('input.txt', 'output.txt.zst', level: 9)
|
|
28
|
-
#
|
|
29
|
-
def compress_file(input_path, output_path, level: DEFAULT_COMPRESSION_LEVEL)
|
|
30
|
-
# Validate compression level
|
|
31
|
-
unless level.is_a?(Integer)
|
|
32
|
-
raise ArgumentError, "Compression level must be an integer"
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
unless level >= MIN_COMPRESSION_LEVEL && level <= MAX_COMPRESSION_LEVEL
|
|
36
|
-
raise ArgumentError,
|
|
37
|
-
"Compression level must be between #{MIN_COMPRESSION_LEVEL} and #{MAX_COMPRESSION_LEVEL}"
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
# Convert paths to strings
|
|
41
|
-
input_path = input_path.to_s
|
|
42
|
-
output_path = output_path.to_s
|
|
43
|
-
|
|
44
|
-
# Call native extension
|
|
45
|
-
ZstdRubyNative.compress_file_native(input_path, output_path, level)
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
#
|
|
49
|
-
# Decompress a zstd-compressed file
|
|
50
|
-
#
|
|
51
|
-
# @param input_path [String] path to the compressed input file
|
|
52
|
-
# @param output_path [String] path where the decompressed file will be written
|
|
53
|
-
# @return [Boolean] true on success
|
|
54
|
-
# @raise [RuntimeError] if file operations or decompression fail
|
|
55
|
-
#
|
|
56
|
-
# @example
|
|
57
|
-
# ZstdRuby.decompress_file('input.txt.zst', 'output.txt')
|
|
58
|
-
#
|
|
59
|
-
def decompress_file(input_path, output_path)
|
|
60
|
-
# Convert paths to strings
|
|
61
|
-
input_path = input_path.to_s
|
|
62
|
-
output_path = output_path.to_s
|
|
63
|
-
|
|
64
|
-
# Call native extension
|
|
65
|
-
ZstdRubyNative.decompress_file_native(input_path, output_path)
|
|
66
|
-
end
|
|
67
|
-
end
|
|
68
|
-
end
|
data/vendor/zstd/CMakeLists.txt
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
cmake_minimum_required(VERSION 3.10)
|
|
2
|
-
|
|
3
|
-
# Thin wrapper so `cmake -S .` behaves like `cmake -S build/cmake`.
|
|
4
|
-
# Policy lives in build/cmake; keep parent project language-less.
|
|
5
|
-
project(zstd-superbuild LANGUAGES NONE)
|
|
6
|
-
|
|
7
|
-
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR)
|
|
8
|
-
message(FATAL_ERROR "In-source builds are not supported. Specify -B <build-dir>.")
|
|
9
|
-
endif()
|
|
10
|
-
|
|
11
|
-
add_subdirectory(build/cmake)
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
# ################################################################
|
|
2
|
-
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
-
# All rights reserved.
|
|
4
|
-
#
|
|
5
|
-
# This source code is licensed under both the BSD-style license (found in the
|
|
6
|
-
# LICENSE file in the root directory of this source tree) and the GPLv2 (found
|
|
7
|
-
# in the COPYING file in the root directory of this source tree).
|
|
8
|
-
# ################################################################
|
|
9
|
-
|
|
10
|
-
cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
|
|
11
|
-
|
|
12
|
-
#-----------------------------------------------------------------------------
|
|
13
|
-
# Setup CMake environment
|
|
14
|
-
#-----------------------------------------------------------------------------
|
|
15
|
-
set(CMAKE_BUILD_WITH_INSTALL_RPATH ON)
|
|
16
|
-
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules")
|
|
17
|
-
|
|
18
|
-
# Define project paths
|
|
19
|
-
set(ZSTD_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../..")
|
|
20
|
-
set(LIBRARY_DIR ${ZSTD_SOURCE_DIR}/lib)
|
|
21
|
-
|
|
22
|
-
#-----------------------------------------------------------------------------
|
|
23
|
-
# Configure CMake policies and version
|
|
24
|
-
#-----------------------------------------------------------------------------
|
|
25
|
-
include(ZstdVersion)
|
|
26
|
-
|
|
27
|
-
#-----------------------------------------------------------------------------
|
|
28
|
-
# Project declaration
|
|
29
|
-
#-----------------------------------------------------------------------------
|
|
30
|
-
project(zstd
|
|
31
|
-
VERSION "${ZSTD_FULL_VERSION}"
|
|
32
|
-
LANGUAGES C # Main library is in C and ASM, ASM is enabled conditionally
|
|
33
|
-
HOMEPAGE_URL "${zstd_HOMEPAGE_URL}"
|
|
34
|
-
DESCRIPTION "${zstd_DESCRIPTION}"
|
|
35
|
-
)
|
|
36
|
-
|
|
37
|
-
#-----------------------------------------------------------------------------
|
|
38
|
-
# Build type configuration
|
|
39
|
-
#-----------------------------------------------------------------------------
|
|
40
|
-
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
|
|
41
|
-
message(STATUS "Setting build type to 'Release' as none was specified.")
|
|
42
|
-
set(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build." FORCE)
|
|
43
|
-
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo")
|
|
44
|
-
endif()
|
|
45
|
-
|
|
46
|
-
#-----------------------------------------------------------------------------
|
|
47
|
-
# Include standard modules
|
|
48
|
-
#-----------------------------------------------------------------------------
|
|
49
|
-
include(GNUInstallDirs)
|
|
50
|
-
|
|
51
|
-
#-----------------------------------------------------------------------------
|
|
52
|
-
# Display installation information
|
|
53
|
-
#-----------------------------------------------------------------------------
|
|
54
|
-
message(STATUS "CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}")
|
|
55
|
-
message(STATUS "CMAKE_INSTALL_LIBDIR: ${CMAKE_INSTALL_LIBDIR}")
|
|
56
|
-
|
|
57
|
-
#-----------------------------------------------------------------------------
|
|
58
|
-
# Configure build options
|
|
59
|
-
#-----------------------------------------------------------------------------
|
|
60
|
-
include(ZstdOptions)
|
|
61
|
-
|
|
62
|
-
#-----------------------------------------------------------------------------
|
|
63
|
-
# Configure compilation flags
|
|
64
|
-
#-----------------------------------------------------------------------------
|
|
65
|
-
include(AddZstdCompilationFlags)
|
|
66
|
-
ADD_ZSTD_COMPILATION_FLAGS(ON ZSTD_ENABLE_CXX ON)
|
|
67
|
-
|
|
68
|
-
#-----------------------------------------------------------------------------
|
|
69
|
-
# Configure dependencies
|
|
70
|
-
#-----------------------------------------------------------------------------
|
|
71
|
-
include(ZstdDependencies)
|
|
72
|
-
|
|
73
|
-
#-----------------------------------------------------------------------------
|
|
74
|
-
# Configure build targets
|
|
75
|
-
#-----------------------------------------------------------------------------
|
|
76
|
-
include(ZstdBuild)
|
|
77
|
-
|
|
78
|
-
#-----------------------------------------------------------------------------
|
|
79
|
-
# Configure package generation
|
|
80
|
-
#-----------------------------------------------------------------------------
|
|
81
|
-
include(ZstdPackage)
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
# ################################################################
|
|
2
|
-
# ZSTD Build Targets Configuration
|
|
3
|
-
# ################################################################
|
|
4
|
-
|
|
5
|
-
# Always build the library first (this defines ZSTD_BUILD_STATIC/SHARED options)
|
|
6
|
-
add_subdirectory(lib)
|
|
7
|
-
|
|
8
|
-
# Validate build configuration after lib options are defined
|
|
9
|
-
if(ZSTD_BUILD_PROGRAMS)
|
|
10
|
-
if(NOT ZSTD_BUILD_STATIC AND NOT ZSTD_PROGRAMS_LINK_SHARED)
|
|
11
|
-
message(SEND_ERROR "Static library required to build zstd CLI programs")
|
|
12
|
-
elseif(NOT ZSTD_BUILD_SHARED AND ZSTD_PROGRAMS_LINK_SHARED)
|
|
13
|
-
message(SEND_ERROR "Shared library required to build zstd CLI programs")
|
|
14
|
-
endif()
|
|
15
|
-
endif()
|
|
16
|
-
|
|
17
|
-
if(ZSTD_BUILD_TESTS AND NOT ZSTD_BUILD_STATIC)
|
|
18
|
-
message(SEND_ERROR "Static library required to build test suite")
|
|
19
|
-
endif()
|
|
20
|
-
|
|
21
|
-
# Add programs if requested
|
|
22
|
-
if(ZSTD_BUILD_PROGRAMS)
|
|
23
|
-
add_subdirectory(programs)
|
|
24
|
-
endif()
|
|
25
|
-
|
|
26
|
-
# Add tests if requested
|
|
27
|
-
if(ZSTD_BUILD_TESTS)
|
|
28
|
-
enable_testing()
|
|
29
|
-
add_subdirectory(tests)
|
|
30
|
-
endif()
|
|
31
|
-
|
|
32
|
-
# Add contrib utilities if requested
|
|
33
|
-
if(ZSTD_BUILD_CONTRIB)
|
|
34
|
-
add_subdirectory(contrib)
|
|
35
|
-
endif()
|
|
36
|
-
|
|
37
|
-
# Clean-all target for thorough cleanup
|
|
38
|
-
add_custom_target(clean-all
|
|
39
|
-
COMMAND ${CMAKE_BUILD_TOOL} clean
|
|
40
|
-
COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_BINARY_DIR}/
|
|
41
|
-
COMMENT "Performing complete clean including build directory"
|
|
42
|
-
)
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# ################################################################
|
|
2
|
-
# ZSTD Dependencies Configuration
|
|
3
|
-
# ################################################################
|
|
4
|
-
|
|
5
|
-
# Function to handle HP-UX thread configuration
|
|
6
|
-
function(setup_hpux_threads)
|
|
7
|
-
find_package(Threads)
|
|
8
|
-
if(NOT Threads_FOUND)
|
|
9
|
-
set(CMAKE_USE_PTHREADS_INIT 1 PARENT_SCOPE)
|
|
10
|
-
set(CMAKE_THREAD_LIBS_INIT -lpthread PARENT_SCOPE)
|
|
11
|
-
set(CMAKE_HAVE_THREADS_LIBRARY 1 PARENT_SCOPE)
|
|
12
|
-
set(Threads_FOUND TRUE PARENT_SCOPE)
|
|
13
|
-
endif()
|
|
14
|
-
endfunction()
|
|
15
|
-
|
|
16
|
-
# Configure threading support
|
|
17
|
-
if(ZSTD_MULTITHREAD_SUPPORT AND UNIX)
|
|
18
|
-
if(CMAKE_SYSTEM_NAME MATCHES "HP-UX")
|
|
19
|
-
setup_hpux_threads()
|
|
20
|
-
else()
|
|
21
|
-
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
|
22
|
-
find_package(Threads REQUIRED)
|
|
23
|
-
endif()
|
|
24
|
-
|
|
25
|
-
if(CMAKE_USE_PTHREADS_INIT)
|
|
26
|
-
set(THREADS_LIBS "${CMAKE_THREAD_LIBS_INIT}")
|
|
27
|
-
else()
|
|
28
|
-
message(SEND_ERROR "ZSTD currently does not support thread libraries other than pthreads")
|
|
29
|
-
endif()
|
|
30
|
-
endif()
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
# ################################################################
|
|
2
|
-
# ZSTD Build Options Configuration
|
|
3
|
-
# ################################################################
|
|
4
|
-
|
|
5
|
-
# Legacy support configuration
|
|
6
|
-
option(ZSTD_LEGACY_SUPPORT "Enable legacy format support" ON)
|
|
7
|
-
|
|
8
|
-
if(ZSTD_LEGACY_SUPPORT)
|
|
9
|
-
message(STATUS "ZSTD_LEGACY_SUPPORT enabled")
|
|
10
|
-
set(ZSTD_LEGACY_LEVEL 5 CACHE STRING "Legacy support level")
|
|
11
|
-
add_definitions(-DZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_LEVEL})
|
|
12
|
-
else()
|
|
13
|
-
message(STATUS "ZSTD_LEGACY_SUPPORT disabled")
|
|
14
|
-
add_definitions(-DZSTD_LEGACY_SUPPORT=0)
|
|
15
|
-
endif()
|
|
16
|
-
|
|
17
|
-
# Platform-specific options
|
|
18
|
-
if(APPLE)
|
|
19
|
-
option(ZSTD_FRAMEWORK "Build as Apple Framework" OFF)
|
|
20
|
-
endif()
|
|
21
|
-
|
|
22
|
-
# Android-specific configuration
|
|
23
|
-
if(ANDROID)
|
|
24
|
-
set(ZSTD_MULTITHREAD_SUPPORT_DEFAULT OFF)
|
|
25
|
-
# Handle old Android API levels
|
|
26
|
-
if((NOT ANDROID_PLATFORM_LEVEL) OR (ANDROID_PLATFORM_LEVEL VERSION_LESS 24))
|
|
27
|
-
message(STATUS "Configuring for old Android API - disabling fseeko/ftello")
|
|
28
|
-
add_compile_definitions(LIBC_NO_FSEEKO)
|
|
29
|
-
endif()
|
|
30
|
-
else()
|
|
31
|
-
set(ZSTD_MULTITHREAD_SUPPORT_DEFAULT ON)
|
|
32
|
-
endif()
|
|
33
|
-
|
|
34
|
-
# Multi-threading support
|
|
35
|
-
option(ZSTD_MULTITHREAD_SUPPORT "Enable multi-threading support" ${ZSTD_MULTITHREAD_SUPPORT_DEFAULT})
|
|
36
|
-
|
|
37
|
-
if(ZSTD_MULTITHREAD_SUPPORT)
|
|
38
|
-
message(STATUS "Multi-threading support enabled")
|
|
39
|
-
else()
|
|
40
|
-
message(STATUS "Multi-threading support disabled")
|
|
41
|
-
endif()
|
|
42
|
-
|
|
43
|
-
# Build component options
|
|
44
|
-
option(ZSTD_BUILD_PROGRAMS "Build command-line programs" ON)
|
|
45
|
-
option(ZSTD_BUILD_CONTRIB "Build contrib utilities" OFF)
|
|
46
|
-
option(ZSTD_PROGRAMS_LINK_SHARED "Link programs against shared library" OFF)
|
|
47
|
-
|
|
48
|
-
# Test configuration
|
|
49
|
-
if(BUILD_TESTING)
|
|
50
|
-
set(ZSTD_BUILD_TESTS_default ON)
|
|
51
|
-
else()
|
|
52
|
-
set(ZSTD_BUILD_TESTS_default OFF)
|
|
53
|
-
endif()
|
|
54
|
-
option(ZSTD_BUILD_TESTS "Build test suite" ${ZSTD_BUILD_TESTS_default})
|
|
55
|
-
|
|
56
|
-
# MSVC-specific options
|
|
57
|
-
if(MSVC)
|
|
58
|
-
option(ZSTD_USE_STATIC_RUNTIME "Link to static runtime libraries" OFF)
|
|
59
|
-
endif()
|
|
60
|
-
|
|
61
|
-
# C++ support (needed for tests)
|
|
62
|
-
set(ZSTD_ENABLE_CXX ${ZSTD_BUILD_TESTS})
|
|
63
|
-
if(ZSTD_ENABLE_CXX)
|
|
64
|
-
enable_language(CXX)
|
|
65
|
-
endif()
|
|
66
|
-
|
|
67
|
-
# Set global definitions
|
|
68
|
-
add_definitions(-DXXH_NAMESPACE=ZSTD_)
|