SDL: cmake: Android always needs a native HIDAPI implementation

From 89eef1bd3414f696252ac1357780bb90149c012b Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Thu, 26 Jun 2025 23:38:12 +0200
Subject: [PATCH] cmake: Android always needs a native HIDAPI implementation

---
 CMakeLists.txt        |  4 +---
 cmake/sdlchecks.cmake | 16 ++++++++--------
 2 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index fd62e985f01fc..f66b7726054d4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1358,9 +1358,7 @@ if(ANDROID)
     set(HAVE_SDL_HAPTIC TRUE)
   endif()
 
-  if(SDL_HIDAPI)
-    CheckHIDAPI()
-  endif()
+  CheckHIDAPI()
 
   if(SDL_JOYSTICK)
     set(SDL_JOYSTICK_ANDROID 1)
diff --git a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake
index 06edce5bf5b46..ea9d73b266135 100644
--- a/cmake/sdlchecks.cmake
+++ b/cmake/sdlchecks.cmake
@@ -1108,6 +1108,14 @@ endmacro()
 
 # Check for HIDAPI support
 macro(CheckHIDAPI)
+  if(ANDROID)
+    enable_language(CXX)
+    sdl_sources("${SDL3_SOURCE_DIR}/src/hidapi/android/hid.cpp")
+  endif()
+  if(IOS OR TVOS)
+    sdl_sources("${SDL3_SOURCE_DIR}/src/hidapi/ios/hid.m")
+    set(SDL_FRAMEWORK_COREBLUETOOTH 1)
+  endif()
   if(SDL_HIDAPI)
     set(HAVE_HIDAPI ON)
     if(SDL_HIDAPI_LIBUSB)
@@ -1140,14 +1148,6 @@ macro(CheckHIDAPI)
     endif()
 
     if(HAVE_HIDAPI)
-      if(ANDROID)
-        enable_language(CXX)
-        sdl_sources("${SDL3_SOURCE_DIR}/src/hidapi/android/hid.cpp")
-      endif()
-      if(IOS OR TVOS)
-        sdl_sources("${SDL3_SOURCE_DIR}/src/hidapi/ios/hid.m")
-        set(SDL_FRAMEWORK_COREBLUETOOTH 1)
-      endif()
       set(HAVE_SDL_HIDAPI TRUE)
 
       if(SDL_JOYSTICK AND SDL_HIDAPI_JOYSTICK)