![Gerald Combs](/assets/img/avatar_default.png)
Support can be enabled at configure time by using "--with-adns=DIR". If support is enabled, async queries happen whenever host name resolution is enabled. Do we need a separate preference for async queries? Currently, only IPv4 reverse queries are supported. I can add IPv4 forward lookup support, but I don't have any way to test IPv6 queries. svn path=/trunk/; revision=7640
296 lines
7.5 KiB
Text
296 lines
7.5 KiB
Text
# $Id: configure.in,v 1.43 2003/05/04 18:50:53 gerald Exp $
|
|
dnl
|
|
dnl Process this file with autoconf 2.13 or later to produce a
|
|
dnl configure script; 2.12 doesn't generate a "configure" script that
|
|
dnl defines SHELL, and "Makefile.in" has
|
|
dnl
|
|
dnl SHELL = @SHELL@
|
|
dnl
|
|
dnl which requires it to be defined - and there may be other problems
|
|
dnl with pre-2.13 "autoconf" as well.
|
|
dnl
|
|
AC_INIT(epan.c)
|
|
|
|
AC_PREREQ(2.13)
|
|
|
|
dnl Check for CPU / vendor / OS
|
|
AC_CANONICAL_HOST
|
|
AC_CANONICAL_TARGET
|
|
|
|
AM_INIT_AUTOMAKE(libethereal.a, 0.9.12)
|
|
AM_CONFIG_HEADER(config.h)
|
|
|
|
dnl Checks for programs.
|
|
AC_PROG_CC
|
|
AC_PROG_CPP
|
|
AC_PROG_YACC
|
|
AM_PROG_LEX
|
|
AC_PROG_LIBTOOL
|
|
AC_PATH_PROG(LEX, flex)
|
|
|
|
AC_SUBST(FLEX_PATH)
|
|
|
|
#
|
|
# If we're running gcc, add '-Wall -W' to CFLAGS, and add
|
|
# '-D_U_="__attribute__((unused))"' as well, so we can use _U_ to
|
|
# flag unused function arguments and not get warnings about them.
|
|
# If "--with-extra-gcc-checks" was specified, add "-Wcast-qual
|
|
# -Wcast-align" as well. (Add more checks here in the future?)
|
|
#
|
|
# Otherwise, add '-D_U_=""', so that _U_ used to flag an unused function
|
|
# argument will compile with non-GCC compilers.
|
|
#
|
|
AC_ARG_WITH(extra-gcc-checks,
|
|
[ --with-extra-gcc-checks Do additional -W checks in GCC. [default=no]],
|
|
[
|
|
if test $withval != no
|
|
then
|
|
ethereal_extra_gcc_flags=" -Wcast-qual -Wcast-align"
|
|
fi
|
|
],)
|
|
AC_MSG_CHECKING(to see if we can add '-Wall -W$ethereal_extra_gcc_flags' to CFLAGS)
|
|
if test x$GCC != x ; then
|
|
CFLAGS="-D_U_=\"__attribute__((unused))\" -Wall -W$ethereal_extra_gcc_flags $CFLAGS"
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
CFLAGS="-D_U_=\"\" $CFLAGS"
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
|
|
#
|
|
# Add any platform-specific compiler flags needed.
|
|
#
|
|
AC_MSG_CHECKING(for platform-specific compiler flags)
|
|
if test "x$GCC" = x
|
|
then
|
|
#
|
|
# Not GCC - assume it's the vendor's compiler.
|
|
#
|
|
case "$host_os" in
|
|
hpux*)
|
|
#
|
|
# HP's ANSI C compiler; flags suggested by Jost Martin.
|
|
# "-Ae" for ANSI C plus extensions such as "long long".
|
|
# "+O2", for optimization. XXX - works with "-g"?
|
|
#
|
|
CFLAGS="-Ae +O2 $CFLAGS"
|
|
AC_MSG_RESULT(HP ANSI C compiler - added -Ae +O2)
|
|
;;
|
|
darwin*)
|
|
#
|
|
# It may be called "cc", but it's really a GCC derivative
|
|
# with a problematic special precompiler and precompiled
|
|
# headers; turn off the special precompiler, as some
|
|
# apparently-legal code won't compile with its precompiled
|
|
# headers.
|
|
#
|
|
CFLAGS="-no-cpp-precomp $CFLAGS"
|
|
AC_MSG_RESULT(Apple GCC - added -no-cpp-precomp)
|
|
;;
|
|
*)
|
|
AC_MSG_RESULT(none needed)
|
|
;;
|
|
esac
|
|
else
|
|
case "$host_os" in
|
|
darwin*)
|
|
#
|
|
# See comments above about Apple's lovely C compiler.
|
|
#
|
|
CFLAGS="-no-cpp-precomp $CFLAGS"
|
|
AC_MSG_RESULT(Apple GCC - added -no-cpp-precomp)
|
|
;;
|
|
*)
|
|
AC_MSG_RESULT(none needed)
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
# Create DATAFILE_DIR #define for config.h
|
|
datafiledir=$datadir/ethereal
|
|
datafiledir=`(
|
|
test "x$prefix" = xNONE && prefix=$ac_default_prefix
|
|
test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
|
|
eval echo "$datafiledir"
|
|
)`
|
|
AC_DEFINE_UNQUOTED(DATAFILE_DIR,"$datafiledir", [Directory for data])
|
|
|
|
AC_ARG_ENABLE(gtk2,
|
|
[ --enable-gtk2 build Glib2/Gtk2+-based (t)ethereal. [default=no]],enable_gtk2=$enableval,enable_gtk2=no)
|
|
|
|
if test "x$enable_gtk2" = "xyes" ; then
|
|
AM_PATH_GLIB_2_0(2.0.0, CFLAGS="$CFLAGS $GLIB_CFLAGS" LIBS="$LIBS $GLIB_LIBS", , gmodule)
|
|
else
|
|
AM_PATH_GLIB(1.2.0, CFLAGS="$CFLAGS $GLIB_CFLAGS" LIBS="$LIBS $GLIB_LIBS", , gmodule)
|
|
fi
|
|
|
|
dnl Checks for header files
|
|
AC_HEADER_STDC
|
|
AC_CHECK_HEADERS(stdarg.h direct.h dirent.h fcntl.h netdb.h unistd.h)
|
|
AC_CHECK_HEADERS(sys/param.h sys/socket.h sys/stat.h sys/time.h sys/types.h)
|
|
AC_CHECK_HEADERS(netinet/in.h)
|
|
AC_CHECK_HEADERS(arpa/inet.h arpa/nameser.h)
|
|
|
|
dnl ipv6 check
|
|
AC_ARG_ENABLE(ipv6,
|
|
[ --enable-ipv6 use ipv6 name resolution, if available. [default=yes]],enable_ipv6=$enableval,enable_ipv6=yes)
|
|
|
|
AC_MSG_CHECKING(whether to enable ipv6 name resolution if available)
|
|
if test "x$enable_ipv6" = "xno" ; then
|
|
AC_MSG_RESULT(no)
|
|
else
|
|
AC_MSG_RESULT(yes)
|
|
AC_ETHEREAL_IPV6_STACK
|
|
fi
|
|
|
|
AC_CHECK_FUNC(inet_aton, INET_ATON_O="",
|
|
INET_ATON_O="inet_aton.o")
|
|
if test "$ac_cv_func_inet_aton" = no ; then
|
|
INET_ATON_C="inet_aton.c"
|
|
INET_ATON_O="inet_aton.o"
|
|
AC_DEFINE(NEED_INET_ATON_H, 1, [Define if inet/aton.h needs to be included])
|
|
fi
|
|
AC_SUBST(INET_ATON_C)
|
|
AC_SUBST(INET_ATON_O)
|
|
|
|
AC_SEARCH_LIBS(inet_pton, [socket nsl], [
|
|
dnl check for pre-BIND82 inet_pton() bug.
|
|
AC_MSG_CHECKING(for broken inet_pton)
|
|
AC_TRY_RUN([#include <sys/types.h>
|
|
#include <sys/socket.h>
|
|
#include <netinet/in.h>
|
|
#include <arpa/inet.h>
|
|
int main()
|
|
{
|
|
#ifdef AF_INET6
|
|
char buf[16];
|
|
/* this should return 0 (error) */
|
|
return inet_pton(AF_INET6, "0:1:2:3:4:5:6:7:", buf);
|
|
#else
|
|
return 1;
|
|
#endif
|
|
}], [AC_MSG_RESULT(ok);
|
|
have_inet_pton=yes], [AC_MSG_RESULT(broken);
|
|
have_inet_pton=no], [AC_MSG_RESULT(cross compiling, assume it is broken);
|
|
have_inet_pton=no])],
|
|
have_inet_pton=no)
|
|
if test "$have_inet_pton" = no; then
|
|
INET_PTON_C="inet_pton.c"
|
|
INET_PTON_O="inet_pton.o"
|
|
else
|
|
INET_PTON_C=""
|
|
INET_PTON_O=""
|
|
fi
|
|
AC_SUBST(INET_PTON_C)
|
|
AC_SUBST(INET_PTON_O)
|
|
|
|
AC_SEARCH_LIBS(inet_ntop, [socket nsl], [
|
|
AC_MSG_CHECKING([for inet_ntop prototype])
|
|
AC_TRY_COMPILE([#include <stdio.h>
|
|
#include <sys/types.h>
|
|
#include <sys/socket.h>
|
|
#include <netinet/in.h>
|
|
#include <arpa/inet.h>
|
|
|
|
extern const char *inet_ntop(int, const void *, char *, size_t);],, [
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_INET_NTOP_PROTO, 1,
|
|
[Define if inet_ntop() prototype exists])], [
|
|
AC_TRY_COMPILE([#include <stdio.h>
|
|
#include <sys/types.h>
|
|
#include <sys/socket.h>
|
|
#include <netinet/in.h>
|
|
#include <arpa/inet.h>
|
|
|
|
extern const char *inet_ntop(int, const void *, char *, socklen_t);],, [
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_INET_NTOP_PROTO, 1,
|
|
[Define if inet_ntop() prototype exists])], [
|
|
AC_MSG_RESULT(no)])])
|
|
INET_NTOP_O=""], [
|
|
INET_NTOP_C="inet_ntop.c"
|
|
INET_NTOP_O="inet_ntop.o"
|
|
AC_DEFINE(NEED_INET_V6DEFS_H, 1,
|
|
[Define if inet/v6defs.h needs to be included])])
|
|
AC_SUBST(INET_NTOP_C)
|
|
AC_SUBST(INET_NTOP_O)
|
|
|
|
AC_CHECK_FUNC(strptime, ,
|
|
[AC_DEFINE(NEED_STRPTIME_H, 1, [Define if strptime.h needs to be included])
|
|
])
|
|
|
|
dnl ADNS Check
|
|
AC_MSG_CHECKING(whether to use the GNU ADNS library if available)
|
|
if test "x$enable_adns" = "xno" ; then
|
|
AC_MSG_RESULT(no)
|
|
else
|
|
AC_MSG_RESULT(yes)
|
|
AC_ETHEREAL_ADNS_CHECK
|
|
fi
|
|
|
|
#
|
|
# Check whether GLib modules are supported, to determine whether we
|
|
# can support plugins.
|
|
#
|
|
AC_MSG_CHECKING(whether GLib supports loadable modules)
|
|
#ac_save_CFLAGS="$CFLAGS"
|
|
#ac_save_LIBS="$LIBS"
|
|
#CFLAGS="$CFLAGS $GLIB_CFLAGS"
|
|
#LIBS="$GLIB_LIBS $LIBS"
|
|
AC_TRY_RUN([
|
|
#include <glib.h>
|
|
#include <gmodule.h>
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
|
|
int
|
|
main ()
|
|
{
|
|
if (g_module_supported())
|
|
return 0; /* success */
|
|
else
|
|
return 1; /* failure */
|
|
}
|
|
], ac_cv_glib_supports_modules=yes, ac_cv_glib_supports_modules=no,
|
|
[echo $ac_n "cross compiling; assumed OK... $ac_c"])
|
|
#CFLAGS="$ac_save_CFLAGS"
|
|
#LIBS="$ac_save_LIBS"
|
|
if test "$ac_cv_glib_supports_modules" = yes ; then
|
|
AC_MSG_RESULT(yes)
|
|
have_plugins=yes
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
have_plugins=no
|
|
fi
|
|
|
|
dnl
|
|
dnl check whether plugins should be enabled; we don't set plugindir,
|
|
dnl as that's set by the top-level configure script
|
|
dnl
|
|
AC_ARG_WITH(plugins,
|
|
[ --with-plugins=DIR support plugins (installed in DIR, if supplied)],
|
|
[
|
|
case "$withval" in
|
|
"" | y | ye | yes )
|
|
;;
|
|
n | no)
|
|
have_plugins=no
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
]
|
|
)
|
|
|
|
AM_CONDITIONAL(HAVE_PLUGINS, test x$have_plugins = xyes)
|
|
if test x$have_plugins = xyes
|
|
then
|
|
AC_DEFINE(HAVE_PLUGINS, 1, [Define if plugins are enabled])
|
|
fi
|
|
|
|
AC_OUTPUT(
|
|
Makefile
|
|
dfilter/Makefile
|
|
ftypes/Makefile
|
|
)
|