aboutsummaryrefslogtreecommitdiff
path: root/CMakeModules
diff options
context:
space:
mode:
authorcrueter <crueter@eden-emu.dev>2026-06-09 21:41:50 +0200
committercrueter <crueter@eden-emu.dev>2026-06-09 21:41:50 +0200
commit3e31831cb0a966b99c5e86c64f0a6294d7079704 (patch)
treec877960dd93b35f251ed82bc45244883a07ee065 /CMakeModules
parent5ba3ae32dc040ac813c93512b0d90a22c4ec278a (diff)
[externals] UCRT64 support (#4035)
Testing which deps can't cross MSVCRT/UCRT barriers - openssl - Qt FFmpeg and Sirit are fine--likely don't use the C99 APIs that MSVCRT is missing? Closes #4022 Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4035
Diffstat (limited to 'CMakeModules')
-rw-r--r--CMakeModules/CPMUtil.cmake26
1 files changed, 19 insertions, 7 deletions
diff --git a/CMakeModules/CPMUtil.cmake b/CMakeModules/CPMUtil.cmake
index b98595ac2e..d077816721 100644
--- a/CMakeModules/CPMUtil.cmake
+++ b/CMakeModules/CPMUtil.cmake
@@ -3,7 +3,7 @@
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)
else()
set(BUNDLED_DEFAULT OFF)
@@ -247,7 +247,9 @@ function(AddJsonPackage)
set(multiValueArgs OPTIONS)
- cmake_parse_arguments(JSON "" "${oneValueArgs}" "${multiValueArgs}"
+ set(options MODULE)
+
+ cmake_parse_arguments(JSON "${options}" "${oneValueArgs}" "${multiValueArgs}"
"${ARGN}")
list(LENGTH ARGN argnLength)
@@ -277,6 +279,10 @@ function(AddJsonPackage)
parse_object(${object})
if(ci)
+ if (JSON_MODULE)
+ set(EXTRA_ARGS MODULE)
+ endif()
+
AddCIPackage(
VERSION ${version}
NAME ${name}
@@ -284,8 +290,8 @@ function(AddJsonPackage)
PACKAGE ${package}
EXTENSION ${extension}
MIN_VERSION ${min_version}
- DISABLED_PLATFORMS ${disabled_platforms})
-
+ DISABLED_PLATFORMS ${disabled_platforms}
+ ${EXTRA_ARGS})
else()
if (NOT DEFINED JSON_FORCE_BUNDLED_PACKAGE)
set(JSON_FORCE_BUNDLED_PACKAGE OFF)
@@ -690,8 +696,10 @@ function(AddCIPackage)
set(pkgname linux-amd64)
elseif(PLATFORM_LINUX AND ARCHITECTURE_arm64)
set(pkgname linux-aarch64)
- elseif(APPLE)
+ elseif(APPLE AND NOT IOS)
set(pkgname macos-universal)
+ elseif(IOS AND ARCHITECTURE_arm64)
+ set(pkgname ios-aarch64)
endif()
if (DEFINED pkgname AND NOT "${pkgname}" IN_LIST DISABLED_PLATFORMS)
@@ -724,7 +732,11 @@ function(AddCIPackage)
endfunction()
# Utility function for Qt
-function(AddQt version)
+function(AddQt repo version)
+ if (NOT DEFINED repo)
+ message(FATAL_ERROR "[CPMUtil] AddQt: repo is required")
+ endif()
+
if (NOT DEFINED version)
message(FATAL_ERROR "[CPMUtil] AddQt: version is required")
endif()
@@ -734,7 +746,7 @@ function(AddQt version)
PACKAGE Qt6
VERSION ${version}
MIN_VERSION 6
- REPO crueter-ci/Qt
+ REPO ${repo}
DISABLED_PLATFORMS
android-x86_64 android-aarch64
freebsd-amd64 solaris-amd64 openbsd-amd64