xref: /libbtbb/cmake/modules/FindBTBB.cmake (revision fb402f569c3af0f370efa3b2d1567fe7badeb1af)
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*fb402f56SDominic Spill    PATHS /usr/include /usr/local/include
28*fb402f56SDominic Spill    /opt/local/include
29*fb402f56SDominic Spill    ${CMAKE_SOURCE_DIR}/../libbtbb/src
30e25b118aSDominic Spill    ${LIBBTBB_INCLUDE_DIR}
31e25b118aSDominic Spill  )
32e25b118aSDominic Spill
33e25b118aSDominic Spill  set(libbtbb_library_names btbb)
34e25b118aSDominic Spill
35e25b118aSDominic Spill  FIND_LIBRARY(LIBBTBB_LIBRARIES
36e25b118aSDominic Spill    NAMES ${libbtbb_library_names}
37e25b118aSDominic Spill    HINTS $ENV{LIBBTBB_DIR}/lib ${PC_LIBBTBB_LIBDIR}
387178652dSDominic Spill    PATHS /usr/local/lib /usr/lib /opt/local/lib ${PC_LIBBTBB_LIBDIR}
397178652dSDominic Spill    ${PC_LIBBTBB_LIBRARY_DIRS} ${CMAKE_SOURCE_DIR}/../libbtbb/src
40e25b118aSDominic Spill  )
41e25b118aSDominic Spill
42e25b118aSDominic Spill  if(LIBBTBB_INCLUDE_DIR)
43e25b118aSDominic Spill    set(CMAKE_REQUIRED_INCLUDES ${LIBBTBB_INCLUDE_DIR})
44e25b118aSDominic Spill  endif()
45e25b118aSDominic Spill
46e25b118aSDominic Spill  if(LIBBTBB_LIBRARIES)
47e25b118aSDominic Spill    set(CMAKE_REQUIRED_LIBRARIES ${LIBBTBB_LIBRARIES})
48e25b118aSDominic Spill  endif()
49e25b118aSDominic Spill
50e25b118aSDominic Spill  include(FindPackageHandleStandardArgs)
51e25b118aSDominic Spill  FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBBTBB DEFAULT_MSG LIBBTBB_LIBRARIES LIBBTBB_INCLUDE_DIR)
52e25b118aSDominic Spill
53e25b118aSDominic Spill  MARK_AS_ADVANCED(LIBBTBB_INCLUDE_DIR LIBBTBB_LIBRARIES)
54e25b118aSDominic Spill
55e25b118aSDominic Spillendif (LIBBTBB_INCLUDE_DIR AND LIBBTBB_LIBRARIES)