diff options
author | 2023-12-11 10:48:02 +1100 | |
---|---|---|
committer | 2023-12-11 10:48:02 +1100 | |
commit | 05e69b43e9770e16c4bf1c6ca3e585e64c3f6ff9 (patch) | |
tree | 00ff2118ddc01455ee55785283a2fcfb9bfaf77e /scripts/src/3rdparty.lua | |
parent | 1a4287925e3982e2f782dee6f62b198984b839de (diff) |
Added Zstandard support for zip archives and CHDs. (#11827)
* 3rdparty/zstd: Added Zstandard compression library version 1.5.5.
* util/unzip.cpp: Added support for Zstandard compression (method 93).
* util/chdcodec.cpp: Added support for Zstandard compression.
* 3rdparty/flac: Always define NDEBUG to avoid log spam.
Diffstat (limited to 'scripts/src/3rdparty.lua')
-rwxr-xr-x | scripts/src/3rdparty.lua | 63 |
1 files changed, 58 insertions, 5 deletions
diff --git a/scripts/src/3rdparty.lua b/scripts/src/3rdparty.lua index b0ebea6d943..64a8e3b7ab6 100755 --- a/scripts/src/3rdparty.lua +++ b/scripts/src/3rdparty.lua @@ -168,6 +168,63 @@ end -------------------------------------------------- +-- zstd library objects +-------------------------------------------------- + +if not _OPTIONS["with-system-zstd"] then +project "zstd" + uuid "5edd8713-bc60-456d-9c95-b928a913c84b" + kind "StaticLib" + + configuration { "Release" } + defines { + "NDEBUG", + } + + configuration { } + + defines { + "XXH_NAMESPACE=ZSTD_", + "DEBUGLEVEL=0", + "ZSTD_DISABLE_ASM", + } + + files { + MAME_DIR .. "3rdparty/zstd/lib/common/debug.c", + MAME_DIR .. "3rdparty/zstd/lib/common/entropy_common.c", + MAME_DIR .. "3rdparty/zstd/lib/common/error_private.c", + MAME_DIR .. "3rdparty/zstd/lib/common/fse_decompress.c", + MAME_DIR .. "3rdparty/zstd/lib/common/pool.c", + MAME_DIR .. "3rdparty/zstd/lib/common/threading.c", + MAME_DIR .. "3rdparty/zstd/lib/common/xxhash.c", + MAME_DIR .. "3rdparty/zstd/lib/common/zstd_common.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/fse_compress.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/hist.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/huf_compress.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_compress.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_compress_literals.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_compress_sequences.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_compress_superblock.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_double_fast.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_fast.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_lazy.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_ldm.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstdmt_compress.c", + MAME_DIR .. "3rdparty/zstd/lib/compress/zstd_opt.c", + --MAME_DIR .. "3rdparty/zstd/lib/decompress/huf_decompress_amd64.S", only supports GCC-like assemblers and SysV calling convention + MAME_DIR .. "3rdparty/zstd/lib/decompress/huf_decompress.c", + MAME_DIR .. "3rdparty/zstd/lib/decompress/zstd_ddict.c", + MAME_DIR .. "3rdparty/zstd/lib/decompress/zstd_decompress_block.c", + MAME_DIR .. "3rdparty/zstd/lib/decompress/zstd_decompress.c", + } +else +links { + ext_lib("zstd"), +} +end + + +-------------------------------------------------- -- SoftFloat library objects -------------------------------------------------- @@ -671,13 +728,9 @@ end "HAVE_FSEEKO", } - configuration { "Release" } - defines { - "NDEBUG", - } - configuration { } defines { + "NDEBUG", -- always enable this to avoid debug log spam on compression "HAVE_CONFIG_H", -- mostly because PACKAGE_VERSION is a pain to do otherwise "ENABLE_64_BIT_WORDS=1", "OGG_FOUND=0", |