1 dnl Template file for GNU Autoconf
2 dnl Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
4 dnl This program is free software; you can redistribute it and/or modify
5 dnl it under the terms of the GNU General Public License as published by
6 dnl the Free Software Foundation; either version 2 of the License, or
7 dnl (at your option) any later version.
9 dnl This program is distributed in the hope that it will be useful,
10 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
11 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 dnl GNU General Public License for more details.
14 dnl You should have received a copy of the GNU General Public License
15 dnl along with this program; if not, write to the Free Software
16 dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 dnl Process this file with autoconf to produce a configure script.
22 AC_INIT(src/version.c)
24 AC_CONFIG_HEADER(src/config.h)
27 dnl What version of Wget are we building?
29 VERSION=`sed -e 's/^.*"\(.*\)";$/\1/' ${srcdir}/src/version.c`
30 echo "configuring for GNU Wget $VERSION"
36 dnl Get cannonical host
39 AC_DEFINE_UNQUOTED(OS_TYPE, "$host_os")
45 [ --with-socks use the socks library],
46 [AC_DEFINE(HAVE_SOCKS)])
49 [ --with-ssl[=SSL_ROOT] link with libssl [in SSL_ROOT/lib] for https: support])
52 [ --disable-opie disable support for opie or s/key FTP login],
53 USE_OPIE=$enableval, USE_OPIE=yes)
54 test x"${USE_OPIE}" = xyes && AC_DEFINE(USE_OPIE)
57 [ --disable-digest disable support for HTTP digest authorization],
58 USE_DIGEST=$enableval, USE_DIGEST=yes)
59 test x"${USE_DIGEST}" = xyes && AC_DEFINE(USE_DIGEST)
62 [ --disable-debug disable support for debugging output],
63 DEBUG=$enableval, DEBUG=yes)
64 test x"${DEBUG}" = xyes && AC_DEFINE(DEBUG)
66 case "${USE_OPIE}${USE_DIGEST}" in
70 if test x"$USE_OPIE" = xyes; then
77 dnl Whether make sets $(MAKE)...
82 dnl Find a good install
87 dnl Configure our included libtool and make sure it's regenerated when needed
90 AC_SUBST(LIBTOOL_DEPS)
96 dnl We want these before the checks, so the checks can modify their values.
97 test -z "$CFLAGS" && CFLAGS= auto_cflags=1
98 test -z "$CC" && cc_specified=yes
103 dnl if the user hasn't specified CFLAGS, then
104 dnl if compiler is gcc, then use -O2 and some warning flags
105 dnl else use os-specific flags or -O
107 if test -n "$auto_cflags"; then
108 if test -n "$GCC"; then
109 CFLAGS="$CFLAGS -O2 -Wall -Wno-implicit"
112 *hpux*) CFLAGS="$CFLAGS +O3" ;;
113 *ultrix* | *osf*) CFLAGS="$CFLAGS -O -Olimit 2000" ;;
114 *) CFLAGS="$CFLAGS -O" ;;
125 dnl In case of {cyg,gnu}win32. Should be a _target_ test.
126 dnl Might also be erelevant for DJGPP.
129 *win32) exeext='.exe';;
135 dnl Check if we can handle prototypes.
140 dnl Checks for typedefs, structures, and compiler characteristics.
146 dnl #### This generates a warning. What do I do to shut it up?
149 # Check size of long.
150 AC_CHECK_SIZEOF(long)
151 AC_CHECK_SIZEOF(long long)
154 dnl Checks for headers
156 AC_CHECK_HEADERS(string.h stdarg.h unistd.h sys/time.h utime.h sys/utime.h)
157 AC_CHECK_HEADERS(sys/select.h sys/utsname.h pwd.h signal.h)
161 dnl Return type of signal-handlers
166 dnl Check for struct utimbuf
170 dnl Checks for library functions.
174 AC_CHECK_FUNCS(strdup strstr strcasecmp strncasecmp)
175 AC_CHECK_FUNCS(gettimeofday mktime strptime)
176 AC_CHECK_FUNCS(strerror snprintf vsnprintf select signal symlink access isatty)
177 AC_CHECK_FUNCS(uname gethostname)
179 AC_CHECK_FUNCS(gethostbyname, [], [
180 AC_CHECK_LIB(nsl, gethostbyname)
184 dnl Checks for libraries.
187 AC_CHECK_LIB(socket, socket)
189 dnl #### This appears to be deficient with later versions of SOCKS.
190 if test "x${with_socks}" = xyes
192 AC_CHECK_LIB(resolv, main)
193 AC_CHECK_LIB(socks, Rconnect)
196 dnl If --with-ssl was specified, make sure we can link with the OpenSSL libs.
197 if test x"$with_ssl" != x -a x"$with_ssl" != x"no"; then
198 if test x"$with_ssl" = x"yes"; then
199 dnl OpenSSL's default install location:
200 with_ssl=/usr/local/ssl
203 SSL_INCLUDES=-I$with_ssl/include
204 AC_SUBST(SSL_INCLUDES)
206 LDFLAGS="-L$with_ssl/lib -R$with_ssl/lib $LDFLAGS"
210 dnl Unfortunately, as of this writing (OpenSSL 0.9.6), the libcrypto shared
211 dnl library doesn't record its dependency on libdl, so we need to check for it
212 dnl ourselves so we won't fail to link due to a lack of -ldl. Most OSes use
213 dnl dlopen(), but HP-UX uses shl_load().
214 AC_CHECK_LIB(dl,dlopen)
215 AC_CHECK_LIB(dl,shl_load)
217 dnl These checks need to be in this order, or you'll get a link failure if you
218 dnl use a static libcrypto.a and libssl.a rather than shared libraries.
219 AC_CHECK_LIB(crypto,RSA_new,,ssl_link_failure=yes)
220 AC_CHECK_LIB(ssl,SSL_new,,ssl_link_failure=yes)
222 if test x"$ssl_link_failure" = x"yes"; then
224 echo "WARNING: Failed to link with OpenSSL libraries in $with_ssl/lib."
225 echo " Wget will be built without support for https://... URLs."
229 SSL_OBJ='gen_sslfunc$o'
235 dnl Set of available languages.
237 ALL_LINGUAS=`(cd ${srcdir}/po && ls *.po | sed -e 's/\.po$//')`
239 dnl Original from autoconf, I think.
240 dnl ALL_LINGUAS="cs de hr it no pl pt_BR ru"
242 dnl internationalization macros
246 dnl Find makeinfo. If makeinfo is not found, look for Emacs. If
247 dnl Emacs cannot be found, look for XEmacs.
250 AC_CHECK_PROGS(MAKEINFO, makeinfo emacs xemacs)
252 case "${MAKEINFO}" in
253 *makeinfo) MAKEINFO="${MAKEINFO} \$(srcdir)/wget.texi" ;;
254 *emacs | *xemacs) MAKEINFO="${MAKEINFO} -batch -q -no-site-file -eval '(find-file \"\$(srcdir)/wget.texi\")' -l texinfmt -f texinfo-format-buffer -f save-buffer" ;;
255 *) MAKEINFO="makeinfo \$(srcdir)/wget.texi" ;;
259 dnl Find perl and pod2man
262 AC_PATH_PROGS(PERL, perl5 perl, no)
263 AC_PATH_PROG(POD2MAN, pod2man, no)
265 if test "x${POD2MAN}" = xno; then
266 COMMENT_IF_NO_POD2MAN="# "
268 COMMENT_IF_NO_POD2MAN=
270 AC_SUBST(COMMENT_IF_NO_POD2MAN)
275 AC_OUTPUT([Makefile src/Makefile doc/Makefile util/Makefile po/Makefile.in
278 test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h])