replace *a lot* of file related calls by their GLib counterparts. This is necessary...
[obnox/wireshark/wip.git] / configure.in
index b51b4e171f37f35e9a080d28ef3ae1856baecde8..79c7fcdf43ef5ae36adef3a8fba4616c51263adf 100644 (file)
@@ -1,6 +1,6 @@
 # $Id$
 #
-AC_INIT(etypes.h)
+AC_INIT(cfile.h)
 
 AC_PREREQ(2.52)
 
@@ -8,7 +8,7 @@ dnl Check for CPU / vendor / OS
 AC_CANONICAL_HOST
 AC_CANONICAL_TARGET
 
-AM_INIT_AUTOMAKE(ethereal, 0.10.9)
+AM_INIT_AUTOMAKE(ethereal, 0.10.13)
 
 AM_DISABLE_STATIC
 
@@ -38,6 +38,14 @@ then
        #
        AC_MSG_ERROR(I couldn't find pod2html; make sure it's installed and in your path)
 fi
+AC_PATH_PROG(HTML_VIEWER, htmlview)
+if test "x$HTML_VIEWER" = x
+then
+       AC_DEFINE_UNQUOTED(HTML_VIEWER, "mozilla", [HTML viewer, e.g. mozilla])
+else
+       AC_DEFINE_UNQUOTED(HTML_VIEWER, "htmlview", [HTML viewer, e.g. mozilla])
+fi
+
 AC_PATH_PROG(LEX, flex)
 AC_PATH_PROG(PYTHON, python)
 
@@ -47,12 +55,34 @@ AC_SUBST(POD2HTML)
 AC_SUBST(LEX)
 AC_SUBST(FLEX_PATH)
 AC_SUBST(PYTHON)
+AC_SUBST(XSLTPROC)
+AC_SUBST(XMLLINT)
 
 # Check for doxygen
 AC_PATH_PROG(DOXYGEN, doxygen)
 AC_CHECK_PROG(HAVE_DOXYGEN, doxygen, "yes", "no")
 AM_CONDITIONAL(HAVE_DOXYGEN, test x$HAVE_DOXYGEN = xyes)
 
+# Check for xsltproc
+AC_PATH_PROG(XSLTPROC, xsltproc)
+AC_CHECK_PROG(HAVE_XSLTPROC, xsltproc, "yes", "no")
+AM_CONDITIONAL(HAVE_XSLTPROC, test x$HAVE_XSLTPROC = xyes)
+
+# Check for xmllint
+AC_PATH_PROG(XMLLINT, xmllint)
+AC_CHECK_PROG(HAVE_XMLLINT, xmllint, "yes", "no")
+AM_CONDITIONAL(HAVE_XMLLINT, test x$HAVE_XMLLINT = xyes)
+
+# Check for fop (translate .fo to e.g. pdf)
+AC_PATH_PROG(FOP, fop)
+AC_CHECK_PROG(HAVE_FOP, fop, "yes", "no")
+AM_CONDITIONAL(HAVE_FOP, test x$HAVE_FOP = xyes)
+
+# Check for hhc (html help compiler)
+AC_PATH_PROG(HHC, hhc.exe)
+AC_CHECK_PROG(HAVE_HHC, hhc.exe, "yes", "no")
+AM_CONDITIONAL(HAVE_HHC, test x$HAVE_HHC = xyes)
+
 # Check for packaging utilities
 # For now, we check to see if the various packaging utilites are in our
 # path.  I'm too lazy to write code to go hunt for them.  -  Gerald
@@ -86,7 +116,7 @@ AC_ARG_WITH(extra-gcc-checks,
 [
        if test $withval != no
        then
-               ethereal_extra_gcc_flags=" -Wcast-qual -Wcast-align -Wbad-function-cast -pedantic -Wstrict-prototypes"
+               ethereal_extra_gcc_flags=" -Wcast-qual -Wcast-align -Wbad-function-cast -pedantic -Wstrict-prototypes -Wmissing-declarations -Wwrite-strings"
        fi
 ],)
 AC_MSG_CHECKING(to see if we can add '-Wall -W $ethereal_extra_gcc_flags' to CFLAGS)
@@ -433,6 +463,7 @@ AC_CHECK_HEADERS(inttypes.h,
              printf("%" PRId64 "\n", (gint64)1);
              printf("%" PRIo64 "\n", (guint64)1);
              printf("%" PRIx64 "\n", (guint64)1);
+             printf("%" PRIX64 "\n", (guint64)1);
              printf("%" PRIu64 "\n", (guint64)1);
            }
          ]])
