xref: /libbtbb/cmake/modules/FindBTBB.cmake (revision 7178652da6446a2109efa1c504765d0873bc8f59)
1e25b118aSDominic Spill# Try to find the libbtbb library
2e25b118aSDominic Spill#
3e25b118aSDominic Spill# Once done this defines:
4e25b118aSDominic Spill#  LIBBTBB_FOUND - system has libbtbb
5e25b118aSDominic Spill#  LIBBTBB_INCLUDE_DIR - the libbtbb include directory
6e25b118aSDominic Spill#  LIBBTBB_LIBRARIES - Link these to use libbtbb
7e25b118aSDominic Spill#
8e25b118aSDominic Spill# Copyright (c) 2013  Dominic Spill
9e25b118aSDominic Spill
10e25b118aSDominic Spill
11e25b118aSDominic Spillif (LIBBTBB_INCLUDE_DIR AND LIBBTBB_LIBRARIES)
12e25b118aSDominic Spill
13e25b118aSDominic Spill  # in cache already
14e25b118aSDominic Spill  set(LIBBTBB_FOUND TRUE)
15e25b118aSDominic Spill
16e25b118aSDominic Spillelse (LIBBTBB_INCLUDE_DIR AND LIBBTBB_LIBRARIES)
17e25b118aSDominic Spill  IF (NOT WIN32)
18e25b118aSDominic Spill    # use pkg-config to get the directories and then use these values
19e25b118aSDominic Spill    # in the FIND_PATH() and FIND_LIBRARY() calls
20e25b118aSDominic Spill    find_package(PkgConfig)
21e25b118aSDominic Spill    pkg_check_modules(PC_LIBBTBB QUIET libbtbb)
22e25b118aSDominic Spill  ENDIF(NOT WIN32)
23e25b118aSDominic Spill
24e25b118aSDominic Spill  FIND_PATH(LIBBTBB_INCLUDE_DIR
25e25b118aSDominic Spill    NAMES btbb.h
26e25b118aSDominic Spill    HINTS $ENV{LIBBTBB_DIR}/include ${PC_LIBBTBB_INCLUDEDIR}
27*7178652dSDominic Spill    PATHS /usr/include /usr/local/include /usr/include/libbtbb
28*7178652dSDominic Spill    /usr/local/include/libbtbb
29e25b118aSDominic Spill    /usr/include ${CMAKE_SOURCE_DIR}/../libbtbb/src
30e25b118aSDominic Spill    /opt/local/include/libbtbb
31e25b118aSDominic Spill    ${LIBBTBB_INCLUDE_DIR}
32e25b118aSDominic Spill  )
33e25b118aSDominic Spill
34e25b118aSDominic Spill  set(libbtbb_library_names btbb)
35e25b118aSDominic Spill
36e25b118aSDominic Spill  FIND_LIBRARY(LIBBTBB_LIBRARIES
37e25b118aSDominic Spill    NAMES ${libbtbb_library_names}
38e25b118aSDominic Spill    HINTS $ENV{LIBBTBB_DIR}/lib ${PC_LIBBTBB_LIBDIR}
39*7178652dSDominic Spill    PATHS /usr/local/lib /usr/lib /opt/local/lib ${PC_LIBBTBB_LIBDIR}
40*7178652dSDominic Spill    ${PC_LIBBTBB_LIBRARY_DIRS} ${CMAKE_SOURCE_DIR}/../libbtbb/src
41e25b118aSDominic Spill  )
42e25b118aSDominic Spill
43e25b118aSDominic Spill  if(LIBBTBB_INCLUDE_DIR)
44e25b118aSDominic Spill    set(CMAKE_REQUIRED_INCLUDES ${LIBBTBB_INCLUDE_DIR})
45e25b118aSDominic Spill  endif()
46e25b118aSDominic Spill
47e25b118aSDominic Spill  if(LIBBTBB_LIBRARIES)
48e25b118aSDominic Spill    set(CMAKE_REQUIRED_LIBRARIES ${LIBBTBB_LIBRARIES})
49e25b118aSDominic Spill  endif()
50e25b118aSDominic Spill
51e25b118aSDominic Spill  include(FindPackageHandleStandardArgs)
52e25b118aSDominic Spill  FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBBTBB DEFAULT_MSG LIBBTBB_LIBRARIES LIBBTBB_INCLUDE_DIR)
53e25b118aSDominic Spill
54e25b118aSDominic Spill  MARK_AS_ADVANCED(LIBBTBB_INCLUDE_DIR LIBBTBB_LIBRARIES)
55e25b118aSDominic Spill
56e25b118aSDominic Spillendif (LIBBTBB_INCLUDE_DIR AND LIBBTBB_LIBRARIES)