From fad962e027842e224d32b31533a61f65cbc13727 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Wed, 29 Oct 2025 22:06:31 +0100 Subject: cmake: disable ARM64 ASM on Windows ARM64 ASM on Windows generates a lot of `-Wasm-operand-widths` compiler warnings. It also seems to break bignum calculations, resulting in: ``` curl: (35) TLS connect error: error:04FFF077:rsa routines:CRYPTO_internal:wrong signature length ``` and other issues. This option did not cause an issue with MSVC ARM64. The reason for this is that the only ASM code for ARM64 is the bignum implementation (crypto/bn/arch/aarch64) and that ASM code is guarded for `__GNUC__`, meaning gcc and llvm/clang, and never MSVC or clang-cl. Follow-up to 1df6b52b250f04cd322bf7a79e2105f9ed890802 #1177 Fixes #1210 --- CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index bede146..503ace3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -412,6 +412,9 @@ endif() if(CMAKE_SYSTEM_PROCESSOR MATCHES "(aarch64|arm64|ARM64)") set(HOST_AARCH64 true) + if(WIN32) + set(ENABLE_ASM false) + endif() elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "arm") set(HOST_ARM true) if(APPLE) -- cgit v1.2.3-55-g6feb