Browse Source

cmake: Fix locating libusb header at configure-time

Removing the CheckUSBHID call is necessary to avoid caching the failed header
check result before we find libusb via pkg-config.
Andrew Eikum 5 years ago
parent
commit
e149f4c4b0
2 changed files with 4 additions and 2 deletions
  1. 3 1
      CMakeLists.txt
  2. 1 1
      cmake/sdlchecks.cmake

+ 3 - 1
CMakeLists.txt

@@ -1128,7 +1128,9 @@ elseif(UNIX AND NOT APPLE AND NOT ANDROID)
   endif()
 
   if(SDL_JOYSTICK)
-    CheckUSBHID()   # seems to be BSD specific - limit the test to BSD only?
+    if(FREEBSD OR NETBSD OR OPENBSD OR BSDI)
+      CheckUSBHID()
+    endif()
     CheckHIDAPI()
     if(LINUX AND NOT ANDROID)
       set(SDL_JOYSTICK_LINUX 1)

+ 1 - 1
cmake/sdlchecks.cmake

@@ -1074,7 +1074,7 @@ macro(CheckHIDAPI)
       set(HAVE_HIDAPI FALSE)
       pkg_check_modules(LIBUSB libusb)
       if (LIBUSB_FOUND)
-        check_include_file(libusb.h HAVE_LIBUSB_H)
+        check_include_file(libusb.h HAVE_LIBUSB_H ${LIBUSB_CFLAGS})
         if (HAVE_LIBUSB_H)
           set(HAVE_HIDAPI TRUE)
         endif()