Some packet_list.h -> main_packet_list.h changes.
[obnox/wireshark/wip.git] / configure.in
index 4091926af1c56ad4cbea804c0add2ba5a5a976f5..c0d8d75053ad7ed266c8f0b22f223b858bed8162 100644 (file)
@@ -14,7 +14,7 @@ dnl AC_CANONICAL_HOST
 dnl AC_CANONICAL_BUILD
 AC_CANONICAL_TARGET
 
-AM_INIT_AUTOMAKE(wireshark, 0.99.7)
+AM_INIT_AUTOMAKE(wireshark, 1.0.99)
 
 AM_DISABLE_STATIC
 
@@ -25,9 +25,19 @@ dnl Work around libtool bug (fixed in the version 1.5a?)
 AC_DEFUN([AC_PROVIDE_AC_LIBTOOL_DLOPEN], )
 AC_LIBTOOL_DLOPEN
 AC_PROG_LIBTOOL
+AC_PATH_PROG(PERL, perl)
 AC_PROG_YACC
+AC_PATH_PROG(YACCDUMMY, $YACC)
+if test "x$YACCDUMMY" = x
+then
+       AC_MSG_ERROR(I couldn't find yacc (or bison or ...); make sure it's installed and in your path)
+fi
 AM_PROG_LEX
-AC_PATH_PROG(PERL, perl)
+AC_PATH_PROG(LEXDUMMY, $LEX)
+if test "x$LEXDUMMY" = x
+then
+       AC_MSG_ERROR(I couldn't find (f)lex; make sure it's installed and in your path)
+fi
 AC_PATH_PROG(POD2MAN, pod2man)
 if test "x$POD2MAN" = x
 then
@@ -44,12 +54,18 @@ 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)
+AC_PATH_PROG(HTML_VIEWER, xdg-open)
 if test "x$HTML_VIEWER" = x
 then
-       AC_DEFINE_UNQUOTED(HTML_VIEWER, "mozilla", [HTML viewer, e.g. mozilla])
+       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
 else
-       AC_DEFINE_UNQUOTED(HTML_VIEWER, "htmlview", [HTML viewer, e.g. mozilla])
+       AC_DEFINE_UNQUOTED(HTML_VIEWER, "xdg-open", [HTML viewer, e.g. mozilla])
 fi
 
 AC_PATH_PROG(LEX, flex)
@@ -82,7 +98,7 @@ AC_ARG_WITH([gnutls],
                  [use gnutls library @<:@default=yes@:>@]),
   with_gnutls="$withval", with_gnutls="yes")
 if test "x$with_gnutls" = "xyes"; then
