aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ConfigureChecks.cmake11
-rw-r--r--libssh/CMakeLists.txt8
2 files changed, 12 insertions, 7 deletions
diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
index 93e3c1a..7454c90 100644
--- a/ConfigureChecks.cmake
+++ b/ConfigureChecks.cmake
@@ -57,6 +57,16 @@ if (UNIX)
if (HAVE_LIBNSL)
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} nsl)
endif (HAVE_LIBNSL)
+ # libresolv
+ check_library_exists(resolve hstrerror "" HAVE_LIBRESOLV)
+ if (HAVE_LIBRESOLV)
+ set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} resolv)
+ endif (HAVE_LIBRESOLV)
+ check_library_exists(rt nanosleep "" HAVE_LIBRT)
+ # librt
+ if (HAVE_LIBRT)
+ set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} rt)
+ endif (HAVE_LIBRT)
check_function_exists(getaddrinfo HAVE_GETADDRINFO)
check_function_exists(gethostbyname HAVE_GETHOSTBYNAME)
@@ -65,6 +75,7 @@ if (UNIX)
check_function_exists(cfmakeraw HAVE_CFMAKERAW)
check_function_exists(regcomp HAVE_REGCOMP)
endif (UNIX)
+set(LIBSSH_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} CACHE INTERNAL "libssh required system libraries")
# LIBRARIES
if (CRYPTO_FOUND)
diff --git a/libssh/CMakeLists.txt b/libssh/CMakeLists.txt
index fc355bf..ad13b8f 100644
--- a/libssh/CMakeLists.txt
+++ b/libssh/CMakeLists.txt
@@ -25,6 +25,7 @@ if (WITH_STATIC_LIB)
endif (WITH_STATIC_LIB)
set(LIBSSH_LINK_LIBRARIES
+ ${LIBSSH_REQUIRED_LIBRARIES}
${ZLIB_LIBRARIES}
)
@@ -35,13 +36,6 @@ if (WIN32)
)
endif (WIN32)
-if (HAVE_LIBNSL)
- set(LIBSSH_LINK_LIBRARIES
- ${LIBSSH_LINK_LIBRARIES}
- nsl
- )
-endif (HAVE_LIBNSL)
-
if (HAVE_LIBSOCKET)
set(LIBSSH_LINK_LIBRARIES
${LIBSSH_LINK_LIBRARIES}