]> sjero.net Git - wget/blobdiff - configure.in
[svn] Enable merging of duplicate strings. Turn off printing of
[wget] / configure.in
index 097e6387ddc6c746f2cfd3399ee39738e6cdf013..03dd4342c12614ace4a0e237c0f408119924cbac 100644 (file)
@@ -51,11 +51,6 @@ AC_DEFINE_UNQUOTED([OS_TYPE], "$host_os",
 dnl
 dnl Process features.
 dnl
-AC_ARG_WITH(socks,
-  [  --with-socks            use the socks library],
-  [AC_DEFINE([HAVE_SOCKS], 1,
-             [Define if you wish to compile with socks support.])]
-)
 
 AC_ARG_WITH(ssl,
 [[  --with-ssl[=SSL-ROOT]   link with SSL support [default=auto]
@@ -109,12 +104,16 @@ test -z "$CFLAGS"  && CFLAGS= auto_cflags=1
 test -z "$CC" && cc_specified=yes
 
 AC_PROG_CC
+AC_AIX
+AM_PROG_CC_STDC
 
+dnl Turn on optimization by default.  Specifically:
 dnl
 dnl if the user hasn't specified CFLAGS, then
-dnl   if compiler is gcc, then use -O2 and some warning flags
-dnl   else use os-specific flags or -O
-dnl
+dnl   if compiler is gcc, then
+dnl     use -O2 and some warning flags
+dnl   else
+dnl     use os-specific flags or -O
 if test -n "$auto_cflags"; then
   if test -n "$GCC"; then
     CFLAGS="$CFLAGS -O2 -Wall -Wno-implicit"
@@ -127,11 +126,6 @@ if test -n "$auto_cflags"; then
   fi
 fi
 
-dnl
-dnl Handle AIX
-dnl
-AC_AIX
-
 dnl
 dnl Configure our included libtool and make sure it's regenerated when needed
 dnl
@@ -148,11 +142,6 @@ case "$host_os" in
 esac
 AC_SUBST(exeext)
 
-dnl
-dnl Check if we can handle prototypes.
-dnl
-AM_C_PROTOTYPES
-
 dnl
 dnl Checks for basic compiler characteristics.
 dnl
@@ -160,17 +149,27 @@ AC_C_CONST
 AC_C_INLINE
 AC_C_VOLATILE
 AC_C_BIGENDIAN
+AC_C_PROTOTYPES
+
+if test x"$am_cv_prog_cc_stdc" != xno; then :
+  AC_SUBST(U, [])
+  AC_SUBST(ANSI2KNR, [])
+else
+  AC_SUBST(U, [_])
+  AC_SUBST(ANSI2KNR, [./ansi2knr])
+fi
 
 dnl
-dnl Checks for headers
+dnl Checks for header files that might be missing.
 dnl
 
-dnl Check for these even though we assume their presence.  This is
-dnl because Autoconf built-in macros expect their HAVE_* constants to
-dnl be available.
+dnl Check for basic headers, even those we assume the presence of.
+dnl This is because Autoconf default includes check for STDC_HEADERS,
+dnl HAVE_SYS_TYPES_H, etc. before including them.
+AC_HEADER_STDC
 AC_CHECK_HEADERS(sys/types.h sys/stat.h)
-
-AC_CHECK_HEADERS(string.h strings.h stdarg.h unistd.h sys/time.h)
+dnl Now check for the others.
+AC_CHECK_HEADERS(string.h strings.h stdarg.h limits.h unistd.h sys/time.h)
 AC_CHECK_HEADERS(termios.h sys/ioctl.h sys/select.h utime.h sys/utime.h)
 AC_CHECK_HEADERS(stdint.h inttypes.h signal.h setjmp.h pwd.h)
 AC_HEADER_TIME
@@ -183,6 +182,14 @@ AC_CHECK_SIZEOF(int)
 AC_CHECK_SIZEOF(long)
 AC_CHECK_SIZEOF(long long)
 
+dnl
+dnl Check for large file support.  This check needs to come fairly
+dnl early because it could (in principle) affect whether functions and
+dnl headers are available, whether they work, etc.
+dnl
+AC_SYS_LARGEFILE
+AC_CHECK_SIZEOF(off_t)
+
 dnl
 dnl Checks for non-universal or system-specific types.
 dnl
@@ -206,9 +213,11 @@ dnl Checks for library functions.
 dnl
 AC_FUNC_ALLOCA
 AC_FUNC_MMAP
+AC_FUNC_FSEEKO
 AC_CHECK_FUNCS(strdup strstr strcasecmp strncasecmp strpbrk memmove)
 AC_CHECK_FUNCS(gettimeofday mktime strptime strerror snprintf vsnprintf)
-AC_CHECK_FUNCS(usleep select sigblock sigsetjmp signal symlink access isatty)
+AC_CHECK_FUNCS(usleep select ftello sigblock sigsetjmp signal)
+AC_CHECK_FUNCS(symlink access isatty)
 
 dnl
 dnl Call Wget's local macros defined in aclocal.
@@ -231,13 +240,6 @@ dnl
 dnl Checks for libraries.
 dnl
 
-dnl #### This appears to be deficient with later versions of SOCKS.
-if test "x${with_socks}" = xyes
-then
-  AC_CHECK_LIB(resolv, main)
-  AC_CHECK_LIB(socks, Rconnect)
-fi
-
 dnl $with_ssl can be one of:
 dnl  - empty string or "auto", meaning autodetect SSL and use it if found.
 dnl  - "yes", meaning link with SSL or bail out.
@@ -321,13 +323,15 @@ if test x"$with_ssl" != x"no"; then
     CPPFLAGS="$SSL_INCLUDES $wget_save_CPPFLAGS"
 
     AC_MSG_CHECKING([for includes])
-
-    AC_TRY_CPP([#include <openssl/ssl.h>
+    AC_COMPILE_IFELSE([
+#include <openssl/ssl.h>
 #include <openssl/rsa.h>
-],
-      AC_MSG_RESULT(found); ssl_found_includes=yes,
+    ], [
+      AC_MSG_RESULT(found)
+      ssl_found_includes=yes
+    ], [
       AC_MSG_RESULT([not found])
-    )
+    ])
 
     if test x"$ssl_found_includes" = xno; then
       continue
@@ -429,7 +433,7 @@ then
     AC_CHECK_LIB(md5, md5_calc, [
       dnl Some installations have bogus <md5.h> in the compiler's
       dnl include path, making the system md5 library useless.
-      AC_MSG_CHECKING([whether md5.h can be included])
+      AC_MSG_CHECKING([for working md5.h])
       AC_COMPILE_IFELSE([#include <md5.h>
                         ], [
         AC_MSG_RESULT(yes)
@@ -490,33 +494,14 @@ AC_ARG_ENABLE(ipv6,
 )
 
 if test "X$ipv6" = "Xyes" || test "X$check_for_ipv6" = "Xyes"; then
-  AC_CHECK_FUNCS(getaddrinfo,[
-    GETADDRINFO_AI_ADDRCONFIG(
-      AC_DEFINE(
-        [HAVE_GETADDRINFO_AI_ADDRCONFIG], 1, 
-        [Define if the system headers support the AI_ADDRCONFIG flag.]
-      )
-    )
-    GETADDRINFO_AI_V4MAPPED(
-      AC_DEFINE(
-        [HAVE_GETADDRINFO_AI_V4MAPPED], 1, 
-        [Define if the system headers support the AI_V4MAPPED flag.]
-      )
-    )
-    GETADDRINFO_AI_ALL(
-      AC_DEFINE(
-        [HAVE_GETADDRINFO_AI_ALL], 1, 
-        [Define if the system headers support the AI_ALL flag.]
-      )
-    )
-  ],[
+  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
-  PROTO_INET6(,[
+  PROTO_INET6([], [
     AC_MSG_NOTICE([Disabling IPv6 support: your system does not support the PF_INET6 protocol family])
     ipv6=no
   ])
@@ -530,6 +515,7 @@ if test "X$ipv6" = "Xyes" || test "X$check_for_ipv6" = "Xyes"; then
     ipv6=no
   ])
   if test "X$ipv6" = "Xyes"; then
+    WGET_STRUCT_SOCKADDR_STORAGE
     MEMBER_SIN6_SCOPE_ID
   fi
 fi
@@ -553,17 +539,14 @@ dnl internationalization macros
 WGET_WITH_NLS
 
 dnl
-dnl Find makeinfo.  If makeinfo is not found, look for Emacs.  If
-dnl Emacs cannot be found, look for XEmacs.
+dnl Find makeinfo.  We used to provide support for Emacs processing
+dnl Texinfo using `emacs -batch -eval ...' where makeinfo is
+dnl unavailable, but that broke with the addition of makeinfo-specific
+dnl command-line options, such as `-I'.  Now we depend on makeinfo to
+dnl build the Info documentation.
 dnl
 
-AC_CHECK_PROGS(MAKEINFO, makeinfo emacs xemacs)
-
-case "${MAKEINFO}" in
-   *makeinfo) MAKEINFO="${MAKEINFO} \$(srcdir)/wget.texi"  ;;
-   *emacs | *xemacs) MAKEINFO="${MAKEINFO} -batch -q -no-site-file -eval '(find-file \"\$(srcdir)/wget.texi\")' -l texinfmt -f texinfo-format-buffer -f save-buffer"  ;;
-   *) MAKEINFO="makeinfo \$(srcdir)/wget.texi"            ;;
-esac
+AC_CHECK_PROGS(MAKEINFO, makeinfo)
 
 dnl
 dnl Find perl and pod2man