OpenSSL: fix non-DANE build
[exim.git] / test / configure.ac
index 8b318034d090eb3dda842bb269e5a8e698a17ebc..84fd07821df6e1ec4479443225a3838e2a0d78bf 100644 (file)
@@ -1,15 +1,14 @@
-dnl $Cambridge: exim/test/configure.ac,v 1.1 2006/02/06 16:07:10 ph10 Exp $
-
 dnl Process this file with autoconf to produce a configure script.
 
 dnl This is required at the start; the name is the name of a file
 dnl it should be seeing, to verify it is in the same directory.
 
-AC_INIT(listtests)
+AC_INIT
+AC_CONFIG_SRCDIR([listtests])
 
 dnl A safety precaution
 
-AC_PREREQ(2.57)
+AC_PREREQ([2.71])
 
 dnl Checks for programs.
 
@@ -17,8 +16,12 @@ AC_PROG_CC
 
 dnl Checks for header files.
 
-AC_CHECK_HEADERS(openssl/crypto.h,[CLIENT_SSL=bin/client-ssl])
+AC_CHECK_HEADERS(sys/socket.h)
+AC_CHECK_HEADERS(openssl/crypto.h,[CLIENT_OPENSSL=bin/client-ssl])
+AC_CHECK_HEADERS(openssl/crypto.h,[CLIENT_ANYTLS=bin/client-anytls])
 AC_CHECK_HEADERS(gnutls/gnutls.h,[CLIENT_GNUTLS=bin/client-gnutls])
+AC_CHECK_HEADERS(gnutls/gnutls.h,[CLIENT_ANYTLS=bin/client-anytls])
+AC_CHECK_HEADERS(gnutls/gnutls.h,[B64_GNUTLS=bin/ed25519_privkey_pem_to_pubkey_raw_b64])
 
 dnl The check on dynamically loaded modules requires the building of
 dnl something to load. This seems to be something that varies between
@@ -31,9 +34,9 @@ dnl "install" script for some weird reason.
 host_os=`uname -s`
 
 case $CC-$host_os in
-  gcc-*linux* | gcc-*Linux* | gcc-*LINUX* | gcc-FreeBSD)
+  gcc-*linux* | gcc-*Linux* | gcc-*LINUX* | gcc-FreeBSD | gcc-*SunOS* | cc-*SunOS* )
     LOADED=bin/loaded
-    LOADED_OPT=-shared
+    LOADED_OPT="-shared -fPIC"
     echo "Using gcc on $host_os: will compile dynamically loaded module"
     ;;
   *)
@@ -42,13 +45,35 @@ case $CC-$host_os in
     ;;
 esac
 
+dnl At least one operating system needs BIND_8_COMPAT to be defined.
+
+case $host_os in
+  Darwin)
+    BIND_8_COMPAT=-DBIND_8_COMPAT
+    ;;
+esac
+
+dnl Solaris requires additional libraries for networking functions.
+
+AC_SEARCH_LIBS([inet_addr], [nsl])
+AC_SEARCH_LIBS([connect], [socket])
+AC_SEARCH_LIBS([inet_pton], [nsl socket resolv])
+AC_SEARCH_LIBS([inet_ntop], [nsl socket resolv])
+
+AC_CHECK_FUNCS_ONCE(getaddrinfo)
+
 dnl "Export" these variables
 
-AC_SUBST(CLIENT_SSL)
+AC_SUBST(BIND_8_COMPAT)
+AC_SUBST(CLIENT_OPENSSL)
 AC_SUBST(CLIENT_GNUTLS)
+AC_SUBST(CLIENT_ANYTLS)
+AC_SUBST(B64_GNUTLS)
 AC_SUBST(LOADED)
 AC_SUBST(LOADED_OPT)
+AC_SUBST(LIBS)
 
 dnl This must be last; it determines what files are written
 
-AC_OUTPUT(Makefile)
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT