# Locate libev library # This module defines # HAVE_LIBEV, if false, do not try to link with libev # LIBEV_LIBRARIES, Library path and libs # LIBEV_INCLUDE_DIR, where to find the libev headers FIND_PATH(LIBEV_INCLUDE_DIR ev.h PATHS ${LIBEV_ROOT} PATH_SUFFIXES include libev NO_DEFAULT_PATH) FIND_LIBRARY(LIBEV_LIBRARIES NAMES ev libev PATHS ${LIBEV_ROOT} PATH_SUFFIXES lib libev NO_DEFAULT_PATH) FIND_PATH(LIBEV_INCLUDE_DIR ev.h HINTS ENV LIBEV_DIR PATH_SUFFIXES include include/libev PATHS ${DEPS_INCLUDE_DIR} ~/Library/Frameworks /Library/Frameworks /opt/local /opt/csw /opt/libev /opt) FIND_LIBRARY(LIBEV_LIBRARIES NAMES ev libev HINTS ENV LIBEV_DIR PATH_SUFFIXES lib libev PATHS ${DEPS_LIB_DIR} ~/Library/Frameworks /Library/Frameworks /opt/local /opt/csw /opt/libev /opt) IF (LIBEV_LIBRARIES AND LIBEV_INCLUDE_DIR) SET(HAVE_LIBEV true) MESSAGE(STATUS "Found libev in ${LIBEV_INCLUDE_DIR} : ${LIBEV_LIBRARIES}") ELSE (LIBEV_LIBRARIES) SET(HAVE_LIBEV false) ENDIF (LIBEV_LIBRARIES AND LIBEV_INCLUDE_DIR) INCLUDE(CMakePushCheckState) INCLUDE(CheckFunctionExists) IF(HAVE_LIBEV) CMAKE_PUSH_CHECK_STATE() SET(CMAKE_REQUIRED_FLAGS "-I${LIBEV_INCLUDE_DIR}") SET(CMAKE_REQUIRED_LIBRARIES ${LIBEV_LIBRARIES}) SET(CMAKE_REQUIRED_INCLUDES "ev.h") CHECK_FUNCTION_EXISTS(ev_loop HAVE_LIBEV3) IF(NOT HAVE_LIBEV3) CHECK_FUNCTION_EXISTS(ev_run HAVE_LIBEV4) ENDIF() CMAKE_POP_CHECK_STATE() IF(HAVE_LIBEV3) MESSAGE(STATUS "libev3 found") ELSEIF(HAVE_LIBEV4) MESSAGE(STATUS "libev4 found") ELSE() MESSAGE(STATUS "libev not found") ENDIF() ENDIF() MARK_AS_ADVANCED(HAVE_LIBEV LIBEV_INCLUDE_DIR LIBEV_LIBRARIES)