aboutsummaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorThiago de Arruda <tpadilha84@gmail.com>2015-02-28 10:43:52 -0300
committerThiago de Arruda <tpadilha84@gmail.com>2015-02-28 10:43:52 -0300
commitc6482eb598dca0b324e6a96b7a810daf836178e8 (patch)
treee6906ec0a0b583f638844c188c25fd1b26ee433f /cmake
parentbbc9eff9ae16e954b9fe72641b3650f23be2e4dd (diff)
parent81a346553c76b25286111305c8b3a33d4a9f4a8f (diff)
downloadrneovim-c6482eb598dca0b324e6a96b7a810daf836178e8.tar.gz
rneovim-c6482eb598dca0b324e6a96b7a810daf836178e8.tar.bz2
rneovim-c6482eb598dca0b324e6a96b7a810daf836178e8.zip
Merge PR #2072 'Add custom target for pinning busted dependencies'
Diffstat (limited to 'cmake')
-rw-r--r--cmake/FindLibVterm.cmake48
1 files changed, 48 insertions, 0 deletions
diff --git a/cmake/FindLibVterm.cmake b/cmake/FindLibVterm.cmake
new file mode 100644
index 0000000000..21a0928496
--- /dev/null
+++ b/cmake/FindLibVterm.cmake
@@ -0,0 +1,48 @@
+# - Try to find libvterm
+# Once done this will define
+# LIBVTERM_FOUND - System has libvterm
+# LIBVTERM_INCLUDE_DIRS - The libvterm include directories
+# LIBVTERM_LIBRARIES - The libraries needed to use libvterm
+
+find_package(PkgConfig)
+if(NOT LIBVTERM_USE_BUNDLED)
+ find_package(PkgConfig)
+ if (PKG_CONFIG_FOUND)
+ pkg_check_modules(PC_LIBVTERM QUIET vterm)
+ endif()
+else()
+ set(PC_LIBVTERM_INCLUDEDIR)
+ set(PC_LIBVTERM_INCLUDE_DIRS)
+ set(PC_LIBVTERM_LIBDIR)
+ set(PC_LIBVTERM_LIBRARY_DIRS)
+ set(LIMIT_SEARCH NO_DEFAULT_PATH)
+endif()
+
+set(LIBVTERM_DEFINITIONS ${PC_LIBVTERM_CFLAGS_OTHER})
+
+find_path(LIBVTERM_INCLUDE_DIR vterm.h
+ PATHS ${PC_LIBVTERM_INCLUDEDIR} ${PC_LIBVTERM_INCLUDE_DIRS}
+ ${LIMIT_SEARCH})
+
+# If we're asked to use static linkage, add libuv.a as a preferred library name.
+if(LIBVTERM_USE_STATIC)
+ list(APPEND LIBVTERM_NAMES
+ "${CMAKE_STATIC_LIBRARY_PREFIX}vterm${CMAKE_STATIC_LIBRARY_SUFFIX}")
+endif()
+
+list(APPEND LIBVTERM_NAMES vterm)
+
+find_library(LIBVTERM_LIBRARY NAMES ${LIBVTERM_NAMES}
+ HINTS ${PC_LIBVTERM_LIBDIR} ${PC_LIBVTERM_LIBRARY_DIRS}
+ ${LIMIT_SEARCH})
+
+set(LIBVTERM_LIBRARIES ${LIBVTERM_LIBRARY})
+set(LIBVTERM_INCLUDE_DIRS ${LIBVTERM_INCLUDE_DIR})
+
+include(FindPackageHandleStandardArgs)
+# handle the QUIETLY and REQUIRED arguments and set LIBVTERM_FOUND to TRUE
+# if all listed variables are TRUE
+find_package_handle_standard_args(LibVterm DEFAULT_MSG
+ LIBVTERM_LIBRARY LIBVTERM_INCLUDE_DIR)
+
+mark_as_advanced(LIBVTERM_INCLUDE_DIR LIBVTERM_LIBRARY)