|  | # find LibEvent | 
|  | # an event notification library (http://libevent.org/) | 
|  | # | 
|  | # Usage: | 
|  | # LIBEVENT_INCLUDE_DIRS, where to find LibEvent headers | 
|  | # LIBEVENT_LIBRARIES, LibEvent libraries | 
|  | # Libevent_FOUND, If false, do not try to use libevent | 
|  |  | 
|  | set(LIBEVENT_ROOT CACHE PATH "Root directory of libevent installation") | 
|  | set(LibEvent_EXTRA_PREFIXES /usr/local /opt/local "$ENV{HOME}" ${LIBEVENT_ROOT}) | 
|  | foreach(prefix ${LibEvent_EXTRA_PREFIXES}) | 
|  | list(APPEND LibEvent_INCLUDE_PATHS "${prefix}/include") | 
|  | list(APPEND LibEvent_LIBRARIES_PATHS "${prefix}/lib") | 
|  | endforeach() | 
|  |  | 
|  | # Looking for "event.h" will find the Platform SDK include dir on windows | 
|  | # so we also look for a peer header like evhttp.h to get the right path | 
|  | find_path(LIBEVENT_INCLUDE_DIRS evhttp.h event.h PATHS ${LibEvent_INCLUDE_PATHS}) | 
|  |  | 
|  | # "lib" prefix is needed on Windows in some cases | 
|  | # newer versions of libevent use three libraries | 
|  | find_library(LIBEVENT_LIBRARIES NAMES event event_core event_extra libevent PATHS ${LibEvent_LIBRARIES_PATHS}) | 
|  |  | 
|  | if (LIBEVENT_LIBRARIES AND LIBEVENT_INCLUDE_DIRS) | 
|  | set(Libevent_FOUND TRUE) | 
|  | set(LIBEVENT_LIBRARIES ${LIBEVENT_LIBRARIES}) | 
|  | else () | 
|  | set(Libevent_FOUND FALSE) | 
|  | endif () | 
|  |  | 
|  | if (Libevent_FOUND) | 
|  | if (NOT Libevent_FIND_QUIETLY) | 
|  | message(STATUS "Found libevent: ${LIBEVENT_LIBRARIES}") | 
|  | endif () | 
|  | else () | 
|  | if (LibEvent_FIND_REQUIRED) | 
|  | message(FATAL_ERROR "Could NOT find libevent.") | 
|  | endif () | 
|  | message(STATUS "libevent NOT found.") | 
|  | endif () | 
|  |  | 
|  | mark_as_advanced( | 
|  | LIBEVENT_LIBRARIES | 
|  | LIBEVENT_INCLUDE_DIRS | 
|  | ) |