-  AM_PATH_LIBGNUTLS(1.0.0,
+  AM_PATH_LIBGNUTLS(1.2.0,
         [
                 echo "gnuTLS found, enabling ssl decryption"
                 AC_DEFINE(HAVE_LIBGNUTLS, 1, [Define to use gnutls library])
@@ -125,15 +141,7 @@ fi
 
 # libsmi
 # FIXME: currently the path argument to with-libsmi is being ignored
-libsmi="no"
-AC_ARG_WITH([libsmi],
-  AC_HELP_STRING( [--with-libsmi=@<:@yes/no@:>@],
-                 [use smi library @<:@default=yes@:>@]),
-  with_libsmi="$withval", with_libsmi="yes")
-if test "x$with_libsmi" = "xyes"; then
-  AM_PATH_LIBSMI
-  AM_CONDITIONAL(HAVE_SMI, "x$with_libsmi" = "xyes")
-fi
+AX_LIBSMI
 
 # Check for xsltproc
 AC_PATH_PROG(XSLTPROC, xsltproc)
@@ -158,6 +166,8 @@ 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
+
+# SVR4/Solaris
 AC_CHECK_PROG(HAVE_PKGPROTO, pkgproto, "yes", "no")
 AC_CHECK_PROG(HAVE_PKGMK, pkgmk, "yes", "no")
 AC_CHECK_PROG(HAVE_PKGTRANS, pkgtrans, "yes", "no")
@@ -170,9 +180,26 @@ else
 fi
 AC_SUBST(HAVE_SVR4_PACKAGING)
 
+# RPM
 AC_WIRESHARK_RPM_CHECK
 AC_SUBST(HAVE_RPM)
 
+# Debian
+AC_CHECK_PROG(HAVE_DPKG_BUILDPACKAGE, dpkg-buildpackage, "yes", "no")
+
+# Mac OS X
+AC_CHECK_PROG(HAVE_XCODEBUILD, xcodebuild, "yes", "no")
+AC_CHECK_PROG(HAVE_HDIUTIL, hdiutil, "yes", "no")
+AC_CHECK_PROG(HAVE_BLESS, bless, "yes", "no")
+
+if test x$HAVE_XCODEBUILD = xyes -a x$HAVE_HDIUTIL = xyes \
+     -a x$HAVE_BLESS = xyes ; then
+  HAVE_OSX_PACKAGING=yes
+else
+  HAVE_OSX_PACKAGING=no
+fi
+AC_SUBST(HAVE_OSX_PACKAGING)
+
 #
 # Try to add some additional gcc checks to CFLAGS
 #
@@ -184,16 +211,18 @@ AC_ARG_ENABLE(extra-gcc-checks,
        if test $enableval != no
        then
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-pedantic)
+               AC_WIRESHARK_GCC_CFLAGS_CHECK(-Woverflow)
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wno-long-long)
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wbad-function-cast)
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wcast-qual)
+               AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wcast-align)
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wwrite-strings)
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wshorten-64-to-32)
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wstrict-prototypes)
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wmissing-declarations)
                #Temporarily put cast-align here waiting eradication of 'cast
                #increases required alignment of target type' on the Solaris
-               #slave. 
+               #slave.
                AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wcast-align)
        fi
 ],)
@@ -202,6 +231,7 @@ AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wdeclaration-after-statement)
 AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wendif-labels)
 AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wpointer-arith)
 AC_WIRESHARK_GCC_CFLAGS_CHECK(-Wno-pointer-sign)
+AC_WIRESHARK_GCC_CFLAGS_CHECK(-Warray-bounds)
 
 #
 # If we're running gcc add '-D_U_="__attribute__((unused))"' to CFLAGS as well,
@@ -216,13 +246,14 @@ else
 fi
 
 #
-# If we're running gcc, will enable a barrier "stop on warning". 
+# If we're running gcc, will enable a barrier "stop on warning".
 # This barrier is set for a very large part of the code. However, it is
 # typically not set for "generated" code  (lex, ans2wrs, idl2wrs, ...)
 #
+warnings_as_errors_default="yes"
 AC_MSG_CHECKING(whether we should treat compiler warnings as errors)
 AC_ARG_ENABLE(warnings-as-errors,
-  AC_HELP_STRING( [--enable-warnings-as-errors], 
+  AC_HELP_STRING( [--enable-warnings-as-errors],
                  [Treat warnings as errors (only for gcc). @<:@default=yes@:>@]),
 [
   if test "x$GCC" = "xyes" -a "x$enableval" == "xyes" -a "x$wireshark_extra_gcc_flags" != "xyes"; then
@@ -233,7 +264,7 @@ AC_ARG_ENABLE(warnings-as-errors,
     AC_MSG_RESULT(no)
   fi
 ],
-  if test "x$GCC" = "xyes" -a "x$wireshark_extra_gcc_flags" = "x"; then
+  if test "x$GCC" = "xyes" -a "x$wireshark_extra_gcc_flags" = "x" -a "x$warnings_as_errors_default" = "xyes"; then
     with_warnings_as_errors="yes"
     AC_MSG_RESULT(yes)
   else
@@ -340,23 +371,19 @@ esac
 AC_SUBST(LDFLAGS_SHAREDLIB)
 
 #
-# On OS X, if we find the headers for Core Foundation and Launch Services,
-# add -framework options to link with Application Services (of which
-# Launch Services is a subframework) and Core Foundation (required by
-# the Launch Services APIs), so we can use that to launch a Web browser
-# from the Help menu.
-#
-# (Do those headers exist on pure Darwin?  If so, does the CoreFoundation
-# *and* Launch Services code exist there, or are those headers just stubs?
-# If the frameworks aren't present on Darwin, how *should* we check for
-# their existence?)
+# On OS X, if we find the headers for Core Foundation, Launch Services,
+# and Core Services, add -framework options to link with Application
+# Services (of which Launch Services is a subframework), Core Foundation
+# (required by the Launch Services APIs), and Core Services, so we can
+# use them to launch a Web browser from the Help menu and to use
+# Gestalt() to get the Mac OS X version number.
 #
 case "$host_os" in
 
 darwin*)
-       AC_MSG_CHECKING(whether we can build with Core Foundation and Launch Services)
+       AC_MSG_CHECKING([whether we can build with Core Foundation, Launch Services, and Core Services])
        ac_save_LIBS="$LIBS"
-       ac_frameworks="-framework ApplicationServices -framework CoreFoundation"
+       ac_frameworks="-framework ApplicationServices -framework CoreFoundation -framework CoreServices"
        LIBS="$LIBS $ac_frameworks"
        AC_TRY_LINK(
           [
@@ -364,20 +391,24 @@ darwin*)
 #       include <CoreFoundation/CFString.h>
 #       include <CoreFoundation/CFURL.h>
 #       include <ApplicationServices/ApplicationServices.h>
+#      include <CoreServices/CoreServices.h>
           ],
           [
        CFStringRef url_CFString;
        CFURLRef url_CFURL;
        OSStatus status;
+       long os_version;
 
        url_CFString = CFStringCreateWithCString(NULL, "", kCFStringEncodingASCII);
        url_CFURL = CFURLCreateWithString(NULL, url_CFString, NULL);
        status = LSOpenCFURLRef(url_CFURL, NULL);
+
+       Gestalt(gestaltSystemVersion, &os_version);
           ],
-          ac_cv_can_use_cf_and_ls=yes,
-          ac_cv_can_use_cf_and_ls=no,
+          ac_cv_can_use_osx_frameworks=yes,
+          ac_cv_can_use_osx_frameworks=no,
           [echo $ac_n "cross compiling; assumed OK... $ac_c"])
-       if test "$ac_cv_can_use_cf_and_ls" = yes ; then
+       if test "$ac_cv_can_use_osx_frameworks" = yes ; then
                AC_DEFINE(HAVE_OS_X_FRAMEWORKS, 1, [Define to 1 if you have OS X frameworks])
                FRAMEWORKS="$ac_frameworks"
                AC_MSG_RESULT(yes)
@@ -404,7 +435,7 @@ if test "x$ac_cv_enable_usr_local" = "xyes" ; then
        #
        # 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)
+       # as various packages we use ("libpcap", "zlib", "adns", "pcre")
        # may have been installed under "/usr/local/include".
        #
        CFLAGS="$CFLAGS -I/usr/local/include"
@@ -453,7 +484,7 @@ if test "$HAVE_GNU_SED" = no ; then
                AC_MSG_CHECKING(whether one of /usr/bin/sed or /bin/sed or /usr/ucb/sed will be used)
                case `which sed` in
                        /bin/sed|/usr/bin/sed|/usr/ucb/sed)
-                       AC_MSG_RESULT(yes)              
+                       AC_MSG_RESULT(yes)
                        AC_MSG_ERROR([change your path to search /usr/xpg4/bin or directory containing GNU sed before /usr/bin (and /bin and /usr/ucb)])
                        ;;
 
@@ -476,12 +507,6 @@ AC_ARG_ENABLE(wireshark,
                   [build GTK+-based wireshark.  @<:@default=yes, if GTK+ available@:>@]),
     enable_wireshark=$enableval,enable_wireshark=yes)
 
-AC_ARG_ENABLE(gtk2,
-  AC_HELP_STRING( [--disable-gtk2],
-                  [build Glib1/Gtk1+-based wireshark/tshark.  @<:@default=no@:>@]),
-    enable_gtk2=$enableval,enable_gtk2=yes)
-AM_CONDITIONAL(USE_GTK2, test x$enable_gtk2 = xyes)
-
 AC_ARG_ENABLE(threads,
   AC_HELP_STRING( [--enable-threads],
                   [use threads in wireshark.  @<:@default=no@:>@]),
@@ -522,12 +547,8 @@ AC_DEFINE_UNQUOTED(DATAFILE_DIR,"$datafiledir", [Directory for data])
 # We don't add $GLIB_LIBS to LIBS, because we don't want to force all
 # programs to be built with GTK+.
 #
-if test "x$enable_gtk2" = "xyes" -a "x$enable_wireshark" = "xyes"; then
-       GTK_OK=two
+if test "x$enable_wireshark" = "xyes"; then
        AM_PATH_GTK_2_0(2.0.0, CFLAGS="$CFLAGS $GTK_CFLAGS", GTK_OK=no, gthread)
-elif test "x$enable_gtk2" != "xyes" -a "x$enable_wireshark" = "xyes"; then
-       GTK_OK=one
-       AM_PATH_GTK(1.2.0, CFLAGS="$CFLAGS $GTK_CFLAGS", GTK_OK=no )
 else
        GTK_OK=no
 fi
@@ -556,21 +577,14 @@ if test "$GTK_OK" = "no" ; then
        wireshark_bin=""
        wireshark_man=""
        # Honor GLIB_CFLAGS
-       if test "x$enable_gtk2" = "xyes" ; then
-               AM_PATH_GLIB_2_0(2.0.0, CFLAGS="$CFLAGS $GLIB_CFLAGS", AC_MSG_ERROR(GLib2 distribution not found.), gmodule)
-       else
-               AM_PATH_GLIB(1.2.0, CFLAGS="$CFLAGS $GLIB_CFLAGS", AC_MSG_ERROR(GLib distribution not found.), gmodule)
-       fi
+       AM_PATH_GLIB_2_0(2.0.0, CFLAGS="$CFLAGS $GLIB_CFLAGS", AC_MSG_ERROR(GLib2 distribution not found.), gmodule)
+
 else
        wireshark_bin="wireshark\$(EXEEXT)"
        wireshark_man="wireshark.1"
         wireshark_SUBDIRS="codecs gtk"
        # Honor GLIB_CFLAGS
-       if test "$GTK_OK" = "two" ; then
-               AM_PATH_GLIB_2_0(2.0.0, , AC_MSG_ERROR(GLib distribution not found.), gmodule)
-       else
-               AM_PATH_GLIB(1.2.0, , AC_MSG_ERROR(GLib distribution not found.), gmodule)
-       fi
+       AM_PATH_GLIB_2_0(2.0.0, , AC_MSG_ERROR(GLib distribution not found.), gmodule)
 fi
 
 #
@@ -818,6 +832,7 @@ fi
 AC_SUBST(randpkt_bin)
 
 
+
 dnl Checks for "gethostbyname()" - and "-lnsl", if we need it to get
 dnl "gethostbyname()".
 AC_WIRESHARK_GETHOSTBY_LIB_CHECK
@@ -885,6 +900,60 @@ fi
 AC_SUBST(dumpcap_bin)
 AC_SUBST(dumpcap_man)
 
+# Enable/disable rawshark
+
+dnl rawshark check
+AC_MSG_CHECKING(whether to build rawshark)
+
+AC_ARG_ENABLE(rawshark,
+  AC_HELP_STRING( [--enable-rawshark],
+                  [build rawshark.  @<:@default=yes@:>@]),
+    rawshark=$enableval,enable_rawshark=yes)
+
+if test "x$enable_rawshark" = "xyes" ; then
+       if test "x$want_pcap" = "xno" ; then
+               enable_rawshark=no
+               AC_MSG_RESULT(pcap not available - disabling rawshark)
+       else
+               AC_MSG_RESULT(yes)
+       fi
+else
+       AC_MSG_RESULT(no)
+fi
+
+if test "x$enable_rawshark" = "xyes" ; then
+       rawshark_bin="rawshark\$(EXEEXT)"
+       rawshark_man="rawshark.1"
+else
+       rawshark_bin=""
+       rawshark_man=""
+fi
+AC_SUBST(rawshark_bin)
+AC_SUBST(rawshark_man)
+
+
+dnl pcap remote check
+AC_MSG_CHECKING(whether to use libpcap remote capturing feature)
+
+AC_ARG_WITH(pcap-remote,
+[  --with-pcap-remote        use libpcap remote capturing (requires libpcap)],
+[
+    if test $withval = no
+    then
+        want_pcap_remote=no
+    else
+        want_pcap_remote=yes
+    fi
+],[
+    want_pcap_remote=no
+])
+if test "x$want_pcap_remote" = "xno" -o "x$want_pcap" = "xno" ; then
+    AC_MSG_RESULT(no)
+else
+    AC_MSG_RESULT(yes)
+    AC_WIRESHARK_PCAP_REMOTE_CHECK
+fi
+
 dnl zlib check
 AC_MSG_CHECKING(whether to use zlib for reading compressed capture files)
 
@@ -1042,28 +1111,54 @@ else
 fi
 
 
-dnl Check if wireshark should be installed setuid
+dnl Check if dumpcap should be installed setuid
 AC_ARG_ENABLE(setuid-install,
   AC_HELP_STRING( [--enable-setuid-install],
-                  [install wireshark as setuid. DANGEROUS!!! @<:@default=no@:>@]),
+                  [install dumpcap as setuid @<:@default=no@:>@]),
     enable_setuid_install=$enableval,enable_setuid_install=no)
 
