From 00ca93fb5037173897f2055a8dc9af143c031931 Mon Sep 17 00:00:00 2001 From: Rich Wareham Date: Mon, 24 Feb 2014 20:57:04 +0000 Subject: automatically discover libuv in CMake Idiomatically discover if libuv is installed. --- CMakeLists.txt | 3 +++ cmake/FindLibUV.cmake | 24 ++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 cmake/FindLibUV.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index ae3a891553..abc80bf66b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,6 +27,9 @@ if(NOT CMAKE_USE_PTHREADS_INIT) message(SEND_ERROR "The pthread library must be installed on your system.") endif(NOT CMAKE_USE_PTHREADS_INIT) +# Require libuv +find_package(LibUV REQUIRED) + # add dependencies to include/lib directories link_directories ("${PROJECT_SOURCE_DIR}/.deps/usr/lib") include_directories ("${PROJECT_SOURCE_DIR}/.deps/usr/include") diff --git a/cmake/FindLibUV.cmake b/cmake/FindLibUV.cmake new file mode 100644 index 0000000000..3aeb01195e --- /dev/null +++ b/cmake/FindLibUV.cmake @@ -0,0 +1,24 @@ +# - Try to find libuv +# Once done, this will define +# +# LibUV_FOUND - system has libuv +# LibUV_INCLUDE_DIRS - the libuv include directories +# LibUV_LIBRARIES - link these to use libuv + +include(LibFindMacros) + +# Include dir +find_path(LibUV_INCLUDE_DIR + NAMES uv.h +) + +# The library itself +find_library(LibUV_LIBRARY + NAMES uv +) + +# Set the include dir variables and the libraries and let libfind_process do the rest. +# NOTE: Singular variables for this library, plural for libraries this this lib depends on. +set(LibUV_PROCESS_INCLUDES LibUV_INCLUDE_DIR) +set(LibUV_PROCESS_LIBS LibUV_LIBRARY) +libfind_process(LibUV) -- cgit