• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# - Try to find libev
2# Once done this will define
3#  LIBEV_FOUND        - System has libev
4#  LIBEV_INCLUDE_DIRS - The libev include directories
5#  LIBEV_LIBRARIES    - The libraries needed to use libev
6
7find_path(LIBEV_INCLUDE_DIR
8  NAMES ev.h
9)
10find_library(LIBEV_LIBRARY
11  NAMES ev
12)
13
14if(LIBEV_INCLUDE_DIR)
15  file(STRINGS "${LIBEV_INCLUDE_DIR}/ev.h"
16    LIBEV_VERSION_MAJOR REGEX "^#define[ \t]+EV_VERSION_MAJOR[ \t]+[0-9]+")
17  file(STRINGS "${LIBEV_INCLUDE_DIR}/ev.h"
18    LIBEV_VERSION_MINOR REGEX "^#define[ \t]+EV_VERSION_MINOR[ \t]+[0-9]+")
19  string(REGEX REPLACE "[^0-9]+" "" LIBEV_VERSION_MAJOR "${LIBEV_VERSION_MAJOR}")
20  string(REGEX REPLACE "[^0-9]+" "" LIBEV_VERSION_MINOR "${LIBEV_VERSION_MINOR}")
21  set(LIBEV_VERSION "${LIBEV_VERSION_MAJOR}.${LIBEV_VERSION_MINOR}")
22  unset(LIBEV_VERSION_MINOR)
23  unset(LIBEV_VERSION_MAJOR)
24endif()
25
26include(FindPackageHandleStandardArgs)
27# handle the QUIETLY and REQUIRED arguments and set LIBEV_FOUND to TRUE
28# if all listed variables are TRUE and the requested version matches.
29find_package_handle_standard_args(Libev REQUIRED_VARS
30                                  LIBEV_LIBRARY LIBEV_INCLUDE_DIR
31                                  VERSION_VAR LIBEV_VERSION)
32
33if(LIBEV_FOUND)
34  set(LIBEV_LIBRARIES     ${LIBEV_LIBRARY})
35  set(LIBEV_INCLUDE_DIRS  ${LIBEV_INCLUDE_DIR})
36endif()
37
38mark_as_advanced(LIBEV_INCLUDE_DIR LIBEV_LIBRARY)
39