41 lines
1.1 KiB
CMake
41 lines
1.1 KiB
CMake
if(PROJECT_ENABLE_LIBEVENT)
|
|
if(PROJECT_BUILD)
|
|
find_package(Libevent ${LIBEVENT_VERSION} REQUIRED)
|
|
|
|
add_definitions(-DPROJECT_ENABLE_LIBEVENT)
|
|
|
|
include_directories(BEFORE SYSTEM
|
|
${LIBEVENT_INCLUDE_DIRS}
|
|
)
|
|
|
|
link_libraries(
|
|
${LIBEVENT_LIBRARIES}
|
|
)
|
|
elseif(NOT PROJECT_IS_MINGW OR CMAKE_HOST_WIN32)
|
|
if(PROJECT_BUILD_SHARED_LIBS)
|
|
set(LIBEVENT_LIBRARY_TYPE BOTH)
|
|
else()
|
|
set(LIBEVENT_LIBRARY_TYPE STATIC)
|
|
endif()
|
|
|
|
ExternalProject_Add(libevent_project
|
|
PREFIX external
|
|
URL ${PROJECT_3RD_PARTY_DIR}/libevent-${LIBEVENT_VERSION}-stable.tar.gz
|
|
URL_HASH SHA256=92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb
|
|
LIST_SEPARATOR |
|
|
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
|
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
|
-DBUILD_STATIC_LIBS=ON
|
|
-DEVENT__DISABLE_OPENSSL=ON
|
|
-DEVENT__DISABLE_SAMPLES=ON
|
|
-DEVENT__DISABLE_TESTS=ON
|
|
-DEVENT__LIBRARY_TYPE=${LIBEVENT_LIBRARY_TYPE}
|
|
)
|
|
|
|
set(PROJECT_DEPENDENCIES
|
|
${PROJECT_DEPENDENCIES}
|
|
libevent_project
|
|
)
|
|
endif()
|
|
endif()
|