mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-05-02 10:39:01 +02:00
Update CPMUtil, and fix script
Signed-off-by: crueter <crueter@eden-emu.dev>
This commit is contained in:
parent
65c32d9f72
commit
cdcb0febc1
7 changed files with 17 additions and 58 deletions
|
|
@ -4,36 +4,23 @@
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
WORK_DIR="$PWD"
|
WORK_DIR="$PWD"
|
||||||
export IOS_SDK="$(xcrun --sdk iphoneos --show-sdk-path)"
|
xcrun --sdk iphoneos --show-sdk-path
|
||||||
|
|
||||||
[ ! -z "$IOS_SDK" ]
|
# TODO(crueter): FFmpeg for iOS
|
||||||
|
|
||||||
cmake -G Xcode -B build \
|
cmake -G Xcode -B build \
|
||||||
-DCMAKE_TOOLCHAIN_FILE="$WORK_DIR/.ci/ios/ios-toolchain.cmake" \
|
-DCMAKE_TOOLCHAIN_FILE="$WORK_DIR/.ci/ios/ios-toolchain.cmake" \
|
||||||
-DPLATFORM=OS64 \
|
-DPLATFORM=OS64 \
|
||||||
-DARCHS="arm64" \
|
-DARCHS="arm64" \
|
||||||
-DDEPLOYMENT_TARGET=16.0 \
|
-DDEPLOYMENT_TARGET=16.0 \
|
||||||
-DCOCOA_LIBRARY="$IOS_SDK/System/Library/Frameworks/Cocoa.framework" \
|
-DCMAKE_C_COMPILER="$(xcrun --sdk iphoneos --find clang)" \
|
||||||
-DCMAKE_C_COMPILER="$(xcrun --sdk iphoneos clang -arch arm64)" \
|
-DCMAKE_CXX_COMPILER="$(xcrun --sdk iphoneos --find clang++)" \
|
||||||
-DCMAKE_CXX_COMPILER="$(xcrun --sdk iphoneos clang++ -arch arm64)" \
|
|
||||||
-DENABLE_LIBUSB=OFF \
|
-DENABLE_LIBUSB=OFF \
|
||||||
-DENABLE_UPDATE_CHECKER=OFF \
|
|
||||||
-DENABLE_QT=OFF \
|
-DENABLE_QT=OFF \
|
||||||
-DENABLE_OPENSSL=OFF \
|
|
||||||
-DHTTPLIB_USE_OPENSSL=OFF \
|
|
||||||
-DCPPHTTPLIB_USE_OPENSSL=OFF \
|
|
||||||
-DHTTPLIB_USE_OPENSSL_IF_AVAILABLE=OFF \
|
|
||||||
-DENABLE_WEB_SERVICE=OFF \
|
-DENABLE_WEB_SERVICE=OFF \
|
||||||
-DENABLE_CUBEB=OFF \
|
-DENABLE_CUBEB=OFF \
|
||||||
-DYUZU_ROOM=OFF \
|
|
||||||
-DYUZU_ROOM_STANDALONE=OFF \
|
|
||||||
-DYUZU_STATIC_ROOM=OFF \
|
|
||||||
-DYUZU_CMD=OFF \
|
|
||||||
-DUSE_DISCORD_PRESENCE=OFF \
|
|
||||||
-DYUZU_USE_EXTERNAL_FFMPEG=ON \
|
-DYUZU_USE_EXTERNAL_FFMPEG=ON \
|
||||||
-DYUZU_USE_EXTERNAL_SDL2=ON \
|
-DYUZU_USE_EXTERNAL_SDL2=ON \
|
||||||
-DCPMUTIL_FORCE_BUNDLED=ON \
|
|
||||||
-DYUZU_USE_BUNDLED_SIRIT=OFF \
|
|
||||||
-DCMAKE_BUILD_TYPE=Release
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
|
|
||||||
cmake --build build -t eden-ios
|
cmake --build build -t eden-ios
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ if (PLATFORM_NETBSD)
|
||||||
set(ENV{PKG_CONFIG_PATH} "${PKG_CONFIG_PATH}:${CMAKE_SYSROOT}/usr/pkg/lib/ffmpeg7/pkgconfig")
|
set(ENV{PKG_CONFIG_PATH} "${PKG_CONFIG_PATH}:${CMAKE_SYSROOT}/usr/pkg/lib/ffmpeg7/pkgconfig")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
cmake_dependent_option(YUZU_STATIC_ROOM "Build a static room executable only (CI only)" OFF "PLATFORM_LINUX" OFF)
|
cmake_dependent_option(YUZU_STATIC_ROOM "Build a static room executable only (CI only)" OFF "PLATFORM_LINUX OR WIN32 OR (APPLE AND NOT IOS)" OFF)
|
||||||
if (YUZU_STATIC_ROOM)
|
if (YUZU_STATIC_ROOM)
|
||||||
set(YUZU_ROOM ON)
|
set(YUZU_ROOM ON)
|
||||||
set(YUZU_ROOM_STANDALONE ON)
|
set(YUZU_ROOM_STANDALONE ON)
|
||||||
|
|
@ -69,7 +69,7 @@ endif()
|
||||||
# qt stuff
|
# qt stuff
|
||||||
option(ENABLE_QT "Enable the Qt frontend" ON)
|
option(ENABLE_QT "Enable the Qt frontend" ON)
|
||||||
option(ENABLE_QT_TRANSLATION "Enable translations for the Qt frontend" OFF)
|
option(ENABLE_QT_TRANSLATION "Enable translations for the Qt frontend" OFF)
|
||||||
option(ENABLE_UPDATE_CHECKER "Enable update checker (for Qt and Android)" OFF)
|
cmake_dependent_option(ENABLE_UPDATE_CHECKER "Enable update checker (for Qt and Android)" OFF "ENABLE_QT OR ANDROID" OFF)
|
||||||
cmake_dependent_option(YUZU_USE_QT_MULTIMEDIA "Use QtMultimedia for Camera" OFF "NOT YUZU_USE_BUNDLED_QT" OFF)
|
cmake_dependent_option(YUZU_USE_QT_MULTIMEDIA "Use QtMultimedia for Camera" OFF "NOT YUZU_USE_BUNDLED_QT" OFF)
|
||||||
cmake_dependent_option(YUZU_USE_QT_WEB_ENGINE "Use QtWebEngine for web applet implementation" OFF "NOT YUZU_USE_BUNDLED_QT" OFF)
|
cmake_dependent_option(YUZU_USE_QT_WEB_ENGINE "Use QtWebEngine for web applet implementation" OFF "NOT YUZU_USE_BUNDLED_QT" OFF)
|
||||||
set(YUZU_QT_MIRROR "" CACHE STRING "What mirror to use for downloading the bundled Qt libraries")
|
set(YUZU_QT_MIRROR "" CACHE STRING "What mirror to use for downloading the bundled Qt libraries")
|
||||||
|
|
@ -177,7 +177,7 @@ cmake_dependent_option(YUZU_USE_BUNDLED_SDL2 "Download bundled SDL2 build" "${MS
|
||||||
option(ENABLE_CUBEB "Enables the cubeb audio backend" ON)
|
option(ENABLE_CUBEB "Enables the cubeb audio backend" ON)
|
||||||
|
|
||||||
set(EXT_DEFAULT OFF)
|
set(EXT_DEFAULT OFF)
|
||||||
if (MSVC OR ANDROID)
|
if (MSVC OR ANDROID OR IOS)
|
||||||
set(EXT_DEFAULT ON)
|
set(EXT_DEFAULT ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
@ -187,7 +187,7 @@ cmake_dependent_option(YUZU_USE_EXTERNAL_FFMPEG "Build FFmpeg from external sour
|
||||||
|
|
||||||
# sirit
|
# sirit
|
||||||
set(BUNDLED_SIRIT_DEFAULT OFF)
|
set(BUNDLED_SIRIT_DEFAULT OFF)
|
||||||
if (((MSVC AND NOT (CMAKE_BUILD_TYPE MATCHES "Deb")) OR ANDROID) AND NOT IOS)
|
if ((MSVC AND NOT (CMAKE_BUILD_TYPE MATCHES "Deb")) OR ANDROID)
|
||||||
set(BUNDLED_SIRIT_DEFAULT ON)
|
set(BUNDLED_SIRIT_DEFAULT ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
@ -215,7 +215,7 @@ option(NIGHTLY_BUILD "Use Nightly qualifiers in the update checker and build met
|
||||||
cmake_dependent_option(YUZU_ROOM "Enable dedicated room functionality" ON "NOT ANDROID AND NOT IOS" OFF)
|
cmake_dependent_option(YUZU_ROOM "Enable dedicated room functionality" ON "NOT ANDROID AND NOT IOS" OFF)
|
||||||
cmake_dependent_option(YUZU_ROOM_STANDALONE "Enable standalone room executable" ON "YUZU_ROOM" OFF)
|
cmake_dependent_option(YUZU_ROOM_STANDALONE "Enable standalone room executable" ON "YUZU_ROOM" OFF)
|
||||||
|
|
||||||
cmake_dependent_option(YUZU_CMD "Compile the eden-cli executable" ON "NOT ANDROID" OFF)
|
cmake_dependent_option(YUZU_CMD "Compile the eden-cli executable" ON "NOT ANDROID AND NOT IOS" OFF)
|
||||||
|
|
||||||
cmake_dependent_option(YUZU_CRASH_DUMPS "Compile crash dump (Minidump) support" OFF "WIN32 OR PLATFORM_LINUX" OFF)
|
cmake_dependent_option(YUZU_CRASH_DUMPS "Compile crash dump (Minidump) support" OFF "WIN32 OR PLATFORM_LINUX" OFF)
|
||||||
|
|
||||||
|
|
@ -373,35 +373,7 @@ if (YUZU_USE_BUNDLED_OPENSSL)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (IOS)
|
find_package(OpenSSL 3 REQUIRED)
|
||||||
# TODO: this is horrific wtf
|
|
||||||
# Modify OpenSSL configuration to dynamically locate OpenSSL
|
|
||||||
if (NOT OPENSSL_ROOT_DIR)
|
|
||||||
find_program(HOMEBREW_EXECUTABLE brew)
|
|
||||||
if (HOMEBREW_EXECUTABLE)
|
|
||||||
execute_process(
|
|
||||||
COMMAND ${HOMEBREW_EXECUTABLE} --prefix openssl
|
|
||||||
OUTPUT_VARIABLE HOMEBREW_OPENSSL_PREFIX
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
||||||
)
|
|
||||||
set(OPENSSL_ROOT_DIR "${HOMEBREW_OPENSSL_PREFIX}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
# Adjust OpenSSL find_package to fallback to default paths
|
|
||||||
find_package(OpenSSL 3 QUIET PATHS ${OPENSSL_ROOT_DIR} PATHS /usr/local/opt/openssl /opt/homebrew/opt/openssl NO_DEFAULT_PATH)
|
|
||||||
if (NOT OpenSSL_FOUND)
|
|
||||||
find_package(OpenSSL 3 QUIET)
|
|
||||||
if (NOT OpenSSL_FOUND)
|
|
||||||
message(WARNING "OpenSSL not found. Some features may be disabled.")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
# Ensure OpenSSL version 3 is correctly located
|
|
||||||
set(OPENSSL_ROOT_DIR "/opt/homebrew/opt/openssl@3")
|
|
||||||
set(OPENSSL_LIBRARIES "/opt/homebrew/opt/openssl@3/lib")
|
|
||||||
set(OPENSSL_INCLUDE_DIR "/opt/homebrew/opt/openssl@3/include")
|
|
||||||
else()
|
|
||||||
find_package(OpenSSL 3 REQUIRED)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
message(STATUS "Fetching needed dependencies with CPM")
|
message(STATUS "Fetching needed dependencies with CPM")
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
set(CPM_SOURCE_CACHE "${PROJECT_SOURCE_DIR}/.cache/cpm" CACHE STRING "" FORCE)
|
set(CPM_SOURCE_CACHE "${PROJECT_SOURCE_DIR}/.cache/cpm" CACHE STRING "" FORCE)
|
||||||
|
|
||||||
if(MSVC OR ANDROID)
|
if(MSVC OR ANDROID OR IOS)
|
||||||
set(BUNDLED_DEFAULT ON)
|
set(BUNDLED_DEFAULT ON)
|
||||||
else()
|
else()
|
||||||
set(BUNDLED_DEFAULT OFF)
|
set(BUNDLED_DEFAULT OFF)
|
||||||
|
|
@ -692,7 +692,7 @@ function(AddCIPackage)
|
||||||
set(pkgname linux-aarch64)
|
set(pkgname linux-aarch64)
|
||||||
elseif(APPLE AND NOT IOS)
|
elseif(APPLE AND NOT IOS)
|
||||||
set(pkgname macos-universal)
|
set(pkgname macos-universal)
|
||||||
elseif(APPLE AND IOS AND ARCHITECTURE_arm64)
|
elseif(IOS AND ARCHITECTURE_arm64)
|
||||||
set(pkgname ios-aarch64)
|
set(pkgname ios-aarch64)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,3 +18,4 @@
|
||||||
- `linux-amd64`
|
- `linux-amd64`
|
||||||
- `linux-aarch64`
|
- `linux-aarch64`
|
||||||
- `macos-universal`
|
- `macos-universal`
|
||||||
|
- `ios-aarch64`
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,8 @@ In order: OpenSSL CI, Boost (tag + artifact), Opus (options + find_args), discor
|
||||||
"version": "3.6.0",
|
"version": "3.6.0",
|
||||||
"min_version": "1.1.1",
|
"min_version": "1.1.1",
|
||||||
"disabled_platforms": [
|
"disabled_platforms": [
|
||||||
"macos-universal"
|
"macos-universal",
|
||||||
|
"ios-aarch64"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"boost": {
|
"boost": {
|
||||||
|
|
|
||||||
|
|
@ -83,8 +83,7 @@ ci_package() {
|
||||||
android-aarch64 android-x86_64 \
|
android-aarch64 android-x86_64 \
|
||||||
solaris-amd64 freebsd-amd64 openbsd-amd64 \
|
solaris-amd64 freebsd-amd64 openbsd-amd64 \
|
||||||
linux-amd64 linux-aarch64 \
|
linux-amd64 linux-aarch64 \
|
||||||
ios-aarch64 \
|
macos-universal ios-aarch64; do
|
||||||
macos-universal; do
|
|
||||||
echo "-- * platform $platform"
|
echo "-- * platform $platform"
|
||||||
|
|
||||||
case $DISABLED in
|
case $DISABLED in
|
||||||
|
|
|
||||||
|
|
@ -151,8 +151,7 @@ mingw-amd64 mingw-arm64
|
||||||
android-aarch64 android-x86_64
|
android-aarch64 android-x86_64
|
||||||
solaris-amd64 freebsd-amd64 openbsd-amd64
|
solaris-amd64 freebsd-amd64 openbsd-amd64
|
||||||
linux-amd64 linux-aarch64
|
linux-amd64 linux-aarch64
|
||||||
ios-aarch64
|
macos-universal ios-aarch64"
|
||||||
macos-universal"
|
|
||||||
|
|
||||||
DISABLED_PLATFORMS="$reply"
|
DISABLED_PLATFORMS="$reply"
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue