summaryrefslogtreecommitdiffstats
path: root/libmariadb/cmake/SearchLibrary.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'libmariadb/cmake/SearchLibrary.cmake')
-rw-r--r--libmariadb/cmake/SearchLibrary.cmake29
1 files changed, 29 insertions, 0 deletions
diff --git a/libmariadb/cmake/SearchLibrary.cmake b/libmariadb/cmake/SearchLibrary.cmake
new file mode 100644
index 00000000..aa3a240e
--- /dev/null
+++ b/libmariadb/cmake/SearchLibrary.cmake
@@ -0,0 +1,29 @@
+#
+# Copyright (C) 2013-2016 MariaDB Corporation AB
+#
+# Redistribution and use is allowed according to the terms of the New
+# BSD license.
+# For details see the COPYING-CMAKE-SCRIPTS file.
+#
+INCLUDE(CheckFunctionExists)
+INCLUDE(CheckLibraryExists)
+
+FUNCTION(SEARCH_LIBRARY library_name function liblist)
+ IF(${${library_name}})
+ RETURN()
+ ENDIF()
+ CHECK_FUNCTION_EXISTS(${function} IS_${function}_LIBC_FUNC)
+ IF(IS_${function}_LIBC_FUNC)
+ SET(${library_name} "" PARENT_SCOPE)
+ RETURN()
+ ENDIF()
+ FOREACH(lib ${liblist})
+ CHECK_LIBRARY_EXISTS(${lib} ${function} "" HAVE_${function}_IN_${lib})
+ IF(HAVE_${function}_IN_${lib})
+ SET(${library_name} ${lib} PARENT_SCOPE)
+ SET(HAVE_${library_name} 1 PARENT_SCOPE)
+ RETURN()
+ ENDIF()
+ ENDFOREACH()
+ENDFUNCTION()
+