dnl Template file for GNU Autoconf
dnl Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.

dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 2 of the License, or
dnl (at your option) any later version.

dnl This program is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
dnl GNU General Public License for more details.

dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


dnl
dnl Process this file with autoconf to produce a configure script.
dnl

AC_INIT(src/version.c)
AC_PREREQ(2.10)
AC_CONFIG_HEADER(config.h)

dnl
dnl What version of Wget are we building?
dnl
VERSION=`sed -e 's/^.*"\(.*\)";$/\1/' ${srcdir}/src/version.c`
echo "configuring for $VERSION"
AC_SUBST(VERSION)

dnl
dnl Get cannonical host
dnl
AC_CANONICAL_HOST
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)])

dnl
dnl Whether make sets $(MAKE)...
dnl
AC_PROG_MAKE_SET

dnl
dnl Find a good install
dnl
AC_PROG_INSTALL

dnl
dnl Find the compiler
dnl

dnl We want these before the checks, so the checks can modify their values.
test -z "$CFLAGS"  && CFLAGS= auto_cflags=1
test -z "$CC" && cc_specified=yes

AC_PROG_CC

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
if test -n "$auto_cflags"; then
  if test -n "$GCC"; then
    CFLAGS="$CFLAGS -O2 -Wall -Wno-switch -Wno-implicit"
  else
    case "$host_os" in
      *hpux*)  CFLAGS="$CFLAGS +O3"                      ;;
      *ultrix* | *osf*) CFLAGS="$CFLAGS -O -Olimit 2000" ;;
      *)       CFLAGS="$CFLAGS -O" ;;
    esac
  fi
fi

dnl
dnl Find makeinfo.  If makeinfo is not found, look for Emacs.  If
dnl Emacs cannot be found, look for XEmacs.
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

dnl
dnl Handle AIX
dnl
AC_AIX

dnl
dnl Check if we can handle prototypes.
dnl
AM_C_PROTOTYPES

dnl
dnl Checks for typedefs, structures, and compiler characteristics.
dnl
AC_C_CONST
AC_TYPE_SIZE_T

dnl
dnl Checks for headers
dnl
AC_CHECK_HEADERS(string.h unistd.h sys/time.h utime.h sys/utime.h sys/select.h)
AC_CHECK_HEADERS(sys/utsname.h sys/systeminfo.h pwd.h signal.h)
AC_HEADER_TIME

dnl
dnl Return type of signal-handlers
dnl
AC_TYPE_SIGNAL

dnl
dnl Check for struct utimbuf
AM_STRUCT_UTIMBUF

dnl
dnl Checks for library functions.
dnl
AC_CHECK_FUNCS(strdup strstr strcasecmp strncasecmp)
AC_CHECK_FUNCS(gettimeofday mktime strptime)
AC_CHECK_FUNCS(strerror select signal symlink)
AC_CHECK_FUNCS(sysinfo gethostname getdomainname)
if test x"$ac_cv_func_getdomainname" = xno; then
  AC_CHECK_LIB(nsl, getdomainname)
fi

dnl
dnl Checks for libraries.
dnl

AC_CHECK_LIB(socket, socket)

if test "x${with_socks}" = xyes
then
  AC_CHECK_LIB(resolv, main)
  AC_CHECK_LIB(socks, Rconnect)
fi

dnl
dnl Create output
dnl
AC_OUTPUT(Makefile src/Makefile doc/Makefile util/Makefile,
echo timestamp > stamp-h)