@@ -589,7 +620,7 @@ AC_SUBST(dftest_bin)
 # Enable/disable randpkt
 
 AC_ARG_ENABLE(randpkt,
-[  --enable-randpkt        build randpkt.  [default=no]],enable_randpkt=$enableval,enable_randpkt=no)
+[  --enable-randpkt        build randpkt.  [default=yes]],enable_randpkt=$enableval,enable_randpkt=yes)
 
 if test "x$enable_randpkt" = "xyes" ; then
        randpkt_bin="randpkt\$(EXEEXT)"
@@ -611,9 +642,7 @@ dnl pcap check
 AC_MSG_CHECKING(whether to use libpcap for packet capture)
 
 AC_ARG_WITH(pcap,
-changequote(<<, >>)dnl
-<<  --with-pcap[=DIR]       use libpcap for packet capturing.  [default=yes]>>,
-changequote([, ])dnl
+[  --with-pcap[[=DIR]]       use libpcap for packet capturing.  [[default=yes]]],
 [
        if test $withval = no
        then
@@ -640,9 +669,7 @@ dnl zlib check
 AC_MSG_CHECKING(whether to use zlib for reading compressed capture files)
 
 AC_ARG_WITH(zlib,
-changequote(<<, >>)dnl
-<<  --with-zlib[=DIR]       use zlib (located in directory DIR, if supplied) to read compressed data.  [default=yes, if present]>>,
-changequote([, ])dnl
+[  --with-zlib[[=DIR]]       use zlib (located in directory DIR, if supplied) to read compressed data.  [[default=yes, if available]]],
 [
        if test $withval = no
        then
@@ -658,7 +685,7 @@ changequote([, ])dnl
        #
        # Use zlib if it's present, otherwise don't.
        #
-       want_zlib=ifpresent
+       want_zlib=ifavailable
        zlib_dir=
 ])
 if test "x$want_zlib" = "xno" ; then
@@ -676,9 +703,7 @@ dnl pcre check
 AC_MSG_CHECKING(whether to use libpcre for regular expressions in dfilters)
 
 AC_ARG_WITH(pcre,
-changequote(<<, >>)dnl
-<<  --with-pcre[=DIR]       use libpcre (located in directory DIR, if supplied) to use in dfilter regular expressions.  [default=yes, if present]>>,
-changequote([, ])dnl
+[  --with-pcre[[=DIR]]       use libpcre (located in directory DIR, if supplied) to use in dfilter regular expressions.  [[default=yes, if available]]],
 [
        if test $withval = no
        then
@@ -694,7 +719,7 @@ changequote([, ])dnl
        #
        # Use libpcre if it's present, otherwise don't.
        #
-       want_pcre=ifpresent
+       want_pcre=ifavailable
        pcre_dir=
 ])
 if test "x$want_pcre" = "xno" ; then
@@ -747,9 +772,7 @@ SSL_LIBS=''
 AC_MSG_CHECKING(whether to use SSL library)
 
 AC_ARG_WITH(ssl,
-changequote(<<, >>)dnl
-<<  --with-ssl[=DIR]        use SSL crypto library (located in directory DIR, if supplied).   [default=no]>>,
-changequote([, ])dnl
+[  --with-ssl[[=DIR]]        use SSL crypto library (located in directory DIR, if supplied).   [[default=no]]],
 [
 if test "x$withval" = "xno";  then
        want_ssl=no
@@ -776,20 +799,32 @@ else
 fi
 AC_SUBST(SSL_LIBS)
 
-dnl UCD SNMP/NET-SNMP Check
+dnl UCD SNMP/Net-SNMP Check
 SNMP_LIBS=''
 
 AC_ARG_WITH(net-snmp,
-changequote(<<, >>)dnl
-<<  --with-net-snmp=PATH    use NET-SNMP library, with PATH as the location of the net-snmp-config shell script that comes with the net-snmp package.>>,
-changequote([, ])dnl
-[netsnmpconfig=$withval]
-)
+[  --with-net-snmp[[=PATH]]  use Net-SNMP library (with PATH as the location of the net-snmp-config shell script that comes with the net-snmp package, if supplied)  [[default=yes, if available]]],
+[
+       if test $withval = no
+       then
+               want_netsnmp=no
+       elif test $withval = yes
+       then
+               want_netsnmp=yes
+       else
+               want_netsnmp=yes
+               netsnmpconfig="$withval"
+       fi
+],[
+       #
+       # Set "want_netsnmp" to "ifavailable" to make the default "use it
+       # if you find it, otherwise don't".
+       #
+       want_netsnmp=ifavailable
+])
 
 AC_ARG_WITH(ucd-snmp,
-changequote(<<, >>)dnl
-<<  --with-ucd-snmp[=DIR]   use UCD SNMP client library (located in directory DIR, if supplied).  [default=yes, if present]>>,
-changequote([, ])dnl
+[  --with-ucd-snmp[[=DIR]]   use UCD SNMP client library (located in directory DIR, if supplied).  [[default=yes, if available]]],
 [
        if test $withval = no
        then
@@ -803,84 +838,41 @@ changequote([, ])dnl
        fi
 ],[
        #
-       # Set "want_ucdsnmp" to "ifpresent" to make the default "use it
+       # Set "want_ucdsnmp" to "ifavailable" to make the default "use it
        # if you find it, otherwise don't".
        #
-       want_ucdsnmp=ifpresent
+       want_ucdsnmp=ifavailable
        ucdsnmp_dir=
 ])
 
-dnl try net-snmp first
-AC_MSG_CHECKING(whether to use NET-SNMP library if available)
-if test "x$netsnmpconfig" != "xno" ; then
-       AC_MSG_RESULT(yes)
-       dnl get the net-snmp-config binary
-       if test "x$netsnmpconfig" = "xyes" -o "x$netsnmpconfig" = "x" ; then
-               dnl search for it
-               AC_PATH_PROG(NETSNMPCONFIG,net-snmp-config)
+#
+# Try Net-SNMP first.
+#
+AC_MSG_CHECKING(whether to use Net-SNMP library)
+if test "x$want_netsnmp" = "xno" ; then
+       AC_MSG_RESULT(no)
+else
+       if test "x$want_netsnmp" = "xifavailable" ; then
+               AC_MSG_RESULT([yes, if available])
        else
-               NETSNMPCONFIG=$netsnmpconfig
-               if test ! -x $NETSNMPCONFIG -o ! -f $NETSNMPCONFIG ; then
-                       NETSNMPCONFIG=$netsnmpconfig/bin/net-snmp-config
-                       if test ! -x $NETSNMPCONFIG -o ! -f $NETSNMPCONFIG ; then
-                               AC_MSG_ERROR(Invalid net-snmp-config: $netsnmpconfig)
-                       fi
-               fi
+               AC_MSG_RESULT(yes)
        fi
-else
-       AC_MSG_RESULT(no)
+       AC_ETHEREAL_NETSNMP_CHECK
 fi
 
-if test "x$NETSNMPCONFIG" != "xno" -a "x$NETSNMPCONFIG" != "x" -a -x "$NETSNMPCONFIG" ; then
-       dnl other choices for flags to use here: could also use
-       dnl --prefix or --exec-prefix if you don't want the full list.
-
-       #
-       # Save the current settings of CFLAGS and CPPFLAGS, and add
-       # the output of "$NETSNMPCONFIG --cflags" to it, so that when
-       # searching for the Net-SNMP headers, we look in whatever
-       # directory that output specifies.
-       #
-       ethereal_save_CFLAGS="$CFLAGS"
-       ethereal_save_CPPFLAGS="$CPPFLAGS"
-       CFLAGS="$CFLAGS `$NETSNMPCONFIG --cflags`"
-       CPPFLAGS="$CPPFLAGS `$NETSNMPCONFIG --cflags`"
-
-       AC_CHECK_HEADERS(net-snmp/net-snmp-config.h net-snmp/library/default_store.h)
-       if test "x$ac_cv_header_net_snmp_net_snmp_config_h" = "xyes" -a "x$ac_cv_header_net_snmp_library_default_store_h" = "xyes" ; then
-               SNMP_LIBS=`$NETSNMPCONFIG --libs`
-               if echo "$SNMP_LIBS" | grep crypto >/dev/null  && test "x$SSL_LIBS" = "x"; then
-                       AC_MSG_RESULT(Net-SNMP requires openssl but ssl not enabled - disabling Net-SNMP)
-                       CFLAGS="$ethereal_save_CFLAGS"
-                       CPPFLAGS="$ethereal_save_CPPFLAGS"
-                       SNMP_LIBS=
-                       NETSNMPCONFIG="no"
-               else
-                       AC_DEFINE(HAVE_NET_SNMP, 1, [Define to enable support for NET-SNMP])
-                       have_net_snmp="yes"
-               fi
-       else
-               # technically, we should retry ucd-snmp but it's
-               # unlikely they have installed net-snmp-config and not
-               # the net-snmp headers but do have the ucd-snmp
-               # headers.  This would likely be a broken system to
-               # try and use anyway.
-               NETSNMPCONFIG="no"
-
-               #
-               # Restore the versions of CFLAGS and CPPFLAGS before
-               # we added the output of '$NETSNMPCONFIG --cflags",
-               # as we didn't actually find Net-SNMP there.
-               #
-               CFLAGS="$ethereal_save_CFLAGS"
-               CPPFLAGS="$ethereal_save_CPPFLAGS"
-       fi      
-else
-       AC_MSG_CHECKING(whether to use UCD SNMP library if available)
+#
+# If that didn't find Net-SNMP, try UCD SNMP.
+#
+if test "x$have_net_snmp" != "xyes" ; then
+       AC_MSG_CHECKING(whether to use UCD SNMP library)
        if test "x$want_ucdsnmp" = "xno" ; then
                AC_MSG_RESULT(no)
        else
-               AC_MSG_RESULT(yes)
+               if test "x$want_ucdsnmp" = "xifavailable" ; then
+                       AC_MSG_RESULT([yes, if available])
+               else
+                       AC_MSG_RESULT(yes)
+               fi
                AC_ETHEREAL_UCDSNMP_CHECK
        fi
 fi
@@ -896,9 +888,7 @@ dnl kerberos check
 AC_MSG_CHECKING(whether to use kerberos)
 
 AC_ARG_WITH(krb5,
-changequote(<<, >>)dnl
-<<  --with-krb5[=DIR]       use kerberos (located in directory DIR, if supplied) to use in kerberos dissection  [default=yes]>>,
-changequote([, ])dnl
+[  --with-krb5[[=DIR]]       use kerberos (located in directory DIR, if supplied) to use in kerberos dissection  [[default=yes]]],
 [
        if test $withval = no
        then
@@ -914,7 +904,7 @@ changequote([, ])dnl
        #
        # Use kerberos if specified, otherwise don't.
        #
-       want_krb5=ifpresent
+       want_krb5=ifavailable
        krb5_dir=
 ])
 if test "x$want_krb5" = "xno" ; then
@@ -928,6 +918,19 @@ fi
 dnl ADNS Check
 ADNS_LIBS=''
 AC_MSG_CHECKING(whether to use the GNU ADNS library if available)
+
+AC_ARG_WITH(adns,
+[  --with-adns[[=DIR]]       use GNU ADNS (located in directory DIR, if supplied).   [[default=yes, if present]]],
+[
+if   test "x$withval" = "xno";  then
+       want_adns=no
+elif test "x$withval" = "xyes"; then
+       want_adns=yes
+elif test -d "$withval"; then
+       want_adns=yes
+       AC_ETHEREAL_ADD_DASH_L(LDFLAGS, ${withval}/lib)
+fi
+])
 if test "x$with_adns" = "xno" ; then
        AC_MSG_RESULT(no)
 else
@@ -1138,9 +1141,7 @@ dnl check for plugins directory - stolen from Amanda's configure.in
 dnl
 plugindir="$libdir/ethereal/plugins/$VERSION"
 AC_ARG_WITH(plugins,
-changequote(<<, >>)dnl
-<<  --with-plugins[=DIR]    support plugins (installed in DIR, if supplied).>>,
-changequote([, ])dnl
+[  --with-plugins[[=DIR]]    support plugins (installed in DIR, if supplied).],
 [
   case "$withval" in
   "" | y | ye | yes )
@@ -1229,6 +1230,7 @@ AC_OUTPUT(
   packaging/svr4/pkginfo
   plugins/Makefile
   plugins/acn/Makefile
+  plugins/agentx/Makefile
   plugins/artnet/Makefile
   plugins/asn1/Makefile
   plugins/ciscosm/Makefile
@@ -1236,6 +1238,7 @@ AC_OUTPUT(
   plugins/enttec/Makefile
   plugins/giop/Makefile
   plugins/gryphon/Makefile
+  plugins/h223/Makefile
   plugins/irda/Makefile
   plugins/lwres/Makefile
   plugins/mate/Makefile
@@ -1243,10 +1246,12 @@ AC_OUTPUT(
   plugins/mgcp/Makefile
   plugins/opsi/Makefile
   plugins/pcli/Makefile
+  plugins/profinet/Makefile
   plugins/rdm/Makefile
   plugins/rlm/Makefile
   plugins/rtnet/Makefile
   plugins/rudp/Makefile
+  plugins/stats_tree/Makefile
   plugins/v5ua/Makefile
   tools/Makefile
   tools/lemon/Makefile
@@ -1291,12 +1296,12 @@ else
        adns_message="no"
 fi
 
-if test "x$NETSNMPCONFIG" != "xno" -a "x$NETSNMPCONFIG" != "x" -a -x "$NETSNMPCONFIG" ; then
+if test "x$have_net_snmp" = "xyes" ; then
        snmp_libs_message="yes (net-snmp)"
-elif test "x$SNMP_LIBS" = "x" ; then
-       snmp_libs_message="no"
-else
+elif test "x$have_ucdsnmp" = "xyes" ; then
        snmp_libs_message="yes (ucd-snmp)"
+else
+       snmp_libs_message="no"
 fi
 
 echo ""
@@ -1325,4 +1330,4 @@ echo "              Use kerberos library : $krb5_message"
 echo "              Use GNU ADNS library : $adns_message"
 echo "            Use SSL crypto library : $ssl_message"
 echo "          Use IPv6 name resolution : $enable_ipv6"
-echo "     Use UCD SNMP/NET-SNMP library : $snmp_libs_message"
+echo "     Use UCD SNMP/Net-SNMP library : $snmp_libs_message"