minor fixes for --enable-ares configure option
This commit is contained in:
parent
9bc897f380
commit
22ed0f5059
82
configure.ac
82
configure.ac
@ -42,6 +42,7 @@ CURL_CHECK_OPTION_DEBUG
|
|||||||
CURL_CHECK_OPTION_OPTIMIZE
|
CURL_CHECK_OPTION_OPTIMIZE
|
||||||
CURL_CHECK_OPTION_WARNINGS
|
CURL_CHECK_OPTION_WARNINGS
|
||||||
CURL_CHECK_OPTION_CURLDEBUG
|
CURL_CHECK_OPTION_CURLDEBUG
|
||||||
|
CURL_CHECK_OPTION_ARES
|
||||||
|
|
||||||
CURL_CHECK_PATH_SEPARATOR_REQUIRED
|
CURL_CHECK_PATH_SEPARATOR_REQUIRED
|
||||||
|
|
||||||
@ -2274,81 +2275,8 @@ fi
|
|||||||
dnl set variable for use in automakefile(s)
|
dnl set variable for use in automakefile(s)
|
||||||
AM_CONDITIONAL(USE_MANUAL, test x"$USE_MANUAL" = x1)
|
AM_CONDITIONAL(USE_MANUAL, test x"$USE_MANUAL" = x1)
|
||||||
|
|
||||||
aresembedded="unknown"
|
CURL_CHECK_LIB_ARES
|
||||||
configure_rundir=`pwd`
|
AM_CONDITIONAL(USE_EMBEDDED_ARES, test x$embedded_ares = xyes)
|
||||||
embedded_ares_builddir="$configure_rundir/ares"
|
|
||||||
AC_MSG_CHECKING([whether to enable c-ares])
|
|
||||||
AC_ARG_ENABLE(ares,
|
|
||||||
AC_HELP_STRING([--enable-ares=PATH],[Enable c-ares for name lookups])
|
|
||||||
AC_HELP_STRING([--disable-ares],[Disable c-ares for name lookups]),
|
|
||||||
[ case "$enableval" in
|
|
||||||
no)
|
|
||||||
AC_MSG_RESULT(no)
|
|
||||||
;;
|
|
||||||
*) AC_MSG_RESULT(yes)
|
|
||||||
|
|
||||||
if test "x$IPV6_ENABLED" = "x1"; then
|
|
||||||
AC_MSG_NOTICE([c-ares may not work properly with ipv6])
|
|
||||||
fi
|
|
||||||
|
|
||||||
AC_DEFINE(USE_ARES, 1, [Define if you want to enable c-ares support])
|
|
||||||
dnl substitute HAVE_ARES for curl-config and similar
|
|
||||||
HAVE_ARES="1"
|
|
||||||
AC_SUBST(HAVE_ARES)
|
|
||||||
curl_ares_msg="enabled"
|
|
||||||
|
|
||||||
LIBS="-lcares $LIBS"
|
|
||||||
|
|
||||||
dnl For backwards compatibility default to includes/lib in srcdir/ares
|
|
||||||
dnl If a value is specified it is assumed that the libs are in $val/lib
|
|
||||||
dnl and the includes are in $val/include. This is the default setup for
|
|
||||||
dnl ares so it should not be a problem.
|
|
||||||
if test "x$enableval" = "xyes" ; then
|
|
||||||
if test -d "$srcdir/ares"; then
|
|
||||||
aresembedded="yes"
|
|
||||||
AC_CONFIG_SUBDIRS(ares)
|
|
||||||
dnl Since c-ares has installable configured header files, path
|
|
||||||
dnl inclusion is fully done in makefiles for in-tree builds.
|
|
||||||
LDFLAGS="$LDFLAGS -L$embedded_ares_builddir"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
CPPFLAGS="$CPPFLAGS -I$enableval/include"
|
|
||||||
LDFLAGS="$LDFLAGS -L$enableval/lib"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$aresembedded"; then
|
|
||||||
dnl verify that a sufficient c-ares is here if we have pointed one
|
|
||||||
dnl out and don't use the "embedded" ares dir (in which case we don't
|
|
||||||
dnl check it because it might not have been built yet)
|
|
||||||
AC_MSG_CHECKING([that c-ares is good and recent enough])
|
|
||||||
AC_LINK_IFELSE([
|
|
||||||
AC_LANG_PROGRAM([[
|
|
||||||
#include <ares.h>
|
|
||||||
/* set of dummy functions in case c-ares was built with debug */
|
|
||||||
void curl_dofree() { }
|
|
||||||
void curl_sclose() { }
|
|
||||||
void curl_domalloc() { }
|
|
||||||
void curl_docalloc() { }
|
|
||||||
void curl_socket() { }
|
|
||||||
]],[[
|
|
||||||
ares_channel channel;
|
|
||||||
ares_cancel(channel); /* added in 1.2.0 */
|
|
||||||
ares_process_fd(channel, 0, 0); /* added in 1.4.0 */
|
|
||||||
]])
|
|
||||||
],[
|
|
||||||
AC_MSG_RESULT([yes])
|
|
||||||
],[
|
|
||||||
AC_MSG_RESULT([no])
|
|
||||||
AC_MSG_ERROR([c-ares library defective or too old])
|
|
||||||
])
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac ],
|
|
||||||
AC_MSG_RESULT(no)
|
|
||||||
)
|
|
||||||
|
|
||||||
dnl set variable for use in automakefile(s)
|
|
||||||
AM_CONDITIONAL(USE_EMBEDDED_ARES, test x$aresembedded = xyes)
|
|
||||||
|
|
||||||
dnl ************************************************************
|
dnl ************************************************************
|
||||||
dnl disable verbose text strings
|
dnl disable verbose text strings
|
||||||
@ -2540,7 +2468,7 @@ fi
|
|||||||
if test "x$HAVE_LIBZ" = "x1"; then
|
if test "x$HAVE_LIBZ" = "x1"; then
|
||||||
SUPPORT_FEATURES="$SUPPORT_FEATURES libz"
|
SUPPORT_FEATURES="$SUPPORT_FEATURES libz"
|
||||||
fi
|
fi
|
||||||
if test "x$HAVE_ARES" = "x1"; then
|
if test "x$USE_ARES" = "x1"; then
|
||||||
SUPPORT_FEATURES="$SUPPORT_FEATURES AsynchDNS"
|
SUPPORT_FEATURES="$SUPPORT_FEATURES AsynchDNS"
|
||||||
fi
|
fi
|
||||||
if test "x$IDN_ENABLED" = "x1"; then
|
if test "x$IDN_ENABLED" = "x1"; then
|
||||||
@ -2635,7 +2563,7 @@ squeeze SUPPORT_FEATURES
|
|||||||
squeeze SUPPORT_PROTOCOLS
|
squeeze SUPPORT_PROTOCOLS
|
||||||
|
|
||||||
if test "x$want_curldebug_assumed" = "xyes" &&
|
if test "x$want_curldebug_assumed" = "xyes" &&
|
||||||
test "x$want_curldebug" = "xyes" && test "x$HAVE_ARES" = "x1"; then
|
test "x$want_curldebug" = "xyes" && test "x$USE_ARES" = "x1"; then
|
||||||
ac_configure_args="$ac_configure_args --enable-curldebug"
|
ac_configure_args="$ac_configure_args --enable-curldebug"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
# | (__| |_| | _ <| |___
|
# | (__| |_| | _ <| |___
|
||||||
# \___|\___/|_| \_\_____|
|
# \___|\___/|_| \_\_____|
|
||||||
#
|
#
|
||||||
# Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel@haxx.se>, et al.
|
# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
#
|
#
|
||||||
# This software is licensed as described in the file COPYING, which
|
# This software is licensed as described in the file COPYING, which
|
||||||
# you should have received as part of this distribution. The terms
|
# you should have received as part of this distribution. The terms
|
||||||
@ -22,7 +22,43 @@
|
|||||||
#***************************************************************************
|
#***************************************************************************
|
||||||
|
|
||||||
# File version for 'aclocal' use. Keep it a single number.
|
# File version for 'aclocal' use. Keep it a single number.
|
||||||
# serial 6
|
# serial 7
|
||||||
|
|
||||||
|
|
||||||
|
dnl CURL_CHECK_OPTION_ARES
|
||||||
|
dnl -------------------------------------------------
|
||||||
|
dnl Verify if configure has been invoked with option
|
||||||
|
dnl --enable-ares or --disable-ares, and
|
||||||
|
dnl set shell variable want_ares as appropriate.
|
||||||
|
|
||||||
|
AC_DEFUN([CURL_CHECK_OPTION_ARES], [
|
||||||
|
dnl AC_BEFORE([$0],[CURL_CHECK_OPTION_THREADS])dnl
|
||||||
|
AC_BEFORE([$0],[CURL_CHECK_LIB_ARES])dnl
|
||||||
|
AC_MSG_CHECKING([whether to enable c-ares for DNS lookups])
|
||||||
|
OPT_ARES="default"
|
||||||
|
AC_ARG_ENABLE(ares,
|
||||||
|
AC_HELP_STRING([--enable-ares@<:@=PATH@:>@],[Enable c-ares for DNS lookups])
|
||||||
|
AC_HELP_STRING([--disable-ares],[Disable c-ares for DNS lookups]),
|
||||||
|
OPT_ARES=$enableval)
|
||||||
|
case "$OPT_ARES" in
|
||||||
|
no)
|
||||||
|
dnl --disable-ares option used
|
||||||
|
want_ares="no"
|
||||||
|
AC_MSG_RESULT([no])
|
||||||
|
;;
|
||||||
|
default)
|
||||||
|
dnl configure option not specified
|
||||||
|
want_ares="assume_yes"
|
||||||
|
AC_MSG_RESULT([(assumed) yes])
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
dnl --enable-ares option used
|
||||||
|
want_ares="yes"
|
||||||
|
want_ares_path="$enableval"
|
||||||
|
AC_MSG_RESULT([yes])
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
])
|
||||||
|
|
||||||
|
|
||||||
dnl CURL_CHECK_OPTION_CURLDEBUG
|
dnl CURL_CHECK_OPTION_CURLDEBUG
|
||||||
@ -53,7 +89,7 @@ AC_HELP_STRING([--disable-curldebug],[Disable curl debug memory tracking]),
|
|||||||
dnl possible, and for debug-disabled builds this will be handled
|
dnl possible, and for debug-disabled builds this will be handled
|
||||||
dnl as a request to disable curldebug.
|
dnl as a request to disable curldebug.
|
||||||
if test "$want_debug" = "yes"; then
|
if test "$want_debug" = "yes"; then
|
||||||
AC_MSG_RESULT([not specified (assuming yes)])
|
AC_MSG_RESULT([(assumed) yes])
|
||||||
else
|
else
|
||||||
AC_MSG_RESULT([no])
|
AC_MSG_RESULT([no])
|
||||||
fi
|
fi
|
||||||
@ -180,10 +216,10 @@ AC_HELP_STRING([--disable-optimize],[Disable compiler optimizations]),
|
|||||||
dnl will always take precedence over any initial assumption.
|
dnl will always take precedence over any initial assumption.
|
||||||
if test "$want_debug" = "yes"; then
|
if test "$want_debug" = "yes"; then
|
||||||
want_optimize="assume_no"
|
want_optimize="assume_no"
|
||||||
AC_MSG_RESULT([not specified (assuming no)])
|
AC_MSG_RESULT([(assumed) no])
|
||||||
else
|
else
|
||||||
want_optimize="assume_yes"
|
want_optimize="assume_yes"
|
||||||
AC_MSG_RESULT([not specified (assuming yes)])
|
AC_MSG_RESULT([(assumed) yes])
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
@ -198,6 +234,54 @@ AC_HELP_STRING([--disable-optimize],[Disable compiler optimizations]),
|
|||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
dnl CURL_CHECK_OPTION_THREADS
|
||||||
|
dnl -------------------------------------------------
|
||||||
|
dnl Verify if configure has been invoked with option
|
||||||
|
dnl --enable-threads or --disable-threads, and
|
||||||
|
dnl set shell variable want_threads as appropriate.
|
||||||
|
|
||||||
|
dnl AC_DEFUN([CURL_CHECK_OPTION_THREADS], [
|
||||||
|
dnl AC_BEFORE([$0],[CURL_CHECK_LIB_THREADS])dnl
|
||||||
|
dnl AC_MSG_CHECKING([whether to enable threads for DNS lookups])
|
||||||
|
dnl OPT_THREADS="default"
|
||||||
|
dnl AC_ARG_ENABLE(threads,
|
||||||
|
dnl AC_HELP_STRING([--enable-threads@<:@=PATH@:>@],[Enable threads for DNS lookups])
|
||||||
|
dnl AC_HELP_STRING([--disable-threads],[Disable threads for DNS lookups]),
|
||||||
|
dnl OPT_THREADS=$enableval)
|
||||||
|
dnl case "$OPT_THREADS" in
|
||||||
|
dnl no)
|
||||||
|
dnl dnl --disable-threads option used
|
||||||
|
dnl want_threads="no"
|
||||||
|
dnl AC_MSG_RESULT([no])
|
||||||
|
dnl ;;
|
||||||
|
dnl default)
|
||||||
|
dnl dnl configure option not specified
|
||||||
|
dnl want_threads="no"
|
||||||
|
dnl AC_MSG_RESULT([(assumed) no])
|
||||||
|
dnl ;;
|
||||||
|
dnl *)
|
||||||
|
dnl dnl --enable-threads option used
|
||||||
|
dnl want_threads="yes"
|
||||||
|
dnl want_threads_path="$enableval"
|
||||||
|
dnl AC_MSG_RESULT([yes])
|
||||||
|
dnl ;;
|
||||||
|
dnl esac
|
||||||
|
dnl #
|
||||||
|
dnl if test "$want_ares" = "assume_yes"; then
|
||||||
|
dnl if test "$want_threads" = "yes"; then
|
||||||
|
dnl AC_MSG_CHECKING([whether to ignore c-ares enabling assumed setting])
|
||||||
|
dnl AC_MSG_RESULT([yes])
|
||||||
|
dnl want_ares="no"
|
||||||
|
dnl else
|
||||||
|
dnl want_ares="yes"
|
||||||
|
dnl fi
|
||||||
|
dnl fi
|
||||||
|
dnl if test "$want_threads" = "yes" && test "$want_ares" = "yes"; then
|
||||||
|
dnl AC_MSG_ERROR([options --enable-ares and --enable-threads are mutually exclusive, at most one may be enabled.])
|
||||||
|
dnl fi
|
||||||
|
dnl ])
|
||||||
|
|
||||||
|
|
||||||
dnl CURL_CHECK_OPTION_WARNINGS
|
dnl CURL_CHECK_OPTION_WARNINGS
|
||||||
dnl -------------------------------------------------
|
dnl -------------------------------------------------
|
||||||
dnl Verify if configure has been invoked with option
|
dnl Verify if configure has been invoked with option
|
||||||
@ -270,3 +354,88 @@ AC_DEFUN([CURL_CHECK_NONBLOCKING_SOCKET], [
|
|||||||
fi
|
fi
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
dnl CURL_CHECK_LIB_ARES
|
||||||
|
dnl -------------------------------------------------
|
||||||
|
dnl When c-ares library support has been requested,
|
||||||
|
dnl performs necessary checks and adjustsments needed
|
||||||
|
dnl to enable support of this library.
|
||||||
|
|
||||||
|
AC_DEFUN([CURL_CHECK_LIB_ARES], [
|
||||||
|
#
|
||||||
|
if test "$want_ares" = "yes"; then
|
||||||
|
dnl c-ares library support has been requested
|
||||||
|
clean_CPPFLAGS="$CPPFLAGS"
|
||||||
|
clean_CFLAGS="$CFLAGS"
|
||||||
|
clean_LIBS="$LIBS"
|
||||||
|
embedded_ares="unknown"
|
||||||
|
configure_runpath=`pwd`
|
||||||
|
embedded_ares_builddir="$configure_runpath/ares"
|
||||||
|
if test -n "$want_ares_path" && test "$want_ares_path" != "yes"; then
|
||||||
|
dnl c-ares library path has been specified
|
||||||
|
ares_CPPFLAGS="-I$want_ares_path/include"
|
||||||
|
ares_LDFLAGS="-L$want_ares_path/lib"
|
||||||
|
ares_LIBS="-lcares"
|
||||||
|
else
|
||||||
|
dnl c-ares library path has not been given
|
||||||
|
if test -d "$srcdir/ares"; then
|
||||||
|
dnl c-ares sources embedded in curl tree
|
||||||
|
embedded_ares="yes"
|
||||||
|
AC_CONFIG_SUBDIRS(ares)
|
||||||
|
dnl c-ares has installable configured header files, path
|
||||||
|
dnl inclusion fully done in makefiles for in-tree builds.
|
||||||
|
ares_CPPFLAGS=""
|
||||||
|
ares_LDFLAGS="-L$embedded_ares_builddir"
|
||||||
|
ares_LIBS="-lcares"
|
||||||
|
else
|
||||||
|
dnl c-ares path not specified, use defaults
|
||||||
|
ares_CPPFLAGS=""
|
||||||
|
ares_LDFLAGS=""
|
||||||
|
ares_LIBS="-lcares"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
#
|
||||||
|
CPPFLAGS="$ares_CPPFLAGS $clean_CPPFLAGS"
|
||||||
|
LDFLAGS="$ares_LDFLAGS $clean_LDFLAGS"
|
||||||
|
LIBS="$ares_LIBS $clean_LIBS"
|
||||||
|
#
|
||||||
|
if test "$embedded_ares" != "yes"; then
|
||||||
|
dnl check if c-ares new enough when not using an embedded
|
||||||
|
dnl source tree one which normally has not been built yet.
|
||||||
|
AC_MSG_CHECKING([that c-ares is good and recent enough])
|
||||||
|
AC_LINK_IFELSE([
|
||||||
|
AC_LANG_PROGRAM([[
|
||||||
|
#include <ares.h>
|
||||||
|
/* set of dummy functions in case c-ares was built with debug */
|
||||||
|
void curl_dofree() { }
|
||||||
|
void curl_sclose() { }
|
||||||
|
void curl_domalloc() { }
|
||||||
|
void curl_docalloc() { }
|
||||||
|
void curl_socket() { }
|
||||||
|
]],[[
|
||||||
|
ares_channel channel;
|
||||||
|
ares_cancel(channel); /* added in 1.2.0 */
|
||||||
|
ares_process_fd(channel, 0, 0); /* added in 1.4.0 */
|
||||||
|
]])
|
||||||
|
],[
|
||||||
|
AC_MSG_RESULT([yes])
|
||||||
|
],[
|
||||||
|
AC_MSG_RESULT([no])
|
||||||
|
AC_MSG_ERROR([c-ares library defective or too old])
|
||||||
|
dnl restore initial settings
|
||||||
|
CPPFLAGS="$clean_CPPFLAGS"
|
||||||
|
CFLAGS="$clean_CFLAGS"
|
||||||
|
LIBS="$clean_LIBS"
|
||||||
|
# prevent usage
|
||||||
|
want_ares="no"
|
||||||
|
])
|
||||||
|
fi
|
||||||
|
if test "$want_ares" = "yes"; then
|
||||||
|
dnl finally c-ares will be used
|
||||||
|
AC_DEFINE(USE_ARES, 1, [Define to enable c-ares support])
|
||||||
|
AC_SUBST([USE_ARES], [1])
|
||||||
|
curl_ares_msg="enabled"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user