diff options
author | Josh Blum <josh@joshknows.com> | 2012-01-09 12:07:33 -0800 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2012-01-09 13:58:56 -0800 |
commit | f72dc7bd5b1cc3049a431efa676382e2270000be (patch) | |
tree | 05fc5060f8fc63aec63dedc6aeb3d23493486fc0 /host/cmake | |
parent | 607b9a360067727a849d3088d5efa531192411e2 (diff) | |
download | uhd-f72dc7bd5b1cc3049a431efa676382e2270000be.tar.gz uhd-f72dc7bd5b1cc3049a431efa676382e2270000be.tar.bz2 uhd-f72dc7bd5b1cc3049a431efa676382e2270000be.zip |
usb: updated FindUSB1.cmake for standards compliance
Using cmake's recommended conventions for find scripts.
Find script also handles different library name for freebsd.
Diffstat (limited to 'host/cmake')
-rw-r--r-- | host/cmake/Modules/FindUSB1.cmake | 57 |
1 files changed, 28 insertions, 29 deletions
diff --git a/host/cmake/Modules/FindUSB1.cmake b/host/cmake/Modules/FindUSB1.cmake index efb2e288b..cf569d233 100644 --- a/host/cmake/Modules/FindUSB1.cmake +++ b/host/cmake/Modules/FindUSB1.cmake @@ -1,38 +1,37 @@ -# - 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. +#find libusb 1.0 on various systems +#sets LIBUSB_FOUND, LIBUSB_LIBRARIES, LIBUSB_INCLUDE_DIRS +#override LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIRS to manually set +INCLUDE(FindPkgConfig) +PKG_CHECK_MODULES(PC_LIBUSB QUIET libusb-1.0) -if (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) +FIND_PATH(LIBUSB_INCLUDE_DIRS + NAMES libusb.h + HINTS $ENV{LIBUSB_DIR}/include ${PC_LIBUSB_INCLUDEDIR} + PATHS /usr/local/include/libusb-1.0 /usr/local/include + /usr/include/libusb-1.0 /usr/include - # in cache already - set(LIBUSB_FOUND TRUE) + #non-conforming naming convention, + #backwards compatible with old script + ${LIBUSB_INCLUDE_DIR} +) -else (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) - # use pkg-config to get the directories and then use these values - # in the FIND_PATH() and FIND_LIBRARY() calls - find_package(PkgConfig) - IF(PKG_CONFIG_FOUND) - pkg_check_modules(PC_LIBUSB libusb-1.0) - ENDIF(PKG_CONFIG_FOUND) +#standard library name for libusb-1.0 +set(libusb1_library_names usb-1.0) - FIND_PATH(LIBUSB_INCLUDE_DIR libusb.h - PATHS ${PC_LIBUSB_INCLUDEDIR} ${PC_LIBUSB_INCLUDE_DIRS}) +#libusb-1.0 compatible library on freebsd +if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") + list(APPEND libusb1_library_names usb) +endif() - FIND_LIBRARY(LIBUSB_LIBRARIES NAMES usb-1.0 - PATHS ${PC_LIBUSB_LIBDIR} ${PC_LIBUSB_LIBRARY_DIRS}) +FIND_LIBRARY(LIBUSB_LIBRARIES + NAMES ${libusb1_library_names} + HINTS $ENV{LIBUSB_DIR}/lib ${PC_LIBUSB_LIBDIR} + PATHS /usr/local/lib /usr/lib +) - include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBUSB DEFAULT_MSG LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIR) +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBUSB DEFAULT_MSG LIBUSB_LIBRARIES LIBUSB_INCLUDE_DIRS) +MARK_AS_ADVANCED(LIBUSB_INCLUDE_DIRS LIBUSB_LIBRARIES) - MARK_AS_ADVANCED(LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) - -endif (LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) |