SDL: cmake: make sure a SDL3 library is present when not using COMPONENTs

From cbdc93b17f9d825a6a6d299bc420de7c48531e22 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Sat, 1 Mar 2025 17:54:45 +0100
Subject: [PATCH] cmake: make sure a SDL3 library is present when not using
 COMPONENTs

---
 cmake/SDL3Config.cmake.in | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/cmake/SDL3Config.cmake.in b/cmake/SDL3Config.cmake.in
index e2ca50edcea6e..4c6f1b69ff4f5 100644
--- a/cmake/SDL3Config.cmake.in
+++ b/cmake/SDL3Config.cmake.in
@@ -77,6 +77,9 @@ else()
   endif()
 endif()
 
+if(NOT SDL3_COMPONENTS AND NOT TARGET SDL3::Headers AND NOT TARGET SDL3::SDL3-shared AND NOT TARGET SDL3::SDL3-static)
+    set(SDL3_FOUND FALSE)
+endif()
 check_required_components(SDL3)
 
 function(_sdl_create_target_alias_compat NEW_TARGET TARGET)
@@ -93,7 +96,7 @@ endfunction()
 if(NOT TARGET SDL3::SDL3)
   if(TARGET SDL3::SDL3-shared)
     _sdl_create_target_alias_compat(SDL3::SDL3 SDL3::SDL3-shared)
-  else()
+  elseif(TARGET SDL3::SDL3-static)
     _sdl_create_target_alias_compat(SDL3::SDL3 SDL3::SDL3-static)
   endif()
 endif()