diff --git a/CMakeLists.txt b/CMakeLists.txt index d26063b8b9..16f28612af 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -519,6 +519,10 @@ if (APPLE) find_library(${fw}_LIBRARY ${fw} REQUIRED) list(APPEND PLATFORM_LIBRARIES ${${fw}_LIBRARY}) endforeach() + if (IOS) + find_library(objc_LIBRARY objc REQUIRED) + list(APPEND PLATFORM_LIBRARIES ${objc_LIBRARY}) + endif() elseif (WIN32) # Target Windows 10 add_compile_definitions(_WIN32_WINNT=0x0A00 WINVER=0x0A00) diff --git a/externals/ffmpeg/CMakeLists.txt b/externals/ffmpeg/CMakeLists.txt index f832a8efc3..3696010208 100644 --- a/externals/ffmpeg/CMakeLists.txt +++ b/externals/ffmpeg/CMakeLists.txt @@ -31,6 +31,20 @@ if (NOT YUZU_USE_BUNDLED_FFMPEG) --extra-ldflags="-nostdlib" ) set(FFmpeg_IS_CROSS_COMPILING TRUE) + elseif(IOS) + execute_process(COMMAND xcrun --sdk iphoneos --show-sdk-path OUTPUT_VARIABLE SYSROOT) + set(FFmpeg_CC "xcrun --sdk iphoneos clang -arch arm64") + set(FFmpeg_CXX "xcrun --sdk iphoneos clang++ -arch arm64") + list(APPEND FFmpeg_CROSS_COMPILE_FLAGS + --arch=arm64 + --enable-cross-compile + --sysroot=${SYSROOT} + --target-os=darwin + --extra-ldflags="-miphoneos-version-min=16.0" + --install-name-dir="@rpath" + --disable-audiotoolbox + ) + set(FFmpeg_IS_CROSS_COMPILING TRUE) # User attempts to do a FFmpeg cross compilation because... # Here we just quickly test against host/system processors not matching # TODO: Test for versions not matching as well? diff --git a/src/ios/CMakeLists.txt b/src/ios/CMakeLists.txt index 6ddc7eb109..dc2f8b53fc 100644 --- a/src/ios/CMakeLists.txt +++ b/src/ios/CMakeLists.txt @@ -1,7 +1,7 @@ # SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project # SPDX-License-Identifier: GPL-3.0-or-later -enable_language(Swift OBJC) +enable_language(Swift OBJCXX) add_executable(eden-ios AppUI-Bridging-Header.h