summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2020-07-08 22:30:26 +0200
committerGitHub <noreply@github.com>2020-07-08 22:30:26 +0200
commit5311b562aa3c619dca9a1a14d0a2b16281a45cc1 (patch)
tree7c675aaa3bf59455494c4a430df9fed7ff7c44d4
parentMerge pull request #4255 from lioncash/copy (diff)
parentcmake: unbreak system libusb support (diff)
downloadyuzu-5311b562aa3c619dca9a1a14d0a2b16281a45cc1.tar
yuzu-5311b562aa3c619dca9a1a14d0a2b16281a45cc1.tar.gz
yuzu-5311b562aa3c619dca9a1a14d0a2b16281a45cc1.tar.bz2
yuzu-5311b562aa3c619dca9a1a14d0a2b16281a45cc1.tar.lz
yuzu-5311b562aa3c619dca9a1a14d0a2b16281a45cc1.tar.xz
yuzu-5311b562aa3c619dca9a1a14d0a2b16281a45cc1.tar.zst
yuzu-5311b562aa3c619dca9a1a14d0a2b16281a45cc1.zip
-rw-r--r--CMakeLists.txt6
-rw-r--r--externals/find-modules/FindLibUSB.cmake43
-rw-r--r--src/input_common/gcadapter/gc_adapter.h1
3 files changed, 48 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 27383bce8..cd40e5cfe 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -331,8 +331,10 @@ endif()
# Ensure libusb is properly configured (based on dolphin libusb include)
find_package(LibUSB)
-add_subdirectory(externals/libusb)
-set(LIBUSB_LIBRARIES usb)
+if (NOT LIBUSB_FOUND)
+ add_subdirectory(externals/libusb)
+ set(LIBUSB_LIBRARIES usb)
+endif()
# Prefer the -pthread flag on Linux.
diff --git a/externals/find-modules/FindLibUSB.cmake b/externals/find-modules/FindLibUSB.cmake
new file mode 100644
index 000000000..dec0b98b0
--- /dev/null
+++ b/externals/find-modules/FindLibUSB.cmake
@@ -0,0 +1,43 @@
+# - Find libusb-1.0 library
+# This module defines
+# LIBUSB_INCLUDE_DIR, where to find bluetooth.h
+# LIBUSB_LIBRARIES, the libraries needed to use libusb-1.0.
+# LIBUSB_FOUND, If false, do not try to use libusb-1.0.
+#
+# Copyright (c) 2009, Michal Cihar, <michal@cihar.com>
+#
+# vim: expandtab sw=4 ts=4 sts=4:
+
+if(ANDROID)
+ set(LIBUSB_FOUND FALSE CACHE INTERNAL "libusb-1.0 found")
+ message(STATUS "libusb-1.0 not found.")
+elseif (NOT LIBUSB_FOUND)
+ pkg_check_modules (LIBUSB_PKG libusb-1.0)
+
+ find_path(LIBUSB_INCLUDE_DIR NAMES libusb.h
+ PATHS
+ ${LIBUSB_PKG_INCLUDE_DIRS}
+ /usr/include/libusb-1.0
+ /usr/include
+ /usr/local/include/libusb-1.0
+ /usr/local/include
+ )
+
+ find_library(LIBUSB_LIBRARIES NAMES usb-1.0 usb
+ PATHS
+ ${LIBUSB_PKG_LIBRARY_DIRS}
+ /usr/lib
+ /usr/local/lib
+ )
+
+ if(LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES)
+ set(LIBUSB_FOUND TRUE CACHE INTERNAL "libusb-1.0 found")
+ message(STATUS "Found libusb-1.0: ${LIBUSB_INCLUDE_DIR}, ${LIBUSB_LIBRARIES}")
+ else(LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES)
+ set(LIBUSB_FOUND FALSE CACHE INTERNAL "libusb-1.0 found")
+ message(STATUS "libusb-1.0 not found.")
+ endif(LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES)
+
+ mark_as_advanced(LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES)
+endif ()
+
diff --git a/src/input_common/gcadapter/gc_adapter.h b/src/input_common/gcadapter/gc_adapter.h
index 0ea6263eb..b1c2a1958 100644
--- a/src/input_common/gcadapter/gc_adapter.h
+++ b/src/input_common/gcadapter/gc_adapter.h
@@ -7,6 +7,7 @@
#include <functional>
#include <mutex>
#include <thread>
+#include <unordered_map>
#include <libusb.h>
#include "common/common_types.h"
#include "common/threadsafe_queue.h"