From 2d9a61bd0e66837fec5fee1f3d4d848a26a32593 Mon Sep 17 00:00:00 2001 From: "Admiral H. Curtiss" Date: Wed, 30 Apr 2025 20:31:49 +0200 Subject: [PATCH] Externals/zstd: Disable ASM for MSVC compiler in CMake Results in a "MSVC_RUNTIME_LIBRARY value 'MultiThreadedDLL' not known for this ASM compiler" otherwise, and zstd doesn't support the relevant ASM code for MSVC anyway. --- Externals/zstd/CMakeLists.txt | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Externals/zstd/CMakeLists.txt b/Externals/zstd/CMakeLists.txt index f89514a7b9..335ad06abf 100644 --- a/Externals/zstd/CMakeLists.txt +++ b/Externals/zstd/CMakeLists.txt @@ -1,4 +1,8 @@ -project(zstd C ASM) +project(zstd C) + +if(NOT MSVC) + enable_language(ASM) +endif() include(CheckTypeSize) include(CheckFunctionExists) @@ -120,7 +124,6 @@ set(ZSTD_SRCS zstd/lib/compress/zstd_preSplit.c zstd/lib/compress/zstdmt_compress.c zstd/lib/decompress/huf_decompress.c - zstd/lib/decompress/huf_decompress_amd64.S zstd/lib/decompress/zstd_ddict.c zstd/lib/decompress/zstd_decompress.c zstd/lib/decompress/zstd_decompress_block.c @@ -129,6 +132,12 @@ set(ZSTD_SRCS add_library(zstd STATIC ${ZSTD_SRCS} ${ZSTD_PUBLIC_HDRS} ${ZSTD_PRIVATE_HDRS}) target_compile_definitions(zstd PUBLIC ZSTD_LEGACY_SUPPORT=0) +if(MSVC) + target_compile_definitions(zstd PUBLIC ZSTD_DISABLE_ASM) +else() + target_sources(zstd PRIVATE zstd/lib/decompress/huf_decompress_amd64.S) +endif() + dolphin_disable_warnings(zstd) add_library(zstd::zstd ALIAS zstd)