zstd-native-ruby 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (651) hide show
  1. checksums.yaml +7 -0
  2. data/CLAUDE.md +101 -0
  3. data/LICENSE +19 -0
  4. data/README.md +47 -0
  5. data/ext/zstd_ruby/extconf.rb +35 -0
  6. data/ext/zstd_ruby/zstd_ruby.c +221 -0
  7. data/lib/zstd_ruby.rb +68 -0
  8. data/vendor/zstd/CHANGELOG +863 -0
  9. data/vendor/zstd/CMakeLists.txt +11 -0
  10. data/vendor/zstd/CODE_OF_CONDUCT.md +5 -0
  11. data/vendor/zstd/CONTRIBUTING.md +494 -0
  12. data/vendor/zstd/COPYING +339 -0
  13. data/vendor/zstd/LICENSE +30 -0
  14. data/vendor/zstd/Makefile +470 -0
  15. data/vendor/zstd/Package.swift +36 -0
  16. data/vendor/zstd/README.md +244 -0
  17. data/vendor/zstd/SECURITY.md +15 -0
  18. data/vendor/zstd/TESTING.md +43 -0
  19. data/vendor/zstd/build/LICENSE +0 -0
  20. data/vendor/zstd/build/README.md +56 -0
  21. data/vendor/zstd/build/VS2008/fullbench/fullbench.vcproj +549 -0
  22. data/vendor/zstd/build/VS2008/fuzzer/fuzzer.vcproj +585 -0
  23. data/vendor/zstd/build/VS2008/zstd/zstd.vcproj +677 -0
  24. data/vendor/zstd/build/VS2008/zstd.sln +56 -0
  25. data/vendor/zstd/build/VS2008/zstdlib/zstdlib.vcproj +635 -0
  26. data/vendor/zstd/build/VS2010/CompileAsCpp.props +8 -0
  27. data/vendor/zstd/build/VS2010/datagen/datagen.vcxproj +170 -0
  28. data/vendor/zstd/build/VS2010/fullbench/fullbench.vcxproj +220 -0
  29. data/vendor/zstd/build/VS2010/fuzzer/fuzzer.vcxproj +224 -0
  30. data/vendor/zstd/build/VS2010/libzstd/libzstd.vcxproj +243 -0
  31. data/vendor/zstd/build/VS2010/libzstd-dll/libzstd-dll.rc +51 -0
  32. data/vendor/zstd/build/VS2010/libzstd-dll/libzstd-dll.vcxproj +250 -0
  33. data/vendor/zstd/build/VS2010/zstd/zstd.rc +51 -0
  34. data/vendor/zstd/build/VS2010/zstd/zstd.vcxproj +266 -0
  35. data/vendor/zstd/build/VS2010/zstd.sln +84 -0
  36. data/vendor/zstd/build/VS_scripts/README.md +64 -0
  37. data/vendor/zstd/build/VS_scripts/build.VS2010.cmd +7 -0
  38. data/vendor/zstd/build/VS_scripts/build.VS2012.cmd +6 -0
  39. data/vendor/zstd/build/VS_scripts/build.VS2013.cmd +7 -0
  40. data/vendor/zstd/build/VS_scripts/build.VS2015.cmd +7 -0
  41. data/vendor/zstd/build/VS_scripts/build.VS2017.cmd +7 -0
  42. data/vendor/zstd/build/VS_scripts/build.VS2017Community.cmd +7 -0
  43. data/vendor/zstd/build/VS_scripts/build.VS2017Enterprise.cmd +7 -0
  44. data/vendor/zstd/build/VS_scripts/build.VS2017Professional.cmd +7 -0
  45. data/vendor/zstd/build/VS_scripts/build.VSPreview.cmd +7 -0
  46. data/vendor/zstd/build/VS_scripts/build.generic.cmd +67 -0
  47. data/vendor/zstd/build/cmake/CMakeLists.txt +81 -0
  48. data/vendor/zstd/build/cmake/CMakeModules/AddZstdCompilationFlags.cmake +138 -0
  49. data/vendor/zstd/build/cmake/CMakeModules/FindLibLZ4.cmake +49 -0
  50. data/vendor/zstd/build/cmake/CMakeModules/GetZstdLibraryVersion.cmake +10 -0
  51. data/vendor/zstd/build/cmake/CMakeModules/JoinPaths.cmake +23 -0
  52. data/vendor/zstd/build/cmake/CMakeModules/ZstdBuild.cmake +42 -0
  53. data/vendor/zstd/build/cmake/CMakeModules/ZstdDependencies.cmake +30 -0
  54. data/vendor/zstd/build/cmake/CMakeModules/ZstdOptions.cmake +68 -0
  55. data/vendor/zstd/build/cmake/CMakeModules/ZstdPackage.cmake +42 -0
  56. data/vendor/zstd/build/cmake/CMakeModules/ZstdVersion.cmake +31 -0
  57. data/vendor/zstd/build/cmake/README.md +155 -0
  58. data/vendor/zstd/build/cmake/contrib/CMakeLists.txt +13 -0
  59. data/vendor/zstd/build/cmake/contrib/gen_html/CMakeLists.txt +30 -0
  60. data/vendor/zstd/build/cmake/contrib/pzstd/CMakeLists.txt +39 -0
  61. data/vendor/zstd/build/cmake/lib/CMakeLists.txt +298 -0
  62. data/vendor/zstd/build/cmake/lib/cmake_uninstall.cmake.in +22 -0
  63. data/vendor/zstd/build/cmake/programs/CMakeLists.txt +144 -0
  64. data/vendor/zstd/build/cmake/tests/CMakeLists.txt +118 -0
  65. data/vendor/zstd/build/cmake/zstdConfig.cmake.in +10 -0
  66. data/vendor/zstd/build/meson/GetZstdLibraryVersion.py +39 -0
  67. data/vendor/zstd/build/meson/InstallSymlink.py +55 -0
  68. data/vendor/zstd/build/meson/README.md +38 -0
  69. data/vendor/zstd/build/meson/contrib/gen_html/meson.build +30 -0
  70. data/vendor/zstd/build/meson/contrib/meson.build +12 -0
  71. data/vendor/zstd/build/meson/contrib/pzstd/meson.build +25 -0
  72. data/vendor/zstd/build/meson/lib/meson.build +175 -0
  73. data/vendor/zstd/build/meson/meson.build +155 -0
  74. data/vendor/zstd/build/meson/meson_options.txt +36 -0
  75. data/vendor/zstd/build/meson/programs/meson.build +124 -0
  76. data/vendor/zstd/build/meson/tests/meson.build +217 -0
  77. data/vendor/zstd/build/meson/tests/valgrindTest.py +90 -0
  78. data/vendor/zstd/build/single_file_libs/README.md +33 -0
  79. data/vendor/zstd/build/single_file_libs/build_decoder_test.sh +91 -0
  80. data/vendor/zstd/build/single_file_libs/build_library_test.sh +98 -0
  81. data/vendor/zstd/build/single_file_libs/combine.py +234 -0
  82. data/vendor/zstd/build/single_file_libs/combine.sh +249 -0
  83. data/vendor/zstd/build/single_file_libs/create_single_file_decoder.sh +19 -0
  84. data/vendor/zstd/build/single_file_libs/create_single_file_library.sh +19 -0
  85. data/vendor/zstd/build/single_file_libs/examples/README.md +11 -0
  86. data/vendor/zstd/build/single_file_libs/examples/emscripten.c +340 -0
  87. data/vendor/zstd/build/single_file_libs/examples/roundtrip.c +83 -0
  88. data/vendor/zstd/build/single_file_libs/examples/shell.html +31 -0
  89. data/vendor/zstd/build/single_file_libs/examples/simple.c +75 -0
  90. data/vendor/zstd/build/single_file_libs/examples/testcard-dxt1.inl +2731 -0
  91. data/vendor/zstd/build/single_file_libs/examples/testcard-zstd.inl +261 -0
  92. data/vendor/zstd/build/single_file_libs/examples/testcard.png +0 -0
  93. data/vendor/zstd/build/single_file_libs/zstd-in.c +91 -0
  94. data/vendor/zstd/build/single_file_libs/zstddeclib-in.c +62 -0
  95. data/vendor/zstd/contrib/VS2005/README.md +3 -0
  96. data/vendor/zstd/contrib/VS2005/fullbench/fullbench.vcproj +440 -0
  97. data/vendor/zstd/contrib/VS2005/fuzzer/fuzzer.vcproj +488 -0
  98. data/vendor/zstd/contrib/VS2005/zstd/zstd.vcproj +552 -0
  99. data/vendor/zstd/contrib/VS2005/zstd.sln +55 -0
  100. data/vendor/zstd/contrib/VS2005/zstdlib/zstdlib.vcproj +546 -0
  101. data/vendor/zstd/contrib/cleanTabs +2 -0
  102. data/vendor/zstd/contrib/diagnose_corruption/Makefile +35 -0
  103. data/vendor/zstd/contrib/diagnose_corruption/check_flipped_bits.c +400 -0
  104. data/vendor/zstd/contrib/docker/Dockerfile +20 -0
  105. data/vendor/zstd/contrib/docker/README.md +20 -0
  106. data/vendor/zstd/contrib/externalSequenceProducer/Makefile +40 -0
  107. data/vendor/zstd/contrib/externalSequenceProducer/README.md +14 -0
  108. data/vendor/zstd/contrib/externalSequenceProducer/main.c +108 -0
  109. data/vendor/zstd/contrib/externalSequenceProducer/sequence_producer.c +80 -0
  110. data/vendor/zstd/contrib/externalSequenceProducer/sequence_producer.h +26 -0
  111. data/vendor/zstd/contrib/freestanding_lib/freestanding.py +774 -0
  112. data/vendor/zstd/contrib/gen_html/Makefile +51 -0
  113. data/vendor/zstd/contrib/gen_html/README.md +31 -0
  114. data/vendor/zstd/contrib/gen_html/gen-zstd-manual.sh +9 -0
  115. data/vendor/zstd/contrib/gen_html/gen_html.cpp +225 -0
  116. data/vendor/zstd/contrib/largeNbDicts/Makefile +58 -0
  117. data/vendor/zstd/contrib/largeNbDicts/README.md +33 -0
  118. data/vendor/zstd/contrib/largeNbDicts/largeNbDicts.c +1087 -0
  119. data/vendor/zstd/contrib/linux-kernel/Makefile +108 -0
  120. data/vendor/zstd/contrib/linux-kernel/README.md +14 -0
  121. data/vendor/zstd/contrib/linux-kernel/btrfs-benchmark.sh +104 -0
  122. data/vendor/zstd/contrib/linux-kernel/btrfs-extract-benchmark.sh +99 -0
  123. data/vendor/zstd/contrib/linux-kernel/decompress_sources.h +34 -0
  124. data/vendor/zstd/contrib/linux-kernel/linux.mk +44 -0
  125. data/vendor/zstd/contrib/linux-kernel/linux_zstd.h +691 -0
  126. data/vendor/zstd/contrib/linux-kernel/mem.h +262 -0
  127. data/vendor/zstd/contrib/linux-kernel/squashfs-benchmark.sh +39 -0
  128. data/vendor/zstd/contrib/linux-kernel/test/Makefile +49 -0
  129. data/vendor/zstd/contrib/linux-kernel/test/include/linux/compiler.h +23 -0
  130. data/vendor/zstd/contrib/linux-kernel/test/include/linux/errno.h +15 -0
  131. data/vendor/zstd/contrib/linux-kernel/test/include/linux/kernel.h +19 -0
  132. data/vendor/zstd/contrib/linux-kernel/test/include/linux/limits.h +15 -0
  133. data/vendor/zstd/contrib/linux-kernel/test/include/linux/math64.h +15 -0
  134. data/vendor/zstd/contrib/linux-kernel/test/include/linux/module.h +20 -0
  135. data/vendor/zstd/contrib/linux-kernel/test/include/linux/printk.h +15 -0
  136. data/vendor/zstd/contrib/linux-kernel/test/include/linux/stddef.h +15 -0
  137. data/vendor/zstd/contrib/linux-kernel/test/include/linux/swab.h +16 -0
  138. data/vendor/zstd/contrib/linux-kernel/test/include/linux/types.h +16 -0
  139. data/vendor/zstd/contrib/linux-kernel/test/include/linux/unaligned.h +187 -0
  140. data/vendor/zstd/contrib/linux-kernel/test/include/linux/xxhash.h +745 -0
  141. data/vendor/zstd/contrib/linux-kernel/test/macro-test.sh +44 -0
  142. data/vendor/zstd/contrib/linux-kernel/test/static_test.c +52 -0
  143. data/vendor/zstd/contrib/linux-kernel/test/test.c +229 -0
  144. data/vendor/zstd/contrib/linux-kernel/zstd_common_module.c +29 -0
  145. data/vendor/zstd/contrib/linux-kernel/zstd_compress_module.c +286 -0
  146. data/vendor/zstd/contrib/linux-kernel/zstd_decompress_module.c +141 -0
  147. data/vendor/zstd/contrib/linux-kernel/zstd_deps.h +121 -0
  148. data/vendor/zstd/contrib/match_finders/README.md +42 -0
  149. data/vendor/zstd/contrib/match_finders/zstd_edist.c +558 -0
  150. data/vendor/zstd/contrib/match_finders/zstd_edist.h +70 -0
  151. data/vendor/zstd/contrib/premake/premake4.lua +6 -0
  152. data/vendor/zstd/contrib/premake/zstd.lua +81 -0
  153. data/vendor/zstd/contrib/pzstd/BUCK +72 -0
  154. data/vendor/zstd/contrib/pzstd/ErrorHolder.h +54 -0
  155. data/vendor/zstd/contrib/pzstd/Logging.h +73 -0
  156. data/vendor/zstd/contrib/pzstd/Makefile +265 -0
  157. data/vendor/zstd/contrib/pzstd/Options.cpp +424 -0
  158. data/vendor/zstd/contrib/pzstd/Options.h +71 -0
  159. data/vendor/zstd/contrib/pzstd/Pzstd.cpp +626 -0
  160. data/vendor/zstd/contrib/pzstd/Pzstd.h +153 -0
  161. data/vendor/zstd/contrib/pzstd/README.md +56 -0
  162. data/vendor/zstd/contrib/pzstd/SkippableFrame.cpp +30 -0
  163. data/vendor/zstd/contrib/pzstd/SkippableFrame.h +64 -0
  164. data/vendor/zstd/contrib/pzstd/images/Cspeed.png +0 -0
  165. data/vendor/zstd/contrib/pzstd/images/Dspeed.png +0 -0
  166. data/vendor/zstd/contrib/pzstd/main.cpp +27 -0
  167. data/vendor/zstd/contrib/pzstd/test/BUCK +37 -0
  168. data/vendor/zstd/contrib/pzstd/test/OptionsTest.cpp +536 -0
  169. data/vendor/zstd/contrib/pzstd/test/PzstdTest.cpp +147 -0
  170. data/vendor/zstd/contrib/pzstd/test/RoundTrip.h +86 -0
  171. data/vendor/zstd/contrib/pzstd/test/RoundTripTest.cpp +84 -0
  172. data/vendor/zstd/contrib/pzstd/utils/BUCK +75 -0
  173. data/vendor/zstd/contrib/pzstd/utils/Buffer.h +99 -0
  174. data/vendor/zstd/contrib/pzstd/utils/FileSystem.h +96 -0
  175. data/vendor/zstd/contrib/pzstd/utils/Likely.h +28 -0
  176. data/vendor/zstd/contrib/pzstd/utils/Portability.h +16 -0
  177. data/vendor/zstd/contrib/pzstd/utils/Range.h +133 -0
  178. data/vendor/zstd/contrib/pzstd/utils/ResourcePool.h +96 -0
  179. data/vendor/zstd/contrib/pzstd/utils/ScopeGuard.h +50 -0
  180. data/vendor/zstd/contrib/pzstd/utils/ThreadPool.h +58 -0
  181. data/vendor/zstd/contrib/pzstd/utils/WorkQueue.h +182 -0
  182. data/vendor/zstd/contrib/pzstd/utils/test/BUCK +35 -0
  183. data/vendor/zstd/contrib/pzstd/utils/test/BufferTest.cpp +89 -0
  184. data/vendor/zstd/contrib/pzstd/utils/test/RangeTest.cpp +82 -0
  185. data/vendor/zstd/contrib/pzstd/utils/test/ResourcePoolTest.cpp +72 -0
  186. data/vendor/zstd/contrib/pzstd/utils/test/ScopeGuardTest.cpp +28 -0
  187. data/vendor/zstd/contrib/pzstd/utils/test/ThreadPoolTest.cpp +71 -0
  188. data/vendor/zstd/contrib/pzstd/utils/test/WorkQueueTest.cpp +282 -0
  189. data/vendor/zstd/contrib/recovery/Makefile +35 -0
  190. data/vendor/zstd/contrib/recovery/recover_directory.c +152 -0
  191. data/vendor/zstd/contrib/seekable_format/README.md +42 -0
  192. data/vendor/zstd/contrib/seekable_format/examples/Makefile +55 -0
  193. data/vendor/zstd/contrib/seekable_format/examples/parallel_compression.c +254 -0
  194. data/vendor/zstd/contrib/seekable_format/examples/parallel_processing.c +191 -0
  195. data/vendor/zstd/contrib/seekable_format/examples/seekable_compression.c +136 -0
  196. data/vendor/zstd/contrib/seekable_format/examples/seekable_decompression.c +141 -0
  197. data/vendor/zstd/contrib/seekable_format/examples/seekable_decompression_mem.c +147 -0
  198. data/vendor/zstd/contrib/seekable_format/tests/Makefile +58 -0
  199. data/vendor/zstd/contrib/seekable_format/tests/seekable_tests.c +375 -0
  200. data/vendor/zstd/contrib/seekable_format/zstd_seekable.h +226 -0
  201. data/vendor/zstd/contrib/seekable_format/zstd_seekable_compression_format.md +116 -0
  202. data/vendor/zstd/contrib/seekable_format/zstdseek_compress.c +365 -0
  203. data/vendor/zstd/contrib/seekable_format/zstdseek_decompress.c +600 -0
  204. data/vendor/zstd/contrib/seqBench/Makefile +58 -0
  205. data/vendor/zstd/contrib/seqBench/seqBench.c +53 -0
  206. data/vendor/zstd/contrib/snap/snapcraft.yaml +28 -0
  207. data/vendor/zstd/doc/README.md +26 -0
  208. data/vendor/zstd/doc/decompressor_errata.md +148 -0
  209. data/vendor/zstd/doc/decompressor_permissive.md +80 -0
  210. data/vendor/zstd/doc/educational_decoder/Makefile +62 -0
  211. data/vendor/zstd/doc/educational_decoder/README.md +36 -0
  212. data/vendor/zstd/doc/educational_decoder/harness.c +119 -0
  213. data/vendor/zstd/doc/educational_decoder/zstd_decompress.c +2323 -0
  214. data/vendor/zstd/doc/educational_decoder/zstd_decompress.h +61 -0
  215. data/vendor/zstd/doc/images/CSpeed2.png +0 -0
  216. data/vendor/zstd/doc/images/DCspeed5.png +0 -0
  217. data/vendor/zstd/doc/images/DSpeed3.png +0 -0
  218. data/vendor/zstd/doc/images/cdict_v136.png +0 -0
  219. data/vendor/zstd/doc/images/dict-cr.png +0 -0
  220. data/vendor/zstd/doc/images/dict-cs.png +0 -0
  221. data/vendor/zstd/doc/images/dict-ds.png +0 -0
  222. data/vendor/zstd/doc/images/zstd_cdict_v1_3_5.png +0 -0
  223. data/vendor/zstd/doc/images/zstd_logo86.png +0 -0
  224. data/vendor/zstd/doc/zstd_compression_format.md +1772 -0
  225. data/vendor/zstd/doc/zstd_manual.html +2244 -0
  226. data/vendor/zstd/examples/Makefile +93 -0
  227. data/vendor/zstd/examples/README.md +46 -0
  228. data/vendor/zstd/examples/common.h +246 -0
  229. data/vendor/zstd/examples/dictionary_compression.c +107 -0
  230. data/vendor/zstd/examples/dictionary_decompression.c +99 -0
  231. data/vendor/zstd/examples/multiple_simple_compression.c +116 -0
  232. data/vendor/zstd/examples/multiple_streaming_compression.c +133 -0
  233. data/vendor/zstd/examples/simple_compression.c +68 -0
  234. data/vendor/zstd/examples/simple_decompression.c +65 -0
  235. data/vendor/zstd/examples/streaming_compression.c +146 -0
  236. data/vendor/zstd/examples/streaming_compression_thread_pool.c +180 -0
  237. data/vendor/zstd/examples/streaming_decompression.c +100 -0
  238. data/vendor/zstd/examples/streaming_memory_usage.c +137 -0
  239. data/vendor/zstd/lib/BUCK +232 -0
  240. data/vendor/zstd/lib/Makefile +389 -0
  241. data/vendor/zstd/lib/README.md +267 -0
  242. data/vendor/zstd/lib/common/allocations.h +55 -0
  243. data/vendor/zstd/lib/common/bits.h +205 -0
  244. data/vendor/zstd/lib/common/bitstream.h +454 -0
  245. data/vendor/zstd/lib/common/compiler.h +482 -0
  246. data/vendor/zstd/lib/common/cpu.h +249 -0
  247. data/vendor/zstd/lib/common/debug.c +30 -0
  248. data/vendor/zstd/lib/common/debug.h +107 -0
  249. data/vendor/zstd/lib/common/debug.o +0 -0
  250. data/vendor/zstd/lib/common/entropy_common.c +340 -0
  251. data/vendor/zstd/lib/common/entropy_common.o +0 -0
  252. data/vendor/zstd/lib/common/error_private.c +64 -0
  253. data/vendor/zstd/lib/common/error_private.h +158 -0
  254. data/vendor/zstd/lib/common/error_private.o +0 -0
  255. data/vendor/zstd/lib/common/fse.h +625 -0
  256. data/vendor/zstd/lib/common/fse_decompress.c +315 -0
  257. data/vendor/zstd/lib/common/fse_decompress.o +0 -0
  258. data/vendor/zstd/lib/common/huf.h +277 -0
  259. data/vendor/zstd/lib/common/mem.h +422 -0
  260. data/vendor/zstd/lib/common/pool.c +371 -0
  261. data/vendor/zstd/lib/common/pool.h +81 -0
  262. data/vendor/zstd/lib/common/pool.o +0 -0
  263. data/vendor/zstd/lib/common/portability_macros.h +190 -0
  264. data/vendor/zstd/lib/common/threading.c +196 -0
  265. data/vendor/zstd/lib/common/threading.h +142 -0
  266. data/vendor/zstd/lib/common/threading.o +0 -0
  267. data/vendor/zstd/lib/common/xxhash.c +18 -0
  268. data/vendor/zstd/lib/common/xxhash.h +7094 -0
  269. data/vendor/zstd/lib/common/xxhash.o +0 -0
  270. data/vendor/zstd/lib/common/zstd_common.c +57 -0
  271. data/vendor/zstd/lib/common/zstd_common.o +0 -0
  272. data/vendor/zstd/lib/common/zstd_deps.h +123 -0
  273. data/vendor/zstd/lib/common/zstd_internal.h +326 -0
  274. data/vendor/zstd/lib/common/zstd_trace.h +156 -0
  275. data/vendor/zstd/lib/compress/clevels.h +134 -0
  276. data/vendor/zstd/lib/compress/fse_compress.c +625 -0
  277. data/vendor/zstd/lib/compress/fse_compress.o +0 -0
  278. data/vendor/zstd/lib/compress/hist.c +446 -0
  279. data/vendor/zstd/lib/compress/hist.h +86 -0
  280. data/vendor/zstd/lib/compress/hist.o +0 -0
  281. data/vendor/zstd/lib/compress/huf_compress.c +1465 -0
  282. data/vendor/zstd/lib/compress/huf_compress.o +0 -0
  283. data/vendor/zstd/lib/compress/zstd_compress.c +8362 -0
  284. data/vendor/zstd/lib/compress/zstd_compress.o +0 -0
  285. data/vendor/zstd/lib/compress/zstd_compress_internal.h +1636 -0
  286. data/vendor/zstd/lib/compress/zstd_compress_literals.c +235 -0
  287. data/vendor/zstd/lib/compress/zstd_compress_literals.h +39 -0
  288. data/vendor/zstd/lib/compress/zstd_compress_literals.o +0 -0
  289. data/vendor/zstd/lib/compress/zstd_compress_sequences.c +442 -0
  290. data/vendor/zstd/lib/compress/zstd_compress_sequences.h +55 -0
  291. data/vendor/zstd/lib/compress/zstd_compress_sequences.o +0 -0
  292. data/vendor/zstd/lib/compress/zstd_compress_superblock.c +688 -0
  293. data/vendor/zstd/lib/compress/zstd_compress_superblock.h +32 -0
  294. data/vendor/zstd/lib/compress/zstd_compress_superblock.o +0 -0
  295. data/vendor/zstd/lib/compress/zstd_cwksp.h +765 -0
  296. data/vendor/zstd/lib/compress/zstd_double_fast.c +778 -0
  297. data/vendor/zstd/lib/compress/zstd_double_fast.h +42 -0
  298. data/vendor/zstd/lib/compress/zstd_double_fast.o +0 -0
  299. data/vendor/zstd/lib/compress/zstd_fast.c +985 -0
  300. data/vendor/zstd/lib/compress/zstd_fast.h +30 -0
  301. data/vendor/zstd/lib/compress/zstd_fast.o +0 -0
  302. data/vendor/zstd/lib/compress/zstd_lazy.c +2243 -0
  303. data/vendor/zstd/lib/compress/zstd_lazy.h +193 -0
  304. data/vendor/zstd/lib/compress/zstd_lazy.o +0 -0
  305. data/vendor/zstd/lib/compress/zstd_ldm.c +745 -0
  306. data/vendor/zstd/lib/compress/zstd_ldm.h +109 -0
  307. data/vendor/zstd/lib/compress/zstd_ldm.o +0 -0
  308. data/vendor/zstd/lib/compress/zstd_ldm_geartab.h +106 -0
  309. data/vendor/zstd/lib/compress/zstd_opt.c +1572 -0
  310. data/vendor/zstd/lib/compress/zstd_opt.h +72 -0
  311. data/vendor/zstd/lib/compress/zstd_opt.o +0 -0
  312. data/vendor/zstd/lib/compress/zstd_preSplit.c +238 -0
  313. data/vendor/zstd/lib/compress/zstd_preSplit.h +33 -0
  314. data/vendor/zstd/lib/compress/zstd_preSplit.o +0 -0
  315. data/vendor/zstd/lib/compress/zstdmt_compress.c +1924 -0
  316. data/vendor/zstd/lib/compress/zstdmt_compress.h +102 -0
  317. data/vendor/zstd/lib/compress/zstdmt_compress.o +0 -0
  318. data/vendor/zstd/lib/decompress/huf_decompress.c +1953 -0
  319. data/vendor/zstd/lib/decompress/huf_decompress.o +0 -0
  320. data/vendor/zstd/lib/decompress/huf_decompress_amd64.S +766 -0
  321. data/vendor/zstd/lib/decompress/zstd_ddict.c +244 -0
  322. data/vendor/zstd/lib/decompress/zstd_ddict.h +44 -0
  323. data/vendor/zstd/lib/decompress/zstd_ddict.o +0 -0
  324. data/vendor/zstd/lib/decompress/zstd_decompress.c +2410 -0
  325. data/vendor/zstd/lib/decompress/zstd_decompress.o +0 -0
  326. data/vendor/zstd/lib/decompress/zstd_decompress_block.c +2311 -0
  327. data/vendor/zstd/lib/decompress/zstd_decompress_block.h +73 -0
  328. data/vendor/zstd/lib/decompress/zstd_decompress_block.o +0 -0
  329. data/vendor/zstd/lib/decompress/zstd_decompress_internal.h +240 -0
  330. data/vendor/zstd/lib/deprecated/zbuff.h +214 -0
  331. data/vendor/zstd/lib/deprecated/zbuff_common.c +26 -0
  332. data/vendor/zstd/lib/deprecated/zbuff_compress.c +167 -0
  333. data/vendor/zstd/lib/deprecated/zbuff_decompress.c +77 -0
  334. data/vendor/zstd/lib/dictBuilder/cover.c +1333 -0
  335. data/vendor/zstd/lib/dictBuilder/cover.h +152 -0
  336. data/vendor/zstd/lib/dictBuilder/divsufsort.c +1913 -0
  337. data/vendor/zstd/lib/dictBuilder/divsufsort.h +57 -0
  338. data/vendor/zstd/lib/dictBuilder/fastcover.c +765 -0
  339. data/vendor/zstd/lib/dictBuilder/zdict.c +1137 -0
  340. data/vendor/zstd/lib/dll/example/Makefile +48 -0
  341. data/vendor/zstd/lib/dll/example/README.md +63 -0
  342. data/vendor/zstd/lib/dll/example/build_package.bat +55 -0
  343. data/vendor/zstd/lib/dll/example/fullbench-dll.sln +25 -0
  344. data/vendor/zstd/lib/dll/example/fullbench-dll.vcxproj +181 -0
  345. data/vendor/zstd/lib/install_oses.mk +17 -0
  346. data/vendor/zstd/lib/legacy/zstd_legacy.h +452 -0
  347. data/vendor/zstd/lib/legacy/zstd_v01.c +2128 -0
  348. data/vendor/zstd/lib/legacy/zstd_v01.h +94 -0
  349. data/vendor/zstd/lib/legacy/zstd_v02.c +3465 -0
  350. data/vendor/zstd/lib/legacy/zstd_v02.h +93 -0
  351. data/vendor/zstd/lib/legacy/zstd_v03.c +3105 -0
  352. data/vendor/zstd/lib/legacy/zstd_v03.h +93 -0
  353. data/vendor/zstd/lib/legacy/zstd_v04.c +3598 -0
  354. data/vendor/zstd/lib/legacy/zstd_v04.h +142 -0
  355. data/vendor/zstd/lib/legacy/zstd_v05.c +4005 -0
  356. data/vendor/zstd/lib/legacy/zstd_v05.h +162 -0
  357. data/vendor/zstd/lib/legacy/zstd_v06.c +4110 -0
  358. data/vendor/zstd/lib/legacy/zstd_v06.h +172 -0
  359. data/vendor/zstd/lib/legacy/zstd_v07.c +4490 -0
  360. data/vendor/zstd/lib/legacy/zstd_v07.h +187 -0
  361. data/vendor/zstd/lib/libzstd.mk +238 -0
  362. data/vendor/zstd/lib/libzstd.pc.in +17 -0
  363. data/vendor/zstd/lib/module.modulemap +35 -0
  364. data/vendor/zstd/lib/zdict.h +481 -0
  365. data/vendor/zstd/lib/zstd.h +3209 -0
  366. data/vendor/zstd/lib/zstd_errors.h +107 -0
  367. data/vendor/zstd/programs/BUCK +44 -0
  368. data/vendor/zstd/programs/Makefile +445 -0
  369. data/vendor/zstd/programs/README.md +344 -0
  370. data/vendor/zstd/programs/benchfn.c +256 -0
  371. data/vendor/zstd/programs/benchfn.h +173 -0
  372. data/vendor/zstd/programs/benchzstd.c +1270 -0
  373. data/vendor/zstd/programs/benchzstd.h +191 -0
  374. data/vendor/zstd/programs/datagen.c +186 -0
  375. data/vendor/zstd/programs/datagen.h +38 -0
  376. data/vendor/zstd/programs/dibio.c +447 -0
  377. data/vendor/zstd/programs/dibio.h +39 -0
  378. data/vendor/zstd/programs/fileio.c +3717 -0
  379. data/vendor/zstd/programs/fileio.h +171 -0
  380. data/vendor/zstd/programs/fileio_asyncio.c +663 -0
  381. data/vendor/zstd/programs/fileio_asyncio.h +195 -0
  382. data/vendor/zstd/programs/fileio_common.h +121 -0
  383. data/vendor/zstd/programs/fileio_types.h +86 -0
  384. data/vendor/zstd/programs/lorem.c +285 -0
  385. data/vendor/zstd/programs/lorem.h +32 -0
  386. data/vendor/zstd/programs/platform.h +217 -0
  387. data/vendor/zstd/programs/timefn.c +170 -0
  388. data/vendor/zstd/programs/timefn.h +59 -0
  389. data/vendor/zstd/programs/util.c +1731 -0
  390. data/vendor/zstd/programs/util.h +364 -0
  391. data/vendor/zstd/programs/windres/verrsrc.h +17 -0
  392. data/vendor/zstd/programs/windres/zstd.rc +51 -0
  393. data/vendor/zstd/programs/windres/zstd32.res +0 -0
  394. data/vendor/zstd/programs/windres/zstd64.res +0 -0
  395. data/vendor/zstd/programs/zstd.1 +580 -0
  396. data/vendor/zstd/programs/zstd.1.md +714 -0
  397. data/vendor/zstd/programs/zstdcli.c +1675 -0
  398. data/vendor/zstd/programs/zstdcli_trace.c +173 -0
  399. data/vendor/zstd/programs/zstdcli_trace.h +24 -0
  400. data/vendor/zstd/programs/zstdgrep +134 -0
  401. data/vendor/zstd/programs/zstdgrep.1 +26 -0
  402. data/vendor/zstd/programs/zstdgrep.1.md +30 -0
  403. data/vendor/zstd/programs/zstdless +8 -0
  404. data/vendor/zstd/programs/zstdless.1 +14 -0
  405. data/vendor/zstd/programs/zstdless.1.md +16 -0
  406. data/vendor/zstd/tests/DEPRECATED-test-zstd-speed.py +378 -0
  407. data/vendor/zstd/tests/Makefile +485 -0
  408. data/vendor/zstd/tests/README.md +184 -0
  409. data/vendor/zstd/tests/automated_benchmarking.py +326 -0
  410. data/vendor/zstd/tests/checkTag.c +65 -0
  411. data/vendor/zstd/tests/check_size.py +31 -0
  412. data/vendor/zstd/tests/cli-tests/README.md +258 -0
  413. data/vendor/zstd/tests/cli-tests/basic/args.sh +10 -0
  414. data/vendor/zstd/tests/cli-tests/basic/args.sh.exit +1 -0
  415. data/vendor/zstd/tests/cli-tests/basic/args.sh.stderr.glob +28 -0
  416. data/vendor/zstd/tests/cli-tests/basic/help.sh +10 -0
  417. data/vendor/zstd/tests/cli-tests/basic/help.sh.stdout.glob +34 -0
  418. data/vendor/zstd/tests/cli-tests/basic/memlimit.sh +40 -0
  419. data/vendor/zstd/tests/cli-tests/basic/memlimit.sh.stderr.exact +13 -0
  420. data/vendor/zstd/tests/cli-tests/basic/memlimit.sh.stdout.exact +13 -0
  421. data/vendor/zstd/tests/cli-tests/basic/output_dir.sh +7 -0
  422. data/vendor/zstd/tests/cli-tests/basic/output_dir.sh.stderr.exact +2 -0
  423. data/vendor/zstd/tests/cli-tests/basic/output_dir.sh.stdout.exact +2 -0
  424. data/vendor/zstd/tests/cli-tests/basic/version.sh +6 -0
  425. data/vendor/zstd/tests/cli-tests/basic/version.sh.stdout.glob +2 -0
  426. data/vendor/zstd/tests/cli-tests/bin/cmp_size +44 -0
  427. data/vendor/zstd/tests/cli-tests/bin/datagen +3 -0
  428. data/vendor/zstd/tests/cli-tests/bin/die +4 -0
  429. data/vendor/zstd/tests/cli-tests/bin/println +2 -0
  430. data/vendor/zstd/tests/cli-tests/bin/unzstd +1 -0
  431. data/vendor/zstd/tests/cli-tests/bin/zstd +9 -0
  432. data/vendor/zstd/tests/cli-tests/bin/zstdcat +1 -0
  433. data/vendor/zstd/tests/cli-tests/bin/zstdgrep +2 -0
  434. data/vendor/zstd/tests/cli-tests/bin/zstdless +2 -0
  435. data/vendor/zstd/tests/cli-tests/cltools/setup +6 -0
  436. data/vendor/zstd/tests/cli-tests/cltools/zstdgrep.sh +8 -0
  437. data/vendor/zstd/tests/cli-tests/cltools/zstdgrep.sh.exit +1 -0
  438. data/vendor/zstd/tests/cli-tests/cltools/zstdgrep.sh.stderr.exact +1 -0
  439. data/vendor/zstd/tests/cli-tests/cltools/zstdgrep.sh.stdout.glob +4 -0
  440. data/vendor/zstd/tests/cli-tests/cltools/zstdless.sh +10 -0
  441. data/vendor/zstd/tests/cli-tests/cltools/zstdless.sh.stderr.exact +2 -0
  442. data/vendor/zstd/tests/cli-tests/cltools/zstdless.sh.stdout.glob +5 -0
  443. data/vendor/zstd/tests/cli-tests/common/format.sh +19 -0
  444. data/vendor/zstd/tests/cli-tests/common/mtime.sh +13 -0
  445. data/vendor/zstd/tests/cli-tests/common/permissions.sh +18 -0
  446. data/vendor/zstd/tests/cli-tests/common/platform.sh +47 -0
  447. data/vendor/zstd/tests/cli-tests/compression/adapt.sh +14 -0
  448. data/vendor/zstd/tests/cli-tests/compression/basic.sh +36 -0
  449. data/vendor/zstd/tests/cli-tests/compression/compress-literals.sh +10 -0
  450. data/vendor/zstd/tests/cli-tests/compression/format.sh +16 -0
  451. data/vendor/zstd/tests/cli-tests/compression/golden.sh +16 -0
  452. data/vendor/zstd/tests/cli-tests/compression/gzip-compat.sh +17 -0
  453. data/vendor/zstd/tests/cli-tests/compression/levels.sh +75 -0
  454. data/vendor/zstd/tests/cli-tests/compression/levels.sh.stderr.exact +80 -0
  455. data/vendor/zstd/tests/cli-tests/compression/long-distance-matcher.sh +7 -0
  456. data/vendor/zstd/tests/cli-tests/compression/multi-threaded.sh +22 -0
  457. data/vendor/zstd/tests/cli-tests/compression/multi-threaded.sh.stderr.exact +21 -0
  458. data/vendor/zstd/tests/cli-tests/compression/multiple-files.sh +21 -0
  459. data/vendor/zstd/tests/cli-tests/compression/multiple-files.sh.stdout.exact +12 -0
  460. data/vendor/zstd/tests/cli-tests/compression/row-match-finder.sh +7 -0
  461. data/vendor/zstd/tests/cli-tests/compression/setup +7 -0
  462. data/vendor/zstd/tests/cli-tests/compression/stream-size.sh +7 -0
  463. data/vendor/zstd/tests/cli-tests/compression/verbose-wlog.sh +11 -0
  464. data/vendor/zstd/tests/cli-tests/compression/verbose-wlog.sh.stderr.glob +5 -0
  465. data/vendor/zstd/tests/cli-tests/compression/verbose-wlog.sh.stdout.glob +5 -0
  466. data/vendor/zstd/tests/cli-tests/compression/window-resize.sh +9 -0
  467. data/vendor/zstd/tests/cli-tests/compression/window-resize.sh.stderr.ignore +0 -0
  468. data/vendor/zstd/tests/cli-tests/compression/window-resize.sh.stdout.glob +3 -0
  469. data/vendor/zstd/tests/cli-tests/decompression/detectErrors.sh +11 -0
  470. data/vendor/zstd/tests/cli-tests/decompression/golden.sh +7 -0
  471. data/vendor/zstd/tests/cli-tests/decompression/pass-through.sh +57 -0
  472. data/vendor/zstd/tests/cli-tests/decompression/pass-through.sh.stderr.exact +11 -0
  473. data/vendor/zstd/tests/cli-tests/decompression/pass-through.sh.stdout.exact +25 -0
  474. data/vendor/zstd/tests/cli-tests/determinism/basic.sh +36 -0
  475. data/vendor/zstd/tests/cli-tests/determinism/basic.sh.stderr.exact +0 -0
  476. data/vendor/zstd/tests/cli-tests/determinism/basic.sh.stdout.exact +880 -0
  477. data/vendor/zstd/tests/cli-tests/determinism/multithread.sh +45 -0
  478. data/vendor/zstd/tests/cli-tests/determinism/multithread.sh.stderr.exact +0 -0
  479. data/vendor/zstd/tests/cli-tests/determinism/multithread.sh.stdout.exact +260 -0
  480. data/vendor/zstd/tests/cli-tests/determinism/reuse.sh +44 -0
  481. data/vendor/zstd/tests/cli-tests/determinism/reuse.sh.stderr.exact +0 -0
  482. data/vendor/zstd/tests/cli-tests/determinism/reuse.sh.stdout.exact +19 -0
  483. data/vendor/zstd/tests/cli-tests/determinism/setup +5 -0
  484. data/vendor/zstd/tests/cli-tests/determinism/setup_once +30 -0
  485. data/vendor/zstd/tests/cli-tests/dict-builder/empty-input.sh +9 -0
  486. data/vendor/zstd/tests/cli-tests/dict-builder/empty-input.sh.stderr.exact +1 -0
  487. data/vendor/zstd/tests/cli-tests/dict-builder/no-inputs.sh +3 -0
  488. data/vendor/zstd/tests/cli-tests/dict-builder/no-inputs.sh.exit +1 -0
  489. data/vendor/zstd/tests/cli-tests/dict-builder/no-inputs.sh.stderr.exact +5 -0
  490. data/vendor/zstd/tests/cli-tests/dictionaries/dictionary-mismatch.sh +29 -0
  491. data/vendor/zstd/tests/cli-tests/dictionaries/dictionary-mismatch.sh.stderr.exact +7 -0
  492. data/vendor/zstd/tests/cli-tests/dictionaries/golden.sh +9 -0
  493. data/vendor/zstd/tests/cli-tests/dictionaries/setup +6 -0
  494. data/vendor/zstd/tests/cli-tests/dictionaries/setup_once +24 -0
  495. data/vendor/zstd/tests/cli-tests/file-handling/directory-mirror.sh +49 -0
  496. data/vendor/zstd/tests/cli-tests/file-handling/directory-mirror.sh.stderr.exact +0 -0
  497. data/vendor/zstd/tests/cli-tests/file-handling/directory-mirror.sh.stdout.exact +0 -0
  498. data/vendor/zstd/tests/cli-tests/file-stat/compress-file-to-dir-without-write-perm.sh +12 -0
  499. data/vendor/zstd/tests/cli-tests/file-stat/compress-file-to-dir-without-write-perm.sh.stderr.exact +30 -0
  500. data/vendor/zstd/tests/cli-tests/file-stat/compress-file-to-file.sh +9 -0
  501. data/vendor/zstd/tests/cli-tests/file-stat/compress-file-to-file.sh.stderr.glob +46 -0
  502. data/vendor/zstd/tests/cli-tests/file-stat/compress-file-to-stdout.sh +8 -0
  503. data/vendor/zstd/tests/cli-tests/file-stat/compress-file-to-stdout.sh.stderr.exact +24 -0
  504. data/vendor/zstd/tests/cli-tests/file-stat/compress-stdin-to-file.sh +8 -0
  505. data/vendor/zstd/tests/cli-tests/file-stat/compress-stdin-to-file.sh.stderr.glob +28 -0
  506. data/vendor/zstd/tests/cli-tests/file-stat/compress-stdin-to-stdout.sh +8 -0
  507. data/vendor/zstd/tests/cli-tests/file-stat/compress-stdin-to-stdout.sh.stderr.exact +18 -0
  508. data/vendor/zstd/tests/cli-tests/file-stat/decompress-file-to-file.sh +8 -0
  509. data/vendor/zstd/tests/cli-tests/file-stat/decompress-file-to-file.sh.stderr.glob +42 -0
  510. data/vendor/zstd/tests/cli-tests/file-stat/decompress-file-to-stdout.sh +7 -0
  511. data/vendor/zstd/tests/cli-tests/file-stat/decompress-file-to-stdout.sh.stderr.exact +18 -0
  512. data/vendor/zstd/tests/cli-tests/file-stat/decompress-stdin-to-file.sh +7 -0
  513. data/vendor/zstd/tests/cli-tests/file-stat/decompress-stdin-to-file.sh.stderr.glob +24 -0
  514. data/vendor/zstd/tests/cli-tests/file-stat/decompress-stdin-to-stdout.sh +7 -0
  515. data/vendor/zstd/tests/cli-tests/file-stat/decompress-stdin-to-stdout.sh.stderr.exact +14 -0
  516. data/vendor/zstd/tests/cli-tests/progress/no-progress.sh +46 -0
  517. data/vendor/zstd/tests/cli-tests/progress/no-progress.sh.stderr.glob +96 -0
  518. data/vendor/zstd/tests/cli-tests/progress/progress.sh +41 -0
  519. data/vendor/zstd/tests/cli-tests/progress/progress.sh.stderr.glob +62 -0
  520. data/vendor/zstd/tests/cli-tests/run.py +732 -0
  521. data/vendor/zstd/tests/cli-tests/zstd-symlinks/setup +6 -0
  522. data/vendor/zstd/tests/cli-tests/zstd-symlinks/zstdcat.sh +12 -0
  523. data/vendor/zstd/tests/cli-tests/zstd-symlinks/zstdcat.sh.stdout.exact +8 -0
  524. data/vendor/zstd/tests/datagencli.c +149 -0
  525. data/vendor/zstd/tests/decodecorpus.c +1998 -0
  526. data/vendor/zstd/tests/dict-files/zero-weight-dict +0 -0
  527. data/vendor/zstd/tests/external_matchfinder.c +140 -0
  528. data/vendor/zstd/tests/external_matchfinder.h +39 -0
  529. data/vendor/zstd/tests/fullbench.c +1210 -0
  530. data/vendor/zstd/tests/fuzz/Makefile +278 -0
  531. data/vendor/zstd/tests/fuzz/README.md +161 -0
  532. data/vendor/zstd/tests/fuzz/block_decompress.c +53 -0
  533. data/vendor/zstd/tests/fuzz/block_round_trip.c +103 -0
  534. data/vendor/zstd/tests/fuzz/decompress_cross_format.c +130 -0
  535. data/vendor/zstd/tests/fuzz/decompress_dstSize_tooSmall.c +74 -0
  536. data/vendor/zstd/tests/fuzz/dictionary_decompress.c +77 -0
  537. data/vendor/zstd/tests/fuzz/dictionary_loader.c +106 -0
  538. data/vendor/zstd/tests/fuzz/dictionary_round_trip.c +155 -0
  539. data/vendor/zstd/tests/fuzz/dictionary_stream_round_trip.c +209 -0
  540. data/vendor/zstd/tests/fuzz/fse_read_ncount.c +100 -0
  541. data/vendor/zstd/tests/fuzz/fuzz.h +57 -0
  542. data/vendor/zstd/tests/fuzz/fuzz.py +910 -0
  543. data/vendor/zstd/tests/fuzz/fuzz_data_producer.c +95 -0
  544. data/vendor/zstd/tests/fuzz/fuzz_data_producer.h +66 -0
  545. data/vendor/zstd/tests/fuzz/fuzz_helpers.c +47 -0
  546. data/vendor/zstd/tests/fuzz/fuzz_helpers.h +82 -0
  547. data/vendor/zstd/tests/fuzz/fuzz_third_party_seq_prod.h +116 -0
  548. data/vendor/zstd/tests/fuzz/generate_sequences.c +88 -0
  549. data/vendor/zstd/tests/fuzz/huf_decompress.c +68 -0
  550. data/vendor/zstd/tests/fuzz/huf_round_trip.c +137 -0
  551. data/vendor/zstd/tests/fuzz/raw_dictionary_round_trip.c +119 -0
  552. data/vendor/zstd/tests/fuzz/regression_driver.c +90 -0
  553. data/vendor/zstd/tests/fuzz/seekable_roundtrip.c +88 -0
  554. data/vendor/zstd/tests/fuzz/seq_prod_fuzz_example/Makefile +16 -0
  555. data/vendor/zstd/tests/fuzz/seq_prod_fuzz_example/README.md +12 -0
  556. data/vendor/zstd/tests/fuzz/seq_prod_fuzz_example/example_seq_prod.c +52 -0
  557. data/vendor/zstd/tests/fuzz/sequence_compression_api.c +452 -0
  558. data/vendor/zstd/tests/fuzz/simple_compress.c +60 -0
  559. data/vendor/zstd/tests/fuzz/simple_decompress.c +59 -0
  560. data/vendor/zstd/tests/fuzz/simple_round_trip.c +182 -0
  561. data/vendor/zstd/tests/fuzz/stream_decompress.c +119 -0
  562. data/vendor/zstd/tests/fuzz/stream_round_trip.c +218 -0
  563. data/vendor/zstd/tests/fuzz/zstd_frame_info.c +43 -0
  564. data/vendor/zstd/tests/fuzz/zstd_helpers.c +208 -0
  565. data/vendor/zstd/tests/fuzz/zstd_helpers.h +56 -0
  566. data/vendor/zstd/tests/fuzzer.c +5482 -0
  567. data/vendor/zstd/tests/golden-compression/PR-3517-block-splitter-corruption-test +1 -0
  568. data/vendor/zstd/tests/golden-compression/http +1 -0
  569. data/vendor/zstd/tests/golden-compression/huffman-compressed-larger +0 -0
  570. data/vendor/zstd/tests/golden-compression/large-literal-and-match-lengths +0 -0
  571. data/vendor/zstd/tests/golden-decompression/block-128k.zst +0 -0
  572. data/vendor/zstd/tests/golden-decompression/empty-block.zst +0 -0
  573. data/vendor/zstd/tests/golden-decompression/rle-first-block.zst +0 -0
  574. data/vendor/zstd/tests/golden-decompression/zeroSeq_2B.zst +0 -0
  575. data/vendor/zstd/tests/golden-decompression-errors/off0.bin.zst +0 -0
  576. data/vendor/zstd/tests/golden-decompression-errors/truncated_huff_state.zst +0 -0
  577. data/vendor/zstd/tests/golden-decompression-errors/zeroSeq_extraneous.zst +0 -0
  578. data/vendor/zstd/tests/golden-dictionaries/http-dict-missing-symbols +0 -0
  579. data/vendor/zstd/tests/gzip/Makefile +45 -0
  580. data/vendor/zstd/tests/gzip/gzip-env.sh +46 -0
  581. data/vendor/zstd/tests/gzip/helin-segv.sh +31 -0
  582. data/vendor/zstd/tests/gzip/help-version.sh +270 -0
  583. data/vendor/zstd/tests/gzip/hufts-segv.gz +0 -0
  584. data/vendor/zstd/tests/gzip/hufts.sh +34 -0
  585. data/vendor/zstd/tests/gzip/init.cfg +5 -0
  586. data/vendor/zstd/tests/gzip/init.sh +616 -0
  587. data/vendor/zstd/tests/gzip/keep.sh +51 -0
  588. data/vendor/zstd/tests/gzip/list.sh +31 -0
  589. data/vendor/zstd/tests/gzip/memcpy-abuse.sh +34 -0
  590. data/vendor/zstd/tests/gzip/mixed.sh +68 -0
  591. data/vendor/zstd/tests/gzip/null-suffix-clobber.sh +35 -0
  592. data/vendor/zstd/tests/gzip/stdin.sh +31 -0
  593. data/vendor/zstd/tests/gzip/test-driver.sh +150 -0
  594. data/vendor/zstd/tests/gzip/trailing-nul.sh +37 -0
  595. data/vendor/zstd/tests/gzip/unpack-invalid.sh +36 -0
  596. data/vendor/zstd/tests/gzip/z-suffix.sh +30 -0
  597. data/vendor/zstd/tests/gzip/zdiff.sh +48 -0
  598. data/vendor/zstd/tests/gzip/zgrep-context.sh +47 -0
  599. data/vendor/zstd/tests/gzip/zgrep-f.sh +43 -0
  600. data/vendor/zstd/tests/gzip/zgrep-signal.sh +64 -0
  601. data/vendor/zstd/tests/gzip/znew-k.sh +40 -0
  602. data/vendor/zstd/tests/invalidDictionaries.c +61 -0
  603. data/vendor/zstd/tests/largeDictionary.c +131 -0
  604. data/vendor/zstd/tests/legacy.c +262 -0
  605. data/vendor/zstd/tests/libzstd_builds.sh +104 -0
  606. data/vendor/zstd/tests/longmatch.c +123 -0
  607. data/vendor/zstd/tests/loremOut.c +50 -0
  608. data/vendor/zstd/tests/loremOut.h +15 -0
  609. data/vendor/zstd/tests/paramgrill.c +2965 -0
  610. data/vendor/zstd/tests/playTests.sh +1926 -0
  611. data/vendor/zstd/tests/poolTests.c +271 -0
  612. data/vendor/zstd/tests/rateLimiter.py +41 -0
  613. data/vendor/zstd/tests/regression/Makefile +60 -0
  614. data/vendor/zstd/tests/regression/README.md +28 -0
  615. data/vendor/zstd/tests/regression/config.c +404 -0
  616. data/vendor/zstd/tests/regression/config.h +91 -0
  617. data/vendor/zstd/tests/regression/data.c +631 -0
  618. data/vendor/zstd/tests/regression/data.h +121 -0
  619. data/vendor/zstd/tests/regression/levels.h +59 -0
  620. data/vendor/zstd/tests/regression/method.c +701 -0
  621. data/vendor/zstd/tests/regression/method.h +65 -0
  622. data/vendor/zstd/tests/regression/result.c +30 -0
  623. data/vendor/zstd/tests/regression/result.h +103 -0
  624. data/vendor/zstd/tests/regression/results.csv +1480 -0
  625. data/vendor/zstd/tests/regression/test.c +362 -0
  626. data/vendor/zstd/tests/roundTripCrash.c +241 -0
  627. data/vendor/zstd/tests/seqgen.c +260 -0
  628. data/vendor/zstd/tests/seqgen.h +58 -0
  629. data/vendor/zstd/tests/test-license.py +156 -0
  630. data/vendor/zstd/tests/test-variants.sh +115 -0
  631. data/vendor/zstd/tests/test-zstd-versions.py +308 -0
  632. data/vendor/zstd/tests/test_process_substitution.bash +92 -0
  633. data/vendor/zstd/tests/zstreamtest.c +3467 -0
  634. data/vendor/zstd/zlibWrapper/BUCK +22 -0
  635. data/vendor/zstd/zlibWrapper/Makefile +120 -0
  636. data/vendor/zstd/zlibWrapper/README.md +163 -0
  637. data/vendor/zstd/zlibWrapper/examples/example.c +598 -0
  638. data/vendor/zstd/zlibWrapper/examples/example_original.c +599 -0
  639. data/vendor/zstd/zlibWrapper/examples/fitblk.c +254 -0
  640. data/vendor/zstd/zlibWrapper/examples/fitblk_original.c +233 -0
  641. data/vendor/zstd/zlibWrapper/examples/minigzip.c +605 -0
  642. data/vendor/zstd/zlibWrapper/examples/zwrapbench.c +1018 -0
  643. data/vendor/zstd/zlibWrapper/gzclose.c +26 -0
  644. data/vendor/zstd/zlibWrapper/gzcompatibility.h +68 -0
  645. data/vendor/zstd/zlibWrapper/gzguts.h +229 -0
  646. data/vendor/zstd/zlibWrapper/gzlib.c +587 -0
  647. data/vendor/zstd/zlibWrapper/gzread.c +637 -0
  648. data/vendor/zstd/zlibWrapper/gzwrite.c +632 -0
  649. data/vendor/zstd/zlibWrapper/zstd_zlibwrapper.c +1200 -0
  650. data/vendor/zstd/zlibWrapper/zstd_zlibwrapper.h +91 -0
  651. metadata +738 -0
