]> sjero.net Git - wget/blobdiff - configure.in
[svn] Remove .gmo files when make clean is called.
[wget] / configure.in
index 11f969eb5a2c3be363f42117d401b0ea3e246bb1..4fd5aee63be43dad7a5071c76b6657a9e5b03d4b 100644 (file)
@@ -230,6 +230,7 @@ WGET_STRUCT_UTIMBUF
 WGET_SOCKLEN_T
 WGET_FNMATCH
 WGET_NANOSLEEP
+WGET_POSIX_CLOCK
 WGET_NSL_SOCKET
 
 dnl
@@ -326,10 +327,18 @@ if test x"$with_ssl" != x"no"; then
     ssl_found_includes=no
     CPPFLAGS="$SSL_INCLUDES $wget_save_CPPFLAGS"
 
+    dnl Check for all the OpenSSL includes that Wget actually uses.
+    dnl This will prune both invalid installations and ancient
+    dnl versions of OpenSSL that we can't use.
     AC_MSG_CHECKING([for includes])
     AC_COMPILE_IFELSE([
 #include <openssl/ssl.h>
-#include <openssl/rsa.h>
+#include <openssl/x509.h>
+#include <openssl/err.h>
+#include <openssl/rand.h>
+#include <openssl/des.h>
+#include <openssl/md4.h>
+#include <openssl/md5.h>
     ], [
       AC_MSG_RESULT(found)
       ssl_found_includes=yes
@@ -395,7 +404,7 @@ main(){return 0;}
     AC_DEFINE([HAVE_SSL], 1,
               [Define if SSL support should be compiled in.])
     AC_SUBST(SSL_INCLUDES)
-    SSL_OBJ='gen_sslfunc$o'
+    SSL_OBJ='openssl$o'
     AC_SUBST(SSL_OBJ)
   else
     LDFLAGS=$wget_save_LDFLAGS
@@ -497,45 +506,54 @@ dnl **********************************************************************
 dnl
 dnl If --enable-ipv6 is specified, we try to use IPv6 (as long as
 dnl getaddrinfo is also present).  If --disable-ipv6 is specified, we
-dnl don't use IPv6 or getaddrinfo.
+dnl don't use IPv6 or getaddrinfo.  Otherwise we detect IPv6 and use
+dnl it where available.
 dnl
 
-ipv6=
-check_for_ipv6=no
 AC_ARG_ENABLE(ipv6,
   AC_HELP_STRING([--disable-ipv6],[disable IPv6 support]),
   [case "${enable_ipv6}" in
-  no)
-    AC_MSG_NOTICE([disabling IPv6 at user request])
-    ipv6=no
-    ;;
-  *)
+    no)
+      AC_MSG_NOTICE([disabling IPv6 at user request])
+      dnl Disable IPv6 checking
+      ipv6=no
+      ;;
+    yes)
+      dnl IPv6 explicitly enabled: force its use (abort if unavailable).
+      ipv6=yes
+      force_ipv6=yes
+      ;;
+    auto)
+      dnl Auto-detect IPv6, i.e. check for IPv6, but don't force it.
+      ipv6=yes
+      ;;
+    *)
+      AC_MSG_ERROR([Invalid --enable-ipv6 argument \`$enable_ipv6'])
+      ;;
+    esac
+  ], [
+    dnl If nothing is specified, assume auto-detection.
     ipv6=yes
-    ;;
-  esac],
-  dnl If unspecified, check for IPv6 and use it where available.
-  [check_for_ipv6=yes]
+  ]
 )
 
-if test "X$ipv6" = "Xyes" || test "X$check_for_ipv6" = "Xyes"; then
+if test "X$ipv6" = "Xyes"; then
   AC_CHECK_FUNCS(getaddrinfo, [], [
     AC_MSG_NOTICE([Disabling IPv6 support: your system does not support getaddrinfo(3)])
     ipv6=no
   ])
 fi
 
-if test "X$ipv6" = "Xyes" || test "X$check_for_ipv6" = "Xyes"; then
+if test "X$ipv6" = "Xyes"; then
   PROTO_INET6([], [
     AC_MSG_NOTICE([Disabling IPv6 support: your system does not support the PF_INET6 protocol family])
     ipv6=no
   ])
 fi
 
-if test "X$ipv6" = "Xyes" || test "X$check_for_ipv6" = "Xyes"; then
-  TYPE_STRUCT_SOCKADDR_IN6([
-    ipv6=yes
-  ],[
-    AC_MSG_NOTICE([Disabling IPv6 support: your system does not support 'struct sockaddr_in6'])
+if test "X$ipv6" = "Xyes"; then
+  TYPE_STRUCT_SOCKADDR_IN6([],[
+    AC_MSG_NOTICE([Disabling IPv6 support: your system does not support \`struct sockaddr_in6'])
     ipv6=no
   ])
   if test "X$ipv6" = "Xyes"; then
@@ -546,6 +564,9 @@ fi
 
 if test "X$ipv6" = "Xyes"; then
   AC_DEFINE([ENABLE_IPV6], 1, [Define if IPv6 support is enabled.])
+  AC_MSG_NOTICE([Enabling support for IPv6.])
+elif test "x$force_ipv6" = "xyes"; then
+  AC_MSG_ERROR([IPv6 support requested but not found; aborting])
 fi
 
 
@@ -570,13 +591,13 @@ dnl command-line options, such as `-I'.  Now we depend on makeinfo to
 dnl build the Info documentation.
 dnl
 
-AC_CHECK_PROGS(MAKEINFO, makeinfo)
+AC_CHECK_PROGS(MAKEINFO, [makeinfo], [true])
 
 dnl
 dnl Find perl and pod2man
 dnl
 
-AC_PATH_PROGS(PERL, perl5 perl, no)
+AC_PATH_PROGS(PERL, [perl5 perl], no)
 AC_PATH_PROG(POD2MAN, pod2man, no)
 
 if test "x${POD2MAN}" = xno; then