AC_INIT(starttls.el)
-AM_INIT_AUTOMAKE(starttls, 0.5)
+AC_PREREQ(2.50)
+AM_INIT_AUTOMAKE(starttls, 0.10)
AM_PATH_LISPDIR
AC_PROG_MAKE_SET
AC_PROG_RANLIB
-AC_CHECK_HEADERS(libgen.h sys/select.h socks.h)
+AC_CHECK_HEADERS(libgen.h sys/select.h sys/poll.h)
-AC_CHECK_LIB(nsl, gethostbyname)
-AC_CHECK_LIB(socket, socket)
-AC_CHECK_TYPE(fd_set, int)
-AC_REPLACE_FUNCS(basename getaddrinfo)
-
-AC_CACHE_CHECK([for struct addrinfo], ac_cv_struct_addrinfo,
-[AC_TRY_COMPILE([#include <netdb.h>
-], [struct addrinfo a],
-ac_cv_struct_addrinfo=yes, ac_cv_struct_addrinfo=no)])
-if test "$ac_cv_struct_addrinfo" = "yes"; then
- AC_DEFINE(HAVE_ADDRINFO)
-else
- AC_DEFINE(NEED_ADDRINFO_H)
+AC_STRUCT_ADDRINFO(ac_cv_struct_addrinfo)
+if test "$ac_cv_struct_addrinfo" = "no"; then
+ AC_CHECK_LIB(nsl, gethostbyname)
fi
+AC_CHECK_LIB(socket, socket)
-AC_CACHE_CHECK([for NI_MAXSERV], ac_cv_ni_maxserv,
-[AC_EGREP_CPP(yes, [#include <netdb.h>
-#ifdef NI_MAXSERV
-yes
-#endif
-], ac_cv_ni_maxserv=yes, ac_cv_ni_maxserv=no)])
-test "$ac_cv_ni_maxserv" = "yes" || AC_DEFINE(NEED_ADDRINFO_H)
-
-AC_CACHE_CHECK([for NI_NOFQDN], ac_cv_ni_nofqdn,
-[AC_EGREP_CPP(yes, [#include <netdb.h>
-#ifdef NI_NOFQDN
-yes
-#endif
-], ac_cv_ni_nofqdn=yes, ac_cv_ni_nofqdn=no)])
-test "$ac_cv_ni_nofqdn" = "yes" || AC_DEFINE(NEED_ADDRINFO_H)
+AC_CHECK_FUNC(getopt_long,,[
+ AC_LIBOBJ(getopt)
+ AC_LIBOBJ(getopt1)])
+AC_REPLACE_FUNCS(basename)
+AC_CHECK_FUNC(poll)
AC_ARG_WITH(openssl,[ --with-openssl=PATH use OpenSSL from PATH])
-
-if test -n "$with_openssl"; then
- CPPFLAGS="${CPPFLAGS} -I${with_openssl}/include"
- LDFLAGS="${LDFLAGS} -L${with_openssl}/lib"
+AC_ARG_WITH(gnutls,[ --with-gnutls use GnuTLS instead of OpenSSL],
+ use_gnutls=true, use_gnutls=false)
+AM_CONDITIONAL(USE_GNUTLS, test x$use_gnutls = xtrue)
+
+if $use_gnutls; then
+ AC_CHECK_HEADER(gnutls/gnutls.h, [
+ AC_DEFINE(USE_GNUTLS)
+ AC_CHECK_LIB(gnutls, gnutls_global_init, LIBS="-lgnutls $LIBS")],
+ [GnuTLS is selected, but it is not installed])
+else
+ if test -n "$with_openssl"; then
+ CPPFLAGS="$CPPFLAGS -I${with_openssl}/include"
+ LDFLAGS="$LDFLAGS -L${with_openssl}/lib"
+ fi
+ AC_CHECK_HEADER(openssl/ssl.h, [
+ AC_CHECK_LIB(crypto, BIO_accept, LIBS="-lcrypto $LIBS")
+ AC_CHECK_LIB(ssl, SSL_CTX_new, LIBS="-lssl $LIBS")],
+ AC_MSG_ERROR([OpenSSL not installed - please install first]))
fi
-AC_CHECK_HEADER(openssl/ssl.h, [
- AC_CHECK_LIB(crypto, BIO_accept, LIBS="-lcrypto ${LIBS}")
- AC_CHECK_LIB(ssl, SSL_CTX_new, LIBS="-lssl ${LIBS}")],
- AC_MSG_ERROR([OpenSSL not installed - please install first]))
-
AC_OUTPUT(Makefile)