SDL_image: cmake: fix ImageIO frameworks of Apple platforms

From f90445d32fbb0f471919ee97cceec09456d32dba Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Thu, 8 Jan 2026 23:24:42 +0100
Subject: [PATCH] cmake: fix ImageIO frameworks of Apple platforms

---
 CMakeLists.txt | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c8e833cb..65a242fd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -404,13 +404,21 @@ if(APPLE)
     if(SDLIMAGE_BACKEND_IMAGEIO)
         enable_language(OBJC)
         set(SDLIMAGE_IMAGEIO_ENABLED TRUE)
+        if(CMAKE_VERSION VERSION_LESS "3.24")
+            set(genex_FRAMEWORK "1:")
+        else()
+            set(genex_FRAMEWORK "LINK_LIBRARY:FRAMEWORK,")
+        endif()
         if(CMAKE_SYSTEM_NAME MATCHES ".*(Darwin|MacOS).*")
-            target_link_libraries(${sdl3_image_target_name} PRIVATE -Wl,-framework,ApplicationServices)
-        elseif(IOS)
+            target_link_libraries(${sdl3_image_target_name} PRIVATE $<${genex_FRAMEWORK}ApplicationServices>)
+            target_link_libraries(${sdl3_image_target_name} PRIVATE $<${genex_FRAMEWORK}Foundation>)
+        else()
             target_link_libraries(${sdl3_image_target_name} PRIVATE
-                -Wl,-framework,CoreGraphics
-                -Wl,-framework,ImageIO
-                -Wl,-framework,MobileCoreServices
+                $<${genex_FRAMEWORK}CoreGraphics>
+                $<${genex_FRAMEWORK}Foundation>
+                $<${genex_FRAMEWORK}ImageIO>
+                $<${genex_FRAMEWORK}MobileCoreServices>
+                $<${genex_FRAMEWORK}UIKit>
             )
         endif()
         target_link_libraries(${sdl3_image_target_name} PRIVATE objc)