diff options
| -rw-r--r-- | host/lib/transport/CMakeLists.txt | 15 | ||||
| -rw-r--r-- | host/lib/transport/FindUSB1.cmake | 38 | 
2 files changed, 53 insertions, 0 deletions
| diff --git a/host/lib/transport/CMakeLists.txt b/host/lib/transport/CMakeLists.txt index bde2b72b9..d6e1ff7ba 100644 --- a/host/lib/transport/CMakeLists.txt +++ b/host/lib/transport/CMakeLists.txt @@ -18,6 +18,21 @@  #This file will be included by cmake, use absolute paths!  ######################################################################## +# Setup libusb +######################################################################## +LIST(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/lib/transport) +FIND_PACKAGE(USB1 REQUIRED) + +IF(LIBUSB_FOUND) +    INCLUDE_DIRECTORIES(${LIBUSB_INCLUDE_DIR}) +    LIBUHD_APPEND_LIBS(${LIBUSB_LIBRARIES}) +    LIBUHD_APPEND_SOURCES( +        ${CMAKE_SOURCE_DIR}/lib/transport/libusb1_control.cpp +        ${CMAKE_SOURCE_DIR}/lib/transport/libusb1_zero_copy.cpp +    ) +ENDIF(LIBUSB_FOUND) + +########################################################################  # Check for SIMD headers  ########################################################################  INCLUDE(CheckIncludeFileCXX) diff --git a/host/lib/transport/FindUSB1.cmake b/host/lib/transport/FindUSB1.cmake new file mode 100644 index 000000000..ebcac99eb --- /dev/null +++ b/host/lib/transport/FindUSB1.cmake @@ -0,0 +1,38 @@ +# - Try to find the freetype library +# Once done this defines +# +#  LIBUSB_FOUND - system has libusb +#  LIBUSB_INCLUDE_DIR - the libusb include directory +#  LIBUSB_LIBRARIES - Link these to use libusb + +# Copyright (c) 2006, 2008  Laurent Montel, <montel@kde.org> +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + +  # in cache already +  set(LIBUSB_FOUND TRUE) + +else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) +  IF (NOT WIN32) +    # use pkg-config to get the directories and then use these values +    # in the FIND_PATH() and FIND_LIBRARY() calls +    find_package(PkgConfig) +    pkg_check_modules(PC_LIBUSB libusb-1.0) +  ENDIF(NOT WIN32) + +  FIND_PATH(LIBUSB_INCLUDE_DIR libusb.h +    PATHS ${PC_LIBUSB_INCLUDEDIR} ${PC_LIBUSB_INCLUDE_DIRS}) + +  FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb-1.0 +    PATHS ${PC_LIBUSB_LIBDIR} ${PC_LIBUSB_LIBRARY_DIRS}) + +  include(FindPackageHandleStandardArgs) +  FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBUSB DEFAULT_MSG LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIR) + +  MARK_AS_ADVANCED(LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) + +endif (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) | 