@@ -0,0 +1,616 @@
1
+ # source this file; set up for tests
2
+
3
+ # Copyright (C) 2009-2016 Free Software Foundation, Inc.
4
+
5
+ # This program is free software: you can redistribute it and/or modify
6
+ # it under the terms of the GNU General Public License as published by
7
+ # the Free Software Foundation, either version 3 of the License, or
8
+ # (at your option) any later version.
9
+
10
+ # This program is distributed in the hope that it will be useful,
11
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ # GNU General Public License for more details.
14
+
15
+ # You should have received a copy of the GNU General Public License
16
+ # along with this program. If not, see <https://www.gnu.org/licenses/>.
17
+
18
+ # Using this file in a test
19
+ # =========================
20
+ #
21
+ # The typical skeleton of a test looks like this:
22
+ #
23
+ # #!/bin/sh
24
+ # . "${srcdir=.}/init.sh"; path_prepend_ .
25
+ # Execute some commands.
26
+ # Note that these commands are executed in a subdirectory, therefore you
27
+ # need to prepend "../" to relative filenames in the build directory.
28
+ # Note that the "path_prepend_ ." is useful only if the body of your
29
+ # test invokes programs residing in the initial directory.
30
+ # For example, if the programs you want to test are in src/, and this test
31
+ # script is named tests/test-1, then you would use "path_prepend_ ../src",
32
+ # or perhaps export PATH='$(abs_top_builddir)/src$(PATH_SEPARATOR)'"$$PATH"
33
+ # to all tests via automake's TESTS_ENVIRONMENT.
34
+ # Set the exit code 0 for success, 77 for skipped, or 1 or other for failure.
35
+ # Use the skip_ and fail_ functions to print a diagnostic and then exit
36
+ # with the corresponding exit code.
37
+ # Exit $?
38
+
39
+ # Executing a test that uses this file
40
+ # ====================================
41
+ #
42
+ # Running a single test:
43
+ # $ make check TESTS=test-foo.sh
44
+ #
45
+ # Running a single test, with verbose output:
46
+ # $ make check TESTS=test-foo.sh VERBOSE=yes
47
+ #
48
+ # Running a single test, with single-stepping:
49
+ # 1. Go into a sub-shell:
50
+ # $ bash
51
+ # 2. Set relevant environment variables from TESTS_ENVIRONMENT in the
52
+ # Makefile:
53
+ # $ export srcdir=../../tests # this is an example
54
+ # 3. Execute the commands from the test, copy&pasting them one by one:
55
+ # $ . "$srcdir/init.sh"; path_prepend_ .
56
+ # ...
57
+ # 4. Finally
58
+ # $ exit
59
+
60
+ ME_=`expr "./$0" : '.*/\(.*\)$'`
61
+
62
+ # We use a trap below for cleanup. This requires us to go through
63
+ # hoops to get the right exit status transported through the handler.
64
+ # So use 'Exit STATUS' instead of 'exit STATUS' inside of the tests.
65
+ # Turn off errexit here so that we don't trip the bug with OSF1/Tru64
66
+ # sh inside this function.
67
+ Exit () { set +e; (exit $1); exit $1; }
68
+
69
+ # Print warnings (e.g., about skipped and failed tests) to this file number.
70
+ # Override by defining to say, 9, in init.cfg, and putting say,
71
+ # export ...ENVVAR_SETTINGS...; $(SHELL) 9>&2
72
+ # in the definition of TESTS_ENVIRONMENT in your tests/Makefile.am file.
73
+ # This is useful when using automake's parallel tests mode, to print
74
+ # the reason for skip/failure to console, rather than to the .log files.
75
+ : ${stderr_fileno_=2}
76
+
77
+ # Note that correct expansion of "$*" depends on IFS starting with ' '.
78
+ # Always write the full diagnostic to stderr.
79
+ # When stderr_fileno_ is not 2, also emit the first line of the
80
+ # diagnostic to that file descriptor.
81
+ warn_ ()
82
+ {
83
+ # If IFS does not start with ' ', set it and emit the warning in a subshell.
84
+ case $IFS in
85
+ ' '*) printf '%s\n' "$*" >&2
86
+ test $stderr_fileno_ = 2 \
87
+ || { printf '%s\n' "$*" | sed 1q >&$stderr_fileno_ ; } ;;
88
+ *) (IFS=' '; warn_ "$@");;
89
+ esac
90
+ }
91
+ fail_ () { warn_ "$ME_: failed test: $@"; Exit 1; }
92
+ skip_ () { warn_ "$ME_: skipped test: $@"; Exit 77; }
93
+ fatal_ () { warn_ "$ME_: hard error: $@"; Exit 99; }
94
+ framework_failure_ () { warn_ "$ME_: set-up failure: $@"; Exit 99; }
95
+
96
+ # This is used to simplify checking of the return value
97
+ # which is useful when ensuring a command fails as desired.
98
+ # I.e., just doing `command ... &&fail=1` will not catch
99
+ # a segfault in command for example. With this helper you
100
+ # instead check an explicit exit code like
101
+ # returns_ 1 command ... || fail
102
+ returns_ () {
103
+ # Disable tracing so it doesn't interfere with stderr of the wrapped command
104
+ { set +x; } 2>/dev/null
105
+
106
+ local exp_exit="$1"
107
+ shift
108
+ "$@"
109
+ test $? -eq $exp_exit && ret_=0 || ret_=1
110
+
111
+ if test "$VERBOSE" = yes && test "$gl_set_x_corrupts_stderr_" = false; then
112
+ set -x
113
+ fi
114
+ { return $ret_; } 2>/dev/null
115
+ }
116
+
117
+ # Sanitize this shell to POSIX mode, if possible.
118
+ DUALCASE=1; export DUALCASE
119
+ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
120
+ emulate sh
121
+ NULLCMD=:
122
+ alias -g '${1+"$@"}'='"$@"'
123
+ setopt NO_GLOB_SUBST
124
+ else
125
+ case `(set -o) 2>/dev/null` in
126
+ *posix*) set -o posix ;;
127
+ esac
128
+ fi
129
+
130
+ # We require $(...) support unconditionally.
131
+ # We require a few additional shell features only when $EXEEXT is nonempty,
132
+ # in order to support automatic $EXEEXT emulation:
133
+ # - hyphen-containing alias names
134
+ # - we prefer to use ${var#...} substitution, rather than having
135
+ # to work around lack of support for that feature.
136
+ # The following code attempts to find a shell with support for these features.
137
+ # If the current shell passes the test, we're done. Otherwise, test other
138
+ # shells until we find one that passes. If one is found, re-exec it.
139
+ # If no acceptable shell is found, skip the current test.
140
+ #
141
+ # The "...set -x; P=1 true 2>err..." test is to disqualify any shell that
142
+ # emits "P=1" into err, as /bin/sh from SunOS 5.11 and OpenBSD 4.7 do.
143
+ #
144
+ # Use "9" to indicate success (rather than 0), in case some shell acts
145
+ # like Solaris 10's /bin/sh but exits successfully instead of with status 2.
146
+
147
+ # Eval this code in a subshell to determine a shell's suitability.
148
+ # 10 - passes all tests; ok to use
149
+ # 9 - ok, but enabling "set -x" corrupts app stderr; prefer higher score
150
+ # ? - not ok
151
+ gl_shell_test_script_='
152
+ test $(echo y) = y || exit 1
153
+ f_local_() { local v=1; }; f_local_ || exit 1
154
+ score_=10
155
+ if test "$VERBOSE" = yes; then
156
+ test -n "$( (exec 3>&1; set -x; P=1 true 2>&3) 2> /dev/null)" && score_=9
157
+ fi
158
+ test -z "$EXEEXT" && exit $score_
159
+ shopt -s expand_aliases
160
+ alias a-b="echo zoo"
161
+ v=abx
162
+ test ${v%x} = ab \
163
+ && test ${v#a} = bx \
164
+ && test $(a-b) = zoo \
165
+ && exit $score_
166
+ '
167
+
168
+ if test "x$1" = "x--no-reexec"; then
169
+ shift
170
+ else
171
+ # Assume a working shell. Export to subshells (setup_ needs this).
172
+ gl_set_x_corrupts_stderr_=false
173
+ export gl_set_x_corrupts_stderr_
174
+
175
+ # Record the first marginally acceptable shell.
176
+ marginal_=
177
+
178
+ # Search for a shell that meets our requirements.
179
+ for re_shell_ in __current__ "${CONFIG_SHELL:-no_shell}" \
180
+ /bin/sh bash dash zsh pdksh fail
181
+ do
182
+ test "$re_shell_" = no_shell && continue
183
+
184
+ # If we've made it all the way to the sentinel, "fail" without
185
+ # finding even a marginal shell, skip this test.
186
+ if test "$re_shell_" = fail; then
187
+ test -z "$marginal_" && skip_ failed to find an adequate shell
188
+ re_shell_=$marginal_
189
+ break
190
+ fi
191
+
192
+ # When testing the current shell, simply "eval" the test code.
193
+ # Otherwise, run it via $re_shell_ -c ...
194
+ if test "$re_shell_" = __current__; then
195
+ # 'eval'ing this code makes Solaris 10's /bin/sh exit with
196
+ # $? set to 2. It does not evaluate any of the code after the
197
+ # "unexpected" first '('. Thus, we must run it in a subshell.
198
+ ( eval "$gl_shell_test_script_" ) > /dev/null 2>&1
199
+ else
200
+ "$re_shell_" -c "$gl_shell_test_script_" 2>/dev/null
201
+ fi
202
+
203
+ st_=$?
204
+
205
+ # $re_shell_ works just fine. Use it.
206
+ if test $st_ = 10; then
207
+ gl_set_x_corrupts_stderr_=false
208
+ break
209
+ fi
210
+
211
+ # If this is our first marginally acceptable shell, remember it.
212
+ if test "$st_:$marginal_" = 9: ; then
213
+ marginal_="$re_shell_"
214
+ gl_set_x_corrupts_stderr_=true
215
+ fi
216
+ done
217
+
218
+ if test "$re_shell_" != __current__; then
219
+ # Found a usable shell. Preserve -v and -x.
220
+ case $- in
221
+ *v*x* | *x*v*) opts_=-vx ;;
222
+ *v*) opts_=-v ;;
223
+ *x*) opts_=-x ;;
224
+ *) opts_= ;;
225
+ esac
226
+ re_shell=$re_shell_
227
+ export re_shell
228
+ exec "$re_shell_" $opts_ "$0" --no-reexec "$@"
229
+ echo "$ME_: exec failed" 1>&2
230
+ exit 127
231
+ fi
232
+ fi
233
+
234
+ # If this is bash, turn off all aliases.
235
+ test -n "$BASH_VERSION" && unalias -a
236
+
237
+ # Note that when supporting $EXEEXT (transparently mapping from PROG_NAME to
238
+ # PROG_NAME.exe), we want to support hyphen-containing names like test-acos.
239
+ # That is part of the shell-selection test above. Why use aliases rather
240
+ # than functions? Because support for hyphen-containing aliases is more
241
+ # widespread than that for hyphen-containing function names.
242
+ test -n "$EXEEXT" && shopt -s expand_aliases
243
+
244
+ # Enable glibc's malloc-perturbing option.
245
+ # This is useful for exposing code that depends on the fact that
246
+ # malloc-related functions often return memory that is mostly zeroed.
247
+ # If you have the time and cycles, use valgrind to do an even better job.
248
+ : ${MALLOC_PERTURB_=87}
249
+ export MALLOC_PERTURB_
250
+
251
+ # This is a stub function that is run upon trap (upon regular exit and
252
+ # interrupt). Override it with a per-test function, e.g., to unmount
253
+ # a partition, or to undo any other global state changes.
254
+ cleanup_ () { :; }
255
+
256
+ # Emit a header similar to that from diff -u; Print the simulated "diff"
257
+ # command so that the order of arguments is clear. Don't bother with @@ lines.
258
+ emit_diff_u_header_ ()
259
+ {
260
+ printf '%s\n' "diff -u $*" \
261
+ "--- $1 1970-01-01" \
262
+ "+++ $2 1970-01-01"
263
+ }
264
+
265
+ # Arrange not to let diff or cmp operate on /dev/null,
266
+ # since on some systems (at least OSF/1 5.1), that doesn't work.
267
+ # When there are not two arguments, or no argument is /dev/null, return 2.
268
+ # When one argument is /dev/null and the other is not empty,
269
+ # cat the nonempty file to stderr and return 1.
270
+ # Otherwise, return 0.
271
+ compare_dev_null_ ()
272
+ {
273
+ test $# = 2 || return 2
274
+
275
+ if test "x$1" = x/dev/null; then
276
+ test -s "$2" || return 0
277
+ emit_diff_u_header_ "$@"; sed 's/^/+/' "$2"
278
+ return 1
279
+ fi
280
+
281
+ if test "x$2" = x/dev/null; then
282
+ test -s "$1" || return 0
283
+ emit_diff_u_header_ "$@"; sed 's/^/-/' "$1"
284
+ return 1
285
+ fi
286
+
287
+ return 2
288
+ }
289
+
290
+ if diff_out_=`exec 2>/dev/null; diff -u "$0" "$0" < /dev/null` \
291
+ && diff -u Makefile "$0" 2>/dev/null | grep '^[+]#!' >/dev/null; then
292
+ # diff accepts the -u option and does not (like AIX 7 'diff') produce an
293
+ # extra space on column 1 of every content line.
294
+ if test -z "$diff_out_"; then
295
+ compare_ () { diff -u "$@"; }
296
+ else
297
+ compare_ ()
298
+ {
299
+ if diff -u "$@" > diff.out; then
300
+ # No differences were found, but Solaris 'diff' produces output
301
+ # "No differences encountered". Hide this output.
302
+ rm -f diff.out
303
+ true
304
+ else
305
+ cat diff.out
306
+ rm -f diff.out
307
+ false
308
+ fi
309
+ }
310
+ fi
311
+ elif
312
+ for diff_opt_ in -U3 -c '' no; do
313
+ test "$diff_opt_" = no && break
314
+ diff_out_=`exec 2>/dev/null; diff $diff_opt_ "$0" "$0" </dev/null` && break
315
+ done
316
+ test "$diff_opt_" != no
317
+ then
318
+ if test -z "$diff_out_"; then
319
+ compare_ () { diff $diff_opt_ "$@"; }
320
+ else
321
+ compare_ ()
322
+ {
323
+ if diff $diff_opt_ "$@" > diff.out; then
324
+ # No differences were found, but AIX and HP-UX 'diff' produce output
325
+ # "No differences encountered" or "There are no differences between the
326
+ # files.". Hide this output.
327
+ rm -f diff.out
328
+ true
329
+ else
330
+ cat diff.out
331
+ rm -f diff.out
332
+ false
333
+ fi
334
+ }
335
+ fi
336
+ elif cmp -s /dev/null /dev/null 2>/dev/null; then
337
+ compare_ () { cmp -s "$@"; }
338
+ else
339
+ compare_ () { cmp "$@"; }
340
+ fi
341
+
342
+ # Usage: compare EXPECTED ACTUAL
343
+ #
344
+ # Given compare_dev_null_'s preprocessing, defer to compare_ if 2 or more.
345
+ # Otherwise, propagate $? to caller: any diffs have already been printed.
346
+ compare ()
347
+ {
348
+ # This looks like it can be factored to use a simple "case $?"
349
+ # after unchecked compare_dev_null_ invocation, but that would
350
+ # fail in a "set -e" environment.
351
+ if compare_dev_null_ "$@"; then
352
+ return 0
353
+ else
354
+ case $? in
355
+ 1) return 1;;
356
+ *) compare_ "$@";;
357
+ esac
358
+ fi
359
+ }
360
+
361
+ # An arbitrary prefix to help distinguish test directories.
362
+ testdir_prefix_ () { printf gt; }
363
+
364
+ # Run the user-overridable cleanup_ function, remove the temporary
365
+ # directory and exit with the incoming value of $?.
366
+ remove_tmp_ ()
367
+ {
368
+ __st=$?
369
+ cleanup_
370
+ # cd out of the directory we're about to remove
371
+ cd "$initial_cwd_" || cd / || cd /tmp
372
+ chmod -R u+rwx "$test_dir_"
373
+ # If removal fails and exit status was to be 0, then change it to 1.
374
+ rm -rf "$test_dir_" || { test $__st = 0 && __st=1; }
375
+ exit $__st
376
+ }
377
+
378
+ # Given a directory name, DIR, if every entry in it that matches *.exe
379
+ # contains only the specified bytes (see the case stmt below), then print
380
+ # a space-separated list of those names and return 0. Otherwise, don't
381
+ # print anything and return 1. Naming constraints apply also to DIR.
382
+ find_exe_basenames_ ()
383
+ {
384
+ feb_dir_=$1
385
+ feb_fail_=0
386
+ feb_result_=
387
+ feb_sp_=
388
+ for feb_file_ in $feb_dir_/*.exe; do
389
+ # If there was no *.exe file, or there existed a file named "*.exe" that
390
+ # was deleted between the above glob expansion and the existence test
391
+ # below, just skip it.
392
+ test "x$feb_file_" = "x$feb_dir_/*.exe" && test ! -f "$feb_file_" \
393
+ && continue
394
+ # Exempt [.exe, since we can't create a function by that name, yet
395
+ # we can't invoke [ by PATH search anyways due to shell builtins.
396
+ test "x$feb_file_" = "x$feb_dir_/[.exe" && continue
397
+ case $feb_file_ in
398
+ *[!-a-zA-Z/0-9_.+]*) feb_fail_=1; break;;
399
+ *) # Remove leading file name components as well as the .exe suffix.
400
+ feb_file_=${feb_file_##*/}
401
+ feb_file_=${feb_file_%.exe}
402
+ feb_result_="$feb_result_$feb_sp_$feb_file_";;
403
+ esac
404
+ feb_sp_=' '
405
+ done
406
+ test $feb_fail_ = 0 && printf %s "$feb_result_"
407
+ return $feb_fail_
408
+ }
409
+
410
+ # Consider the files in directory, $1.
411
+ # For each file name of the form PROG.exe, create an alias named
412
+ # PROG that simply invokes PROG.exe, then return 0. If any selected
413
+ # file name or the directory name, $1, contains an unexpected character,
414
+ # define no alias and return 1.
415
+ create_exe_shims_ ()
416
+ {
417
+ case $EXEEXT in
418
+ '') return 0 ;;
419
+ .exe) ;;
420
+ *) echo "$0: unexpected \$EXEEXT value: $EXEEXT" 1>&2; return 1 ;;
421
+ esac
422
+
423
+ base_names_=`find_exe_basenames_ $1` \
424
+ || { echo "$0 (exe_shim): skipping directory: $1" 1>&2; return 0; }
425
+
426
+ if test -n "$base_names_"; then
427
+ for base_ in $base_names_; do
428
+ alias "$base_"="$base_$EXEEXT"
429
+ done
430
+ fi
431
+
432
+ return 0
433
+ }
434
+
435
+ # Use this function to prepend to PATH an absolute name for each
436
+ # specified, possibly-$initial_cwd_-relative, directory.
437
+ path_prepend_ ()
438
+ {
439
+ while test $# != 0; do
440
+ path_dir_=$1
441
+ case $path_dir_ in
442
+ '') fail_ "invalid path dir: '$1'";;
443
+ /*) abs_path_dir_=$path_dir_;;
444
+ *) abs_path_dir_=$initial_cwd_/$path_dir_;;
445
+ esac
446
+ case $abs_path_dir_ in
447
+ *:*) fail_ "invalid path dir: '$abs_path_dir_'";;
448
+ esac
449
+ PATH="$abs_path_dir_:$PATH"
450
+
451
+ # Create an alias, FOO, for each FOO.exe in this directory.
452
+ create_exe_shims_ "$abs_path_dir_" \
453
+ || fail_ "something failed (above): $abs_path_dir_"
454
+ shift
455
+ done
456
+ export PATH
457
+ }
458
+
459
+ setup_ ()
460
+ {
461
+ if test "$VERBOSE" = yes; then
462
+ # Test whether set -x may cause the selected shell to corrupt an
463
+ # application's stderr. Many do, including zsh-4.3.10 and the /bin/sh
464
+ # from SunOS 5.11, OpenBSD 4.7 and Irix 5.x and 6.5.
465
+ # If enabling verbose output this way would cause trouble, simply
466
+ # issue a warning and refrain.
467
+ if $gl_set_x_corrupts_stderr_; then
468
+ warn_ "using SHELL=$SHELL with 'set -x' corrupts stderr"
469
+ else
470
+ set -x
471
+ fi
472
+ fi
473
+
474
+ initial_cwd_=$PWD
475
+
476
+ pfx_=`testdir_prefix_`
477
+ test_dir_=`mktempd_ "$initial_cwd_" "$pfx_-$ME_.XXXX"` \
478
+ || fail_ "failed to create temporary directory in $initial_cwd_"
479
+ cd "$test_dir_" || fail_ "failed to cd to temporary directory"
480
+
481
+ # As autoconf-generated configure scripts do, ensure that IFS
482
+ # is defined initially, so that saving and restoring $IFS works.
483
+ gl_init_sh_nl_='
484
+ '
485
+ IFS=" "" $gl_init_sh_nl_"
486
+
487
+ # This trap statement, along with a trap on 0 below, ensure that the
488
+ # temporary directory, $test_dir_, is removed upon exit as well as
489
+ # upon receipt of any of the listed signals.
490
+ for sig_ in 1 2 3 13 15; do
491
+ eval "trap 'Exit $(expr $sig_ + 128)' $sig_"
492
+ done
493
+ }
494
+
495
+ # Create a temporary directory, much like mktemp -d does.
496
+ # Written by Jim Meyering.
497
+ #
498
+ # Usage: mktempd_ /tmp phoey.XXXXXXXXXX
499
+ #
500
+ # First, try to use the mktemp program.
501
+ # Failing that, we'll roll our own mktemp-like function:
502
+ # - try to get random bytes from /dev/urandom
503
+ # - failing that, generate output from a combination of quickly-varying
504
+ # sources and gzip. Ignore non-varying gzip header, and extract
505
+ # "random" bits from there.
506
+ # - given those bits, map to file-name bytes using tr, and try to create
507
+ # the desired directory.
508
+ # - make only $MAX_TRIES_ attempts
509
+
510
+ # Helper function. Print $N pseudo-random bytes from a-zA-Z0-9.
511
+ rand_bytes_ ()
512
+ {
513
+ n_=$1
514
+
515
+ # Maybe try openssl rand -base64 $n_prime_|tr '+/=\012' abcd first?
516
+ # But if they have openssl, they probably have mktemp, too.
517
+
518
+ chars_=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
519
+ dev_rand_=/dev/urandom
520
+ if test -r "$dev_rand_"; then
521
+ # Note: 256-length($chars_) == 194; 3 copies of $chars_ is 186 + 8 = 194.
522
+ dd ibs=$n_ count=1 if=$dev_rand_ 2>/dev/null \
523
+ | LC_ALL=C tr -c $chars_ 01234567$chars_$chars_$chars_
524
+ return
525
+ fi
526
+
527
+ n_plus_50_=`expr $n_ + 50`
528
+ cmds_='date; date +%N; free; who -a; w; ps auxww; ps ef; netstat -n'
529
+ data_=` (eval "$cmds_") 2>&1 | gzip `
530
+
531
+ # Ensure that $data_ has length at least 50+$n_
532
+ while :; do
533
+ len_=`echo "$data_"|wc -c`
534
+ test $n_plus_50_ -le $len_ && break;
535
+ data_=` (echo "$data_"; eval "$cmds_") 2>&1 | gzip `
536
+ done
537
+
538
+ echo "$data_" \
539
+ | dd bs=1 skip=50 count=$n_ 2>/dev/null \
540
+ | LC_ALL=C tr -c $chars_ 01234567$chars_$chars_$chars_
541
+ }
542
+
543
+ mktempd_ ()
544
+ {
545
+ case $# in
546
+ 2);;
547
+ *) fail_ "Usage: mktempd_ DIR TEMPLATE";;
548
+ esac
549
+
550
+ destdir_=$1
551
+ template_=$2
552
+
553
+ MAX_TRIES_=4
554
+
555
+ # Disallow any trailing slash on specified destdir:
556
+ # it would subvert the post-mktemp "case"-based destdir test.
557
+ case $destdir_ in
558
+ / | //) destdir_slash_=$destdir;;
559
+ */) fail_ "invalid destination dir: remove trailing slash(es)";;
560
+ *) destdir_slash_=$destdir_/;;
561
+ esac
562
+
563
+ case $template_ in
564
+ *XXXX) ;;
565
+ *) fail_ \
566
+ "invalid template: $template_ (must have a suffix of at least 4 X's)";;
567
+ esac
568
+
569
+ # First, try to use mktemp.
570
+ d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` &&
571
+
572
+ # The resulting name must be in the specified directory.
573
+ case $d in "$destdir_slash_"*) :;; *) false;; esac &&
574
+
575
+ # It must have created the directory.
576
+ test -d "$d" &&
577
+
578
+ # It must have 0700 permissions. Handle sticky "S" bits.
579
+ perms=`ls -dgo "$d" 2>/dev/null` &&
580
+ case $perms in drwx--[-S]---*) :;; *) false;; esac && {
581
+ echo "$d"
582
+ return
583
+ }
584
+
585
+ # If we reach this point, we'll have to create a directory manually.
586
+
587
+ # Get a copy of the template without its suffix of X's.
588
+ base_template_=`echo "$template_"|sed 's/XX*$//'`
589
+
590
+ # Calculate how many X's we've just removed.
591
+ template_length_=`echo "$template_" | wc -c`
592
+ nx_=`echo "$base_template_" | wc -c`
593
+ nx_=`expr $template_length_ - $nx_`
594
+
595
+ err_=
596
+ i_=1
597
+ while :; do
598
+ X_=`rand_bytes_ $nx_`
599
+ candidate_dir_="$destdir_slash_$base_template_$X_"
600
+ err_=`mkdir -m 0700 "$candidate_dir_" 2>&1` \
601
+ && { echo "$candidate_dir_"; return; }
602
+ test $MAX_TRIES_ -le $i_ && break;
603
+ i_=`expr $i_ + 1`
604
+ done
605
+ fail_ "$err_"
606
+ }
607
+
608
+ # If you want to override the testdir_prefix_ function,
609
+ # or to add more utility functions, use this file.
610
+ test -f "$srcdir/init.cfg" \
611
+ && . "$srcdir/init.cfg"
612
+
613
+ setup_ "$@"
614
+ # This trap is here, rather than in the setup_ function, because some
615
+ # shells run the exit trap at shell function exit, rather than script exit.
616
+ trap remove_tmp_ 0
@@ -0,0 +1,51 @@
1
+ #!/bin/sh
2
+ # Exercise the --keep option.
3
+
4
+ # Copyright (C) 2013-2016 Free Software Foundation, Inc.
5
+
6
+ # This program is free software: you can redistribute it and/or modify
7
+ # it under the terms of the GNU General Public License as published by
8
+ # the Free Software Foundation, either version 3 of the License, or
9
+ # (at your option) any later version.
10
+
11
+ # This program is distributed in the hope that it will be useful,
12
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ # GNU General Public License for more details.
15
+
16
+ # You should have received a copy of the GNU General Public License
17
+ # along with this program. If not, see <https://www.gnu.org/licenses/>.
18
+ # limit so don't run it by default.
19
+
20
+ . "${srcdir=.}/init.sh"; path_prepend_ .
21
+
22
+ echo fooooooooo > in || framework_failure_
23
+ cp in orig || framework_failure_
24
+
25
+ fail=0
26
+
27
+ # Compress and decompress both with and without --keep.
28
+ for k in --keep ''; do
29
+ # With --keep, the source must be retained, otherwise, it must be removed.
30
+ case $k in --keep) op='||' ;; *) op='&&' ;; esac
31
+
32
+ gzip $k in || fail=1
33
+ eval "test -f in $op fail=1"
34
+ test -f in.gz || fail=1
35
+ rm -f in || fail=1
36
+
37
+ gzip -d $k in.gz || fail=1
38
+ eval "test -f in.gz $op fail=1"
39
+ test -f in || fail=1
40
+ compare in orig || fail=1
41
+ rm -f in.gz || fail=1
42
+ done
43
+
44
+ cp orig in || framework_failure_
45
+ log=$(gzip -kv in 2>&1) || fail=1
46
+ case $log in
47
+ *'created in.gz'*) ;;
48
+ *) fail=1;;
49
+ esac
50
+
51
+ Exit $fail
@@ -0,0 +1,31 @@
1
+ #!/bin/sh
2
+ # Exercise the --list option.
3
+
4
+ # Copyright 2016 Free Software Foundation, Inc.
5
+
6
+ # This program is free software: you can redistribute it and/or modify
7
+ # it under the terms of the GNU General Public License as published by
8
+ # the Free Software Foundation, either version 3 of the License, or
9
+ # (at your option) any later version.
10
+
11
+ # This program is distributed in the hope that it will be useful,
12
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ # GNU General Public License for more details.
15
+
16
+ # You should have received a copy of the GNU General Public License
17
+ # along with this program. If not, see <https://www.gnu.org/licenses/>.
18
+ # limit so don't run it by default.
19
+
20
+ . "${srcdir=.}/init.sh"; path_prepend_ .
21
+
22
+ echo zoology zucchini > in || framework_failure_
23
+ cp in orig || framework_failure_
24
+
25
+ gzip -l in && fail=1
26
+ gzip -9 in || fail=1
27
+ gzip -l in.gz >out1 || fail=1
28
+ gzip -l in.gz | cat >out2 || fail=1
29
+ compare out1 out2 || fail=1
30
+
31
+ Exit $fail