SDL_image: cmake: use SONAME instead of full name for shared vendored libraries

From ffd225818691b1c772dfaba8c676d3f7f6e8341f Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Tue, 5 Sep 2023 23:35:25 +0200
Subject: [PATCH] cmake: use SONAME instead of full name for shared vendored
 libraries

---
 cmake/PrivateSdlFunctions.cmake | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/cmake/PrivateSdlFunctions.cmake b/cmake/PrivateSdlFunctions.cmake
index 30b29e53..bd86acad 100644
--- a/cmake/PrivateSdlFunctions.cmake
+++ b/cmake/PrivateSdlFunctions.cmake
@@ -236,7 +236,12 @@ function(target_get_dynamic_library DEST TARGET)
         else()
             message(WARNING "Unable to extract dynamic library from target=${TARGET}, type=${target_type}.")
         endif()
-        set (result "$<TARGET_FILE_NAME:${TARGET}>")
+        # TARGET_SONAME_FILE is not allowed for DLL target platforms.
+        if(WIN32)
+            set(result "$<TARGET_FILE_NAME:${TARGET}>")
+        else()
+            set(result "$<TARGET_SONAME_FILE_NAME:${TARGET}>")
+        endif()
     endif()
     set(${DEST} ${result} PARENT_SCOPE)
 endfunction()