# $Id: configure.in,v 1.60 1999/11/29 04:31:05 guy Exp $ dnl Process this file with autoconf to produce a configure script. AC_INIT(etypes.h) AM_INIT_AUTOMAKE(ethereal, 0.7.8) dnl Check for CPU / vendor / OS AC_CANONICAL_HOST dnl Checks for programs. AC_PROG_CC AC_PROG_CPP AC_PROG_RANLIB AC_PROG_YACC AM_PROG_LEX AC_PATH_PROG(PERL_PATH, perl) AC_PATH_PROG(LEX, flex) AC_SUBST(PERL_PATH) AC_SUBST(FLEX_PATH) # If we're running gcc, add '-Wall' to CFLAGS. AC_MSG_CHECKING(to see if we can add '-Wall' to CFLAGS) if test x$GCC != x ; then CFLAGS="-Wall $CFLAGS" AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) fi # # Arrange that we search for header files in the source directory # and in its "wiretap" subdirectory, as well as in "/usr/local/include", # as various packages we use ("libpcap", "zlib", an SNMP library) # may have been installed under "/usr/local/include". # CFLAGS="$CFLAGS -I\$(top_srcdir) -I\$(top_srcdir)/wiretap -I/usr/local/include" CPPFLAGS="$CPPFLAGS -I\$(top_srcdir) -I\$(top_srcdir)/wiretap -I/usr/local/include" # # Arrange that we search for libraries in "/usr/local/lib", and set # a "-R" flag as appropriate. # # XXX - IRIX, and other OSes, may require some flag equivalent to # "-R" here. # LIBS="$LIBS -L/usr/local/lib" case "$host_os" in solaris*) LIBS="$LIBS -R/usr/local/lib" ;; esac # Create DATAFILE_DIR #define for config.h DATAFILE_DIR=$sysconfdir DATAFILE_DIR=`( test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=${prefix} eval echo "$DATAFILE_DIR" )` AC_DEFINE_UNQUOTED(DATAFILE_DIR,"$DATAFILE_DIR") AC_SUBST(DATAFILE_DIR) # If we're running Solaris, and LD_LIBRARY_PATH is defined, add it as a # link directory. case "$host_os" in solaris*) AC_MSG_CHECKING(for LD_LIBRARY_PATH, since you appear to be running Solaris) if test x$LD_LIBRARY_PATH != x ; then LIBS="$LIBS -R$LD_LIBRARY_PATH" AC_MSG_RESULT(yes -- added LD_LIBRARY_PATH to run-time linker path) else AC_MSG_RESULT(no -- this may be a problem in a few seconds) fi ;; esac # GTK checks AM_PATH_GTK(1.2.0, CFLAGS="$CFLAGS $GTK_CFLAGS" LIBS="$LIBS $GTK_LIBS", AC_MSG_ERROR(GTK+ distribution not found.)) dnl pcap check AC_ARG_ENABLE(pcap, [ --enable-pcap use libpcap for packet capturing. [default=yes]],,enable_pcap=yes) AC_MSG_CHECKING(whether to use libpcap for packet capture) if test "x$enable_pcap" = "xno" ; then AC_MSG_RESULT(no) else AC_MSG_RESULT(yes) AC_ETHEREAL_PCAP_CHECK fi dnl zlib check AC_ARG_ENABLE(zlib, [ --enable-zlib use zlib to read compressed data. [default=yes]],, [dnl case "$host_os" in netbsd*) enable_zlib=no;; *) enable_zlib=yes;; esac]) AC_MSG_CHECKING(whether to use zlib for reading compressed capture files) if test "x$enable_zlib" = "xno" ; then AC_MSG_RESULT(no) else AC_MSG_RESULT(yes) AC_ETHEREAL_ZLIB_CHECK if test "x$enable_zlib" = "xno" ; then AC_MSG_RESULT(zlib not found - disabling compressed capture file support) fi fi dnl ipv6 check AC_ARG_ENABLE(ipv6, [ --enable-ipv6 use ipv6 name resolution, if available. [default=yes]],,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 dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS(fcntl.h sys/ioctl.h sys/time.h unistd.h stdarg.h netdb.h) AC_CHECK_HEADERS(sys/stat.h sys/sockio.h sys/types.h netinet/in.h sys/socket.h net/if.h) AC_CHECK_HEADERS(sys/wait.h) AC_CHECK_HEADERS(stddef.h) dnl SNMP Check AC_ARG_ENABLE(snmp, [ --enable-snmp use SNMP library, if available. [default=yes]],,enable_snmp=yes) SNMP_A='' SNMP_C='' SNMP_O='' AC_MSG_CHECKING(whether to use SNMP library if available) if test "x$enable_snmp" = "xno" ; then AC_MSG_RESULT(no) else AC_MSG_RESULT(yes) AC_ETHEREAL_UCDSNMP_CHECK AC_CHECK_HEADERS(ucd-snmp/snmp.h ucd-snmp/version.h snmp/snmp.h snmp/version.h) AC_CHECK_LIB(snmp, asn_parse_header, [ SNMP_A=-lsnmp SNMP_C=packet-snmp.c SNMP_O=packet-snmp.o ], ) fi AC_SUBST(SNMP_A) AC_SUBST(SNMP_C) AC_SUBST(SNMP_O) dnl Checks for typedefs, structures, and compiler characteristics. # AC_C_CONST # We need to know whether "struct sockaddr" has an "sa_len" member # for get_interface_list(). AC_ETHEREAL_STRUCT_SA_LEN # We must know our byte order AC_C_BIGENDIAN dnl Checks for library functions. AC_PROG_GCC_TRADITIONAL AC_CHECK_FUNC(socket,, AC_MSG_ERROR(Function 'socket' not found.)) # If there's a system out there that has snprintf and _doesn't_ have vsnprintf, # then this won't work. SNPRINTF_C="" SNPRINTF_O="" AC_CHECK_FUNC(snprintf, SNPRINTF_O="", SNPRINTF_O="snprintf.o" [AC_DEFINE(NEED_SNPRINTF_H)]) if test "$ac_cv_func_snprintf" = no ; then SNPRINTF_C="snprintf.c" SNPRINTF_O="snprintf.o" fi AC_SUBST(SNPRINTF_C) AC_SUBST(SNPRINTF_O) AC_CHECK_FUNC(strerror, STRERROR_O="", STRERROR_O="strerror.o" [AC_DEFINE(NEED_STRERROR_H)]) if test "$ac_cv_func_strerror" = no ; then STRERROR_C="strerror.c" STRERROR_O="strerror.o" fi AC_SUBST(STRERROR_C) AC_SUBST(STRERROR_O) AC_CHECK_FUNC(strncasecmp, STRNCASECMP_O="", STRNCASECMP_O="strncasecmp.o") if test "$ac_cv_func_strncasecmp" = no ; then STRNCASECMP_C="strncasecmp.c" STRNCASECMP_O="strncasecmp.o" fi AC_SUBST(STRNCASECMP_C) AC_SUBST(STRNCASECMP_O) AC_CHECK_FUNC(mkstemp, MKSTEMP_O="", MKSTEMP_O="mkstemp.o") if test "$ac_cv_func_mkstemp" = no ; then MKSTEMP_C="mkstemp.c" MKSTEMP_O="mkstemp.o" fi AC_SUBST(MKSTEMP_C) AC_SUBST(MKSTEMP_O) 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" fi AC_SUBST(INET_ATON_C) AC_SUBST(INET_ATON_O) AC_CHECK_FUNC(inet_pton, [ dnl check for pre-BIND82 inet_pton() bug. AC_MSG_CHECKING(for broken inet_pton) AC_TRY_RUN([#include #include #include #include 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_CHECK_FUNC(inet_ntop, INET_NTOP_O="", INET_NTOP_O="inet_ntop.o") if test "$ac_cv_func_inet_ntop" = no ; then INET_NTOP_C="inet_ntop.c" INET_NTOP_O="inet_ntop.o" AC_DEFINE(NEED_INET_V6DEFS_H) fi AC_SUBST(INET_NTOP_C) AC_SUBST(INET_NTOP_O) AC_CHECK_FUNCS(getprotobynumber gethostbyname2) dnl blank for now, but will be used in future AC_SUBST(ethereal_SUBDIRS) AM_CONFIG_HEADER(config.h) AC_CONFIG_SUBDIRS(wiretap) AC_OUTPUT(Makefile ethereal.spec doc/Makefile doc/dfilter2pod gtk/Makefile, [chmod +x doc/dfilter2pod])