diff options
author | Thiago de Arruda <tpadilha84@gmail.com> | 2014-04-10 15:39:34 -0300 |
---|---|---|
committer | Thiago de Arruda <tpadilha84@gmail.com> | 2014-04-11 14:07:44 -0300 |
commit | 878e6e661d5dd4daa6bb8194511c43cba811c606 (patch) | |
tree | 53c65401646ca45f7bab46bd946e18fd6ef91612 /cmake/FindMsgpack.cmake | |
parent | 00a27a808c0384d7d7a25999330f5d0b040c3b47 (diff) | |
download | rneovim-878e6e661d5dd4daa6bb8194511c43cba811c606.tar.gz rneovim-878e6e661d5dd4daa6bb8194511c43cba811c606.tar.bz2 rneovim-878e6e661d5dd4daa6bb8194511c43cba811c606.zip |
Add cmake module for finding msgpack
Diffstat (limited to 'cmake/FindMsgpack.cmake')
-rw-r--r-- | cmake/FindMsgpack.cmake | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/cmake/FindMsgpack.cmake b/cmake/FindMsgpack.cmake new file mode 100644 index 0000000000..e7b32eecea --- /dev/null +++ b/cmake/FindMsgpack.cmake @@ -0,0 +1,51 @@ +# - Try to find msgpack +# Once done this will define +# MSGPACK_FOUND - System has msgpack +# MSGPACK_INCLUDE_DIRS - The msgpack include directories +# MSGPACK_LIBRARIES - The libraries needed to use msgpack + +find_package(PkgConfig) +if(NOT MSGPACK_USE_BUNDLED) + find_package(PkgConfig) + if (PKG_CONFIG_FOUND) + pkg_check_modules(PC_MSGPACK QUIET msgpack) + endif() +else() + set(PC_MSGPACK_INCLUDEDIR) + set(PC_MSGPACK_INCLUDE_DIRS) + set(PC_MSGPACK_LIBDIR) + set(PC_MSGPACK_LIBRARY_DIRS) + set(LIMIT_SEARCH NO_DEFAULT_PATH) +endif() + +set(MSGPACK_DEFINITIONS ${PC_MSGPACK_CFLAGS_OTHER}) + +find_path(MSGPACK_INCLUDE_DIR msgpack.h + HINTS ${PC_MSGPACK_INCLUDEDIR} ${PC_MSGPACK_INCLUDE_DIRS} + PATHS "${DEPS_INSTALL_DIR}" + ${LIMIT_SEARCH}) + +# If we're asked to use static linkage, add libmsgpackc.a as a preferred library name. +if(MSGPACK_USE_STATIC) + list(APPEND MSGPACK_NAMES + "${CMAKE_STATIC_LIBRARY_PREFIX}msgpackc${CMAKE_STATIC_LIBRARY_SUFFIX}") +endif() + +list(APPEND MSGPACK_NAMES msgpackc) + +find_library(MSGPACK_LIBRARY NAMES ${MSGPACK_NAMES} + HINTS ${PC_MSGPACK_LIBDIR} ${PC_MSGPACK_LIBRARY_DIRS} + PATHS "${DEPS_INSTALL_DIR}" + ${LIMIT_SEARCH}) + +mark_as_advanced(MSGPACK_INCLUDE_DIR MSGPACK_LIBRARY) + +set(MSGPACK_LIBRARIES ${MSGPACK_LIBRARY}) +set(MSGPACK_INCLUDE_DIRS ${MSGPACK_INCLUDE_DIR}) + +include(FindPackageHandleStandardArgs) +# handle the QUIETLY and REQUIRED arguments and set MSGPACK_FOUND to TRUE +# if all listed variables are TRUE +find_package_handle_standard_args(Msgpack DEFAULT_MSG + MSGPACK_LIBRARY MSGPACK_INCLUDE_DIR) + |