# HG changeset patch # User Matt Johnston # Date 1448550073 -28800 # Node ID a4ce76e6fb631bc98422e6ad186da6d0051ed7ca # Parent 15726edd3a1c14ecc79cbe28e4913afbc08fcb34 Another attempt at test for crypt() diff -r 15726edd3a1c -r a4ce76e6fb63 configure.ac --- a/configure.ac Thu Nov 26 22:21:14 2015 +0800 +++ b/configure.ac Thu Nov 26 23:01:13 2015 +0800 @@ -82,9 +82,19 @@ AC_MSG_NOTICE([Using uClibc - login() and logout() probably don't work, so we won't use them.]) ],,,) -# Checks for libraries. -AC_CHECK_LIB(crypt, crypt, CRYPTLIB="-lcrypt") +dnl We test for crypt() specially. On Linux (and others?) it resides in libcrypt +dnl but we don't want link all binaries to -lcrypt, just dropbear server. +dnl OS X doesn't need -lcrypt +AC_CHECK_FUNC(crypt, found_crypt_func=here) +AC_CHECK_LIB(crypt, crypt, + [ + CRYPTLIB="-lcrypt" + found_crypt_func=here + ]) AC_SUBST(CRYPTLIB) +if test "t$found_crypt_func" == there; then +AC_DEFINE(HAVE_CRYPT, 1, [crypt() function]) +fi # Check if zlib is needed AC_ARG_WITH(zlib, @@ -632,7 +642,7 @@ AC_PROG_GCC_TRADITIONAL AC_FUNC_MEMCMP AC_FUNC_SELECT_ARGTYPES -AC_CHECK_FUNCS([dup2 getpass getspnam getusershell memset putenv select socket strdup clearenv strlcpy strlcat daemon basename _getpty getaddrinfo freeaddrinfo getnameinfo fork writev crypt]) +AC_CHECK_FUNCS([dup2 getpass getspnam getusershell memset putenv select socket strdup clearenv strlcpy strlcat daemon basename _getpty getaddrinfo freeaddrinfo getnameinfo fork writev]) AC_SEARCH_LIBS(basename, gen, AC_DEFINE(HAVE_BASENAME)) @@ -730,7 +740,7 @@ AC_MSG_NOTICE([getpass() not available, dbclient will only have public-key authentication]) fi -if test "x$ac_cv_func_crypt" != xyes; then +if test "t$found_crypt_func" != there; then AC_MSG_NOTICE() AC_MSG_NOTICE([crypt() not available, dropbear server will not have password authentication]) fi