From a87b61248cd93d24106b864c0ec8ae491bf8b4fb Mon Sep 17 00:00:00 2001 From: klockky Date: Mon, 13 Jul 2026 12:59:41 +0300 Subject: [PATCH] =?UTF-8?q?fix(apple):=20drop=20rlottie=20pixman=20hand-as?= =?UTF-8?q?m=20NEON=20path=20(-U=5F=5FARM=5FNEON=5F=5F)=20=E2=80=94=20unde?= =?UTF-8?q?fined=20asm=20symbols=20on=20arm64?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- third_party/rlottie.podspec | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/third_party/rlottie.podspec b/third_party/rlottie.podspec index 27580fa..f9c74cc 100644 --- a/third_party/rlottie.podspec +++ b/third_party/rlottie.podspec @@ -34,6 +34,14 @@ Pod::Spec.new do |s| s.public_header_files = 'rlottie/inc/*.h' s.pod_target_xcconfig = { + # On Apple arm64 the compiler predefines __ARM_NEON__, which pulls in + # vdrawhelper_neon.cpp's hand-asm blitter calling pixman_composite_*_asm_neon + # — defined only in pixman-arm-neon-asm.S, which we can't assemble in the pod + # (excluded above) → undefined symbols at link. Drop the hand-asm path (like + # the CMake build does for 32-bit ARM) and let the C blitter compile; clang + # still auto-vectorizes it to NEON. No-op on x86_64 (macro undefined there). + 'OTHER_CFLAGS' => '$(inherited) -U__ARM_NEON__', + 'OTHER_CPLUSPLUSFLAGS' => '$(inherited) -U__ARM_NEON__', 'CLANG_CXX_LANGUAGE_STANDARD' => 'c++14', 'CLANG_CXX_LIBRARY' => 'libc++', 'GCC_ENABLE_CPP_EXCEPTIONS' => 'NO',