-AC_MSG_CHECKING(whether to install wireshark setuid)
+AC_MSG_CHECKING(whether to install dumpcap setuid)
 if test "x$enable_setuid_install" = "xno" ; then
        AC_MSG_RESULT(no)
 else
        if test "x$enable_dumpcap" = "xno" ; then
-               AC_MSG_ERROR(Setuid install works only with --enable-dumpcap, but dumpcap disabled)
+               AC_MSG_ERROR(Setuid install works only with dumpcap but dumpcap is disabled)
        else
                AC_MSG_RESULT(yes)
        fi
 fi
 
 AM_CONDITIONAL(SETUID_INSTALL, test x$enable_setuid_install = xyes)
+AC_CHECK_FUNCS(setresuid setresgid)
+
+dnl libcap (not libpcap) check
+LIBCAP_LIBS=''
+AC_MSG_CHECKING(whether to use the libcap capabilities library)
+
+AC_ARG_WITH(libcap,
+  AC_HELP_STRING( [--with-libcap@<:@=DIR@:>@],
+                  [use libcap (located in directory DIR, if supplied) for POSIX.1e capabilities management.   @<:@default=yes, if present@:>@]),
+[
+if   test "x$withval" = "xno";  then
+       want_libcap=no
+elif test "x$withval" = "xyes"; then
+       want_libcap=yes
+elif test -d "$withval"; then
+       want_libcap=yes
+       AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
+fi
+])
+if test "x$with_libcap" = "xno" ; then
+       AC_MSG_RESULT(no)
+else
+       AC_MSG_RESULT(yes)
+       AC_WIRESHARK_LIBCAP_CHECK
+fi
+AC_SUBST(LIBCAP_LIBS)
 
 dnl Checks for header files.
 AC_HEADER_STDC
-AC_CHECK_HEADERS(direct.h dirent.h fcntl.h netdb.h stdarg.h stddef.h unistd.h)
+AC_CHECK_HEADERS(direct.h dirent.h fcntl.h grp.h netdb.h pwd.h stdarg.h stddef.h unistd.h)
 AC_CHECK_HEADERS(sys/ioctl.h sys/param.h sys/socket.h sys/sockio.h sys/stat.h sys/time.h sys/types.h sys/utsname.h sys/wait.h)
 AC_CHECK_HEADERS(netinet/in.h)
 AC_CHECK_HEADERS(arpa/inet.h arpa/nameser.h)
@@ -1104,53 +1199,6 @@ else
 fi
 AC_SUBST(SSL_LIBS)
 
-dnl Net-SNMP Check
-SNMP_LIBS=''
-
-AC_ARG_WITH(net-snmp,
-  AC_HELP_STRING( [--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
-])
-
-#
-# Try Net-SNMP
-#
-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
-               AC_MSG_RESULT(yes)
-       fi
-       AC_WIRESHARK_NETSNMP_CHECK
-fi
-
-if test "x$have_net_snmp" = "xyes"; then
-       AC_DEFINE(HAVE_NET_SNMP, 1, [Define to 1 if Net-SNMP support is to be used])
-fi
-
-AC_SUBST(SNMP_LIBS)
-
-
 dnl kerberos check
 AC_MSG_CHECKING(whether to use kerberos)
 
@@ -1244,9 +1292,7 @@ AC_COMPILE_IFELSE(
     AC_LANG_SOURCE(
       [[
        #include <glib.h>
-       #if GTK_MAJOR_VERSION >= 2
        #include <glib/gprintf.h>
-       #endif
        #include <stdio.h>
 
        main()
@@ -1327,6 +1373,28 @@ fi
 AC_SUBST(MKSTEMP_C)
 AC_SUBST(MKSTEMP_O)
 
+ac_save_LIBS="$LIBS"
+LIBS="$GLIB_LIBS $LIBS"
+G_ASCII_STRCASECMP_C=""
+G_ASCII_STRCASECMP_O=""
+G_ASCII_STRCASECMP_LO=""
+AC_CHECK_FUNC(g_ascii_strcasecmp,
+  [G_ASCII_STRCASECMP_O=""
+   G_ASCII_STRCASECMP_LO=""],
+  [G_ASCII_STRCASECMP_O="g_ascii_strcasecmp.o"
+   G_ASCII_STRCASECMP_LO="g_ascii_strcasecmp.lo"
+   AC_DEFINE(NEED_G_ASCII_STRCASECMP_H, 1, [Define if g_ascii_strcasecmp.h needs to be included])
+])
+LIBS="$ac_save_LIBS"
+if test "$ac_cv_func_g_ascii_strcasecmp" = no ; then
+  G_ASCII_STRCASECMP_C="g_ascii_strcasecmp.c"
+  G_ASCII_STRCASECMP_O="g_ascii_strcasecmp.o"
+  G_ASCII_STRCASECMP_LO="g_ascii_strcasecmp.lo"
+fi
+AC_SUBST(G_ASCII_STRCASECMP_C)
+AC_SUBST(G_ASCII_STRCASECMP_O)
+AC_SUBST(G_ASCII_STRCASECMP_LO)
+
 ac_save_LIBS="$LIBS"
 LIBS="$GLIB_LIBS $LIBS"
 G_ASCII_STRTOULL_C=""
@@ -1465,9 +1533,8 @@ AC_ARG_WITH(plugins,
     have_plugins=no
   elif test "x$have_plugins" = "xno"; then
       AC_MSG_ERROR([GLib on this platform doesn't support loadable modules, so you can't enable plugins.])
-      if test "x$withval" != "xyes"; then 
-       plugindir="$withval"
-      fi
+  elif test "x$withval" != "xyes"; then
+      plugindir="$withval"
   fi
 ])
 AM_CONDITIONAL(HAVE_PLUGINS, test "x$have_plugins" = "xyes")
@@ -1481,7 +1548,7 @@ CPPFLAGS="$CPPFLAGS '-DPLUGIN_DIR=\"\$(plugindir)\"'"
 #
 # The plugin dissectors reside in ./plugins/PROTO/
 #
-PLUGIN_LIBS="-L../../epan -lwireshark $GLIB_LIBS"
+PLUGIN_LIBS=""
 AC_SUBST(PLUGIN_LIBS)
 
 dnl libtool defs
@@ -1507,11 +1574,87 @@ dnl Save the cacheable configure results to config.cache before recursing
 AC_CACHE_SAVE
 
 AM_CONFIG_HEADER(config.h)
-AC_CONFIG_SUBDIRS(wiretap)
 AC_OUTPUT(
   Makefile
   doxygen.cfg
   asn1/Makefile
+  asn1/acp133/Makefile
+  asn1/acse/Makefile
+  asn1/ansi_map/Makefile
+  asn1/ansi-tcap/Makefile
+  asn1/camel/Makefile
+  asn1/cdt/Makefile
+  asn1/cmip/Makefile
+  asn1/cms/Makefile
+  asn1/dap/Makefile
+  asn1/disp/Makefile
+  asn1/dop/Makefile
+  asn1/dsp/Makefile
+  asn1/ess/Makefile
+  asn1/ftam/Makefile
+  asn1/gnm/Makefile
+  asn1/gsmmap/Makefile
+  asn1/h225/Makefile
+  asn1/h235/Makefile
+  asn1/h245/Makefile
+  asn1/h248/Makefile
+  asn1/h282/Makefile
+  asn1/h283/Makefile
+  asn1/h323/Makefile
+  asn1/h450/Makefile
+  asn1/h450-ros/Makefile
+  asn1/h460/Makefile
+  asn1/h501/Makefile
+  asn1/inap/Makefile
+  asn1/ldap/Makefile
+  asn1/logotype-cert-extn/Makefile
+  asn1/mms/Makefile
+  asn1/mpeg-audio/Makefile
+  asn1/mpeg-pes/Makefile
+  asn1/nbap/Makefile
+  asn1/ns-cert-exts/Makefile
+  asn1/ocsp/Makefile
+  asn1/p7/Makefile
+  asn1/pcap/Makefile
+  asn1/pkcs1/Makefile
+  asn1/pkcs12/Makefile
+  asn1/pkinit/Makefile
+  asn1/pkix1explicit/Makefile
+  asn1/pkix1implicit/Makefile
+  asn1/pkixcmp/Makefile
+  asn1/pkixcrmf/Makefile
+  asn1/pkixproxy/Makefile
+  asn1/pkixqualified/Makefile
+  asn1/pkixtsp/Makefile
+  asn1/pres/Makefile
+  asn1/q932/Makefile
+  asn1/q932-ros/Makefile
+  asn1/qsig/Makefile
+  asn1/ranap/Makefile
+  asn1/rnsap/Makefile
+  asn1/ros/Makefile
+  asn1/rrc/Makefile
+  asn1/rrlp/Makefile
+  asn1/rtse/Makefile
+  asn1/s1ap/Makefile
+  asn1/s4406/Makefile
+  asn1/sabp/Makefile
+  asn1/smrse/Makefile
+  asn1/snmp/Makefile
+  asn1/spnego/Makefile
+  asn1/t125/Makefile
+  asn1/t38/Makefile
+  asn1/tcap/Makefile
+  asn1/ulp/Makefile
+  asn1/wlancertextn/Makefile
+  asn1/x2ap/Makefile
+  asn1/x411/Makefile
+  asn1/x420/Makefile
+  asn1/x509af/Makefile
+  asn1/x509ce/Makefile
+  asn1/x509if/Makefile
+  asn1/x509sat/Makefile
+  asn1/x721/Makefile
   doc/Makefile
   epan/Makefile
   epan/crypt/Makefile
@@ -1525,6 +1668,7 @@ AC_OUTPUT(
   gtk/doxygen.cfg
   help/Makefile
   packaging/Makefile
+  packaging/macosx/Info.plist
   packaging/nsis/Makefile
   packaging/rpm/Makefile
   packaging/rpm/SPECS/Makefile
@@ -1539,13 +1683,14 @@ AC_OUTPUT(
   plugins/ciscosm/Makefile
   plugins/docsis/Makefile
   plugins/enttec/Makefile
+  plugins/ethercat/Makefile
   plugins/giop/Makefile
   plugins/gryphon/Makefile
+  plugins/infiniband/Makefile
   plugins/irda/Makefile
   plugins/lwres/Makefile
   plugins/m2m/Makefile
   plugins/mate/Makefile
-  plugins/mgcp/Makefile
   plugins/opcua/Makefile
   plugins/opsi/Makefile
   plugins/pcli/Makefile
@@ -1558,16 +1703,19 @@ AC_OUTPUT(
   plugins/unistim/Makefile
   plugins/v5ua/Makefile
   plugins/wimax/Makefile
+  plugins/wimaxasncp/Makefile
   tools/Makefile
   tools/idl2wrs.sh
   tools/lemon/Makefile
+  wiretap/Makefile
   ,)
+dnl AC_CONFIG_FILES([tools/setuid-root.pl], [chmod +x tools/setuid-root.pl])
 
 
 # Pretty messages
 
 if test "x$enable_setuid_install" = "xyes" ; then
-       setuid_message="yes (DANGEROUS!!!)"
+       setuid_message="yes"
 else
        setuid_message="no"
 fi
@@ -1614,10 +1762,10 @@ else
        adns_message="no"
 fi
 
-if test "x$have_net_snmp" = "xyes" ; then
-       snmp_libs_message="yes"
+if test "x$have_good_libcap" = "xyes" ; then
+       libcap_message="yes"
 else
-       snmp_libs_message="no"
+       libcap_message="no"
 fi
 
 echo ""
@@ -1632,24 +1780,22 @@ echo "                    Build text2pcap : $enable_text2pcap"
 echo "                      Build idl2wrs : $enable_idl2wrs"
 echo "                      Build randpkt : $enable_randpkt"
 echo "                       Build dftest : $enable_dftest"
+echo "                     Build rawshark : $enable_rawshark"
 echo ""
-echo "                     Install setuid : $setuid_message"
+echo "             Install dumpcap setuid : $setuid_message"
 echo "                        Use plugins : $have_plugins"
 echo "                   Build lua plugin : $lua_message"
 echo "                   Build rtp_player : $portaudio_message"
-echo "                Use GTK+ v2 library : $enable_gtk2"
-if test "x$enable_gtk2" = "xyes" ; then
 echo "                        Use threads : $enable_threads"
 echo "             Build profile binaries : $enable_profile_build"
-fi
 echo "                   Use pcap library : $want_pcap"
 echo "                   Use zlib library : $zlib_message"
 echo "                   Use pcre library : $pcre_message"
 echo "               Use kerberos library : $krb5_message"
 echo "               Use GNU ADNS library : $adns_message"
-echo "               Use SMI SNMP library : $libsmi"
+echo "                Use SMI MIB library : $libsmi_message"
 echo "             Use GNU crypto library : $gcrypt_message"
 echo "             Use SSL crypto library : $ssl_message"
 echo "           Use IPv6 name resolution : $enable_ipv6"
-echo "               Use Net-SNMP library : $snmp_libs_message"
 echo "                 Use gnutls library : $tls_message"
+echo "                 Use libcap library : $libcap_message"