]> The Tcpdump Group git mirrors - tcpdump/blobdiff - configure
DNS: Sync types with IANA
[tcpdump] / configure
index 90be33f0298cd8ac67e4b5c1a8bbd876d3e9f90f..954550f83ee52fd6553526be1d00650fec53692e 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69.
+# Generated by GNU Autoconf 2.69 for tcpdump 4.99.4-PRE-GIT.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -575,12 +575,12 @@ MFLAGS=
 MAKEFLAGS=
 
 # Identity of this package.
-PACKAGE_NAME=
-PACKAGE_TARNAME=
-PACKAGE_VERSION=
-PACKAGE_STRING=
-PACKAGE_BUGREPORT=
-PACKAGE_URL=
+PACKAGE_NAME='tcpdump'
+PACKAGE_TARNAME='tcpdump'
+PACKAGE_VERSION='4.99.4-PRE-GIT'
+PACKAGE_STRING='tcpdump 4.99.4-PRE-GIT'
+PACKAGE_BUGREPORT=''
+PACKAGE_URL=''
 
 ac_unique_file="tcpdump.c"
 # Factoring default headers for most tests.
@@ -636,6 +636,7 @@ DEPENDENCY_CFLAG
 AR
 RANLIB
 PCAP_CONFIG
+PKG_CONFIG
 LIBOBJS
 EGREP
 GREP
@@ -704,7 +705,7 @@ enable_smb
 with_user
 with_chroot
 with_sandbox_capsicum
-with_system_libpcap
+enable_local_libpcap
 with_crypto
 with_cap_ng
 '
@@ -757,7 +758,7 @@ sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE}'
+docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
 infodir='${datarootdir}/info'
 htmldir='${docdir}'
 dvidir='${docdir}'
@@ -1257,7 +1258,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures this package to adapt to many kinds of systems.
+\`configure' configures tcpdump 4.99.4-PRE-GIT to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1305,7 +1306,7 @@ Fine tuning of the installation directories:
   --infodir=DIR           info documentation [DATAROOTDIR/info]
   --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
   --mandir=DIR            man documentation [DATAROOTDIR/man]
-  --docdir=DIR            documentation root [DATAROOTDIR/doc/PACKAGE]
+  --docdir=DIR            documentation root [DATAROOTDIR/doc/tcpdump]
   --htmldir=DIR           html documentation [DOCDIR]
   --dvidir=DIR            dvi documentation [DOCDIR]
   --pdfdir=DIR            pdf documentation [DOCDIR]
@@ -1321,28 +1322,30 @@ _ACEOF
 fi
 
 if test -n "$ac_init_help"; then
-
+  case $ac_init_help in
+     short | recursive ) echo "Configuration of tcpdump 4.99.4-PRE-GIT:";;
+   esac
   cat <<\_ACEOF
 
 Optional Features:
   --disable-option-checking  ignore unrecognized --enable/--with options
   --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --disable-universal     don't build universal on OS X
-  --enable-smb            enable possibly-buggy SMB printer default=yes
-  --disable-smb           disable possibly-buggy SMB printer
+  --disable-universal     don't build universal on macOS
+  --enable-smb            enable possibly-buggy SMB printer [default=no]
+  --disable-local-libpcap don't look for a local libpcap [default=check for a
+                          local libpcap]
 
 Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
   --without-gcc           don't use gcc
-  --with-smi              link with libsmi (allows to load MIBs on the fly to decode SNMP packets. default=yes
-  --without-smi           don't link with libsmi
+  --with-smi              link with libsmi (allows to load MIBs on the fly to
+                          decode SNMP packets) [default=yes, if available]
   --with-user=USERNAME    drop privileges by default to USERNAME
   --with-chroot=DIRECTORY when dropping privileges, chroot to DIRECTORY
   --with-sandbox-capsicum use Capsicum security functions [default=yes, if
                           available]
-  --with-system-libpcap   don't use local pcap library
   --with-crypto[=DIR]     use OpenSSL/libressl libcrypto (located in directory
                           DIR, if specified) [default=yes, if available]
   --with-cap-ng           use libcap-ng [default=yes, if available]
@@ -1423,7 +1426,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-configure
+tcpdump configure 4.99.4-PRE-GIT
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1785,6 +1788,189 @@ $as_echo "$ac_res" >&6; }
 
 } # ac_fn_c_check_func
 
+# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
+# --------------------------------------------
+# Tries to find the compile-time value of EXPR in a program that includes
+# INCLUDES, setting VAR accordingly. Returns whether the value could be
+# computed
+ac_fn_c_compute_int ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if test "$cross_compiling" = yes; then
+    # Depending upon the size, compute the lo and hi bounds.
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) >= 0)];
+test_array [0] = 0;
+return test_array [0];
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_lo=0 ac_mid=0
+  while :; do
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) <= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_hi=$ac_mid; break
+else
+  as_fn_arith $ac_mid + 1 && ac_lo=$as_val
+                       if test $ac_lo -le $ac_mid; then
+                         ac_lo= ac_hi=
+                         break
+                       fi
+                       as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  done
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) < 0)];
+test_array [0] = 0;
+return test_array [0];
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_hi=-1 ac_mid=-1
+  while :; do
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) >= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_lo=$ac_mid; break
+else
+  as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
+                       if test $ac_mid -le $ac_hi; then
+                         ac_lo= ac_hi=
+                         break
+                       fi
+                       as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  done
+else
+  ac_lo= ac_hi=
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) <= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_hi=$ac_mid
+else
+  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+case $ac_lo in #((
+?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
+'') ac_retval=1 ;;
+esac
+  else
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+static long int longval () { return $2; }
+static unsigned long int ulongval () { return $2; }
+#include <stdio.h>
+#include <stdlib.h>
+int
+main ()
+{
+
+  FILE *f = fopen ("conftest.val", "w");
+  if (! f)
+    return 1;
+  if (($2) < 0)
+    {
+      long int i = longval ();
+      if (i != ($2))
+       return 1;
+      fprintf (f, "%ld", i);
+    }
+  else
+    {
+      unsigned long int i = ulongval ();
+      if (i != ($2))
+       return 1;
+      fprintf (f, "%lu", i);
+    }
+  /* Do not output a trailing newline, as this causes \r\n confusion
+     on some platforms.  */
+  return ferror (f) || fclose (f) != 0;
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  echo >>conftest.val; read $3 <conftest.val; ac_retval=0
+else
+  ac_retval=1
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+rm -f conftest.val
+
+  fi
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_compute_int
+
 # ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
 # ---------------------------------------------
 # Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
@@ -1888,7 +2074,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by $as_me, which was
+It was created by tcpdump $as_me 4.99.4-PRE-GIT, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2237,6 +2423,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
 
+
 ac_aux_dir=
 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
   if test -f "$ac_dir/install-sh"; then
@@ -2410,6 +2597,10 @@ fi
            export CC
     fi
 
+#
+# Try to enable as many C99 features as we can.
+# At minimum, we want C++/C99-style // comments.
+#
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -3199,66 +3390,196 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
+   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C99" >&5
+$as_echo_n "checking for $CC option to accept ISO C99... " >&6; }
+if ${ac_cv_prog_cc_c99+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_cv_prog_cc_c99=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stdlib.h>
+#include <wchar.h>
+#include <stdio.h>
 
+// Check varargs macros.  These examples are taken from C99 6.10.3.5.
+#define debug(...) fprintf (stderr, __VA_ARGS__)
+#define showlist(...) puts (#__VA_ARGS__)
+#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
+static void
+test_varargs_macros (void)
+{
+  int x = 1234;
+  int y = 5678;
+  debug ("Flag");
+  debug ("X = %d\n", x);
+  showlist (The first, second, and third items.);
+  report (x>y, "x is %d but y is %d", x, y);
+}
 
+// Check long long types.
+#define BIG64 18446744073709551615ull
+#define BIG32 4294967295ul
+#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
+#if !BIG_OK
+  your preprocessor is broken;
+#endif
+#if BIG_OK
+#else
+  your preprocessor is broken;
+#endif
+static long long int bignum = -9223372036854775807LL;
+static unsigned long long int ubignum = BIG64;
 
+struct incomplete_array
+{
+  int datasize;
+  double data[];
+};
 
+struct named_init {
+  int number;
+  const wchar_t *name;
+  double average;
+};
 
-    if test "$GCC" = yes ; then
-           #
-           # -Werror forces warnings to be errors.
-           #
-           ac_lbl_cc_force_warning_errors=-Werror
+typedef const char *ccp;
 
-           #
-           # Use -ffloat-store so that, on 32-bit x86, we don't
-           # do 80-bit arithmetic with the FPU; that way we should
-           # get the same results for floating-point calculations
-           # on x86-32 and x86-64.
-           #
+static inline int
+test_restrict (ccp restrict text)
+{
+  // See if C++-style comments work.
+  // Iterate through items via the restricted pointer.
+  // Also check for declarations in for loops.
+  for (unsigned int i = 0; *(text+i) != '\0'; ++i)
+    continue;
+  return 0;
+}
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -ffloat-store option" >&5
-$as_echo_n "checking whether the compiler supports the -ffloat-store option... " >&6; }
-       save_CFLAGS="$CFLAGS"
-       if expr "x-ffloat-store" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -ffloat-store"
-       elif expr "x-ffloat-store" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -ffloat-store"
-       elif expr "x-ffloat-store" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -ffloat-store"
-       else
-           CFLAGS="$CFLAGS -ffloat-store"
-       fi
-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
+// Check varargs and va_copy.
+static void
+test_varargs (const char *format, ...)
+{
+  va_list args;
+  va_start (args, format);
+  va_list args_copy;
+  va_copy (args_copy, args);
+
+  const char *str;
+  int number;
+  float fnumber;
+
+  while (*format)
+    {
+      switch (*format++)
+       {
+       case 's': // string
+         str = va_arg (args_copy, const char *);
+         break;
+       case 'd': // int
+         number = va_arg (args_copy, int);
+         break;
+       case 'f': // float
+         fnumber = va_arg (args_copy, double);
+         break;
+       default:
+         break;
+       }
+    }
+  va_end (args_copy);
+  va_end (args);
+}
 
 int
 main ()
 {
-return 0
+
+  // Check bool.
+  _Bool success = false;
+
+  // Check restrict.
+  if (test_restrict ("String literal") == 0)
+    success = true;
+  char *restrict newvar = "Another string";
+
+  // Check varargs.
+  test_varargs ("s, d' f .", "string", 65, 34.234);
+  test_varargs_macros ();
+
+  // Check flexible array members.
+  struct incomplete_array *ia =
+    malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
+  ia->datasize = 10;
+  for (int i = 0; i < ia->datasize; ++i)
+    ia->data[i] = i * 1.234;
+
+  // Check named initializers.
+  struct named_init ni = {
+    .number = 34,
+    .name = L"Test wide string",
+    .average = 543.34343,
+  };
+
+  ni.number = 58;
+
+  int dynamic_array[ni.number];
+  dynamic_array[ni.number - 1] = 543;
+
+  // work around unused variable warnings
+  return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
+         || dynamic_array[ni.number - 1] != 543);
+
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -D_STDC_C99= -qlanglvl=extc99
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"; then :
+  ac_cv_prog_cc_c99=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext
+  test "x$ac_cv_prog_cc_c99" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
 
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-               CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -ffloat-store"
+fi
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c99" in
+  x)
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+$as_echo "none needed" >&6; } ;;
+  xno)
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+$as_echo "unsupported" >&6; } ;;
+  *)
+    CC="$CC $ac_cv_prog_cc_c99"
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
+$as_echo "$ac_cv_prog_cc_c99" >&6; } ;;
+esac
+if test "x$ac_cv_prog_cc_c99" != xno; then :
 
-else
+fi
 
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-               CFLAGS="$save_CFLAGS"
 
+if test "$ac_cv_prog_cc_c99" = "no"; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: The C compiler does not support C99; there may be compiler errors" >&5
+$as_echo "$as_me: WARNING: The C compiler does not support C99; there may be compiler errors" >&2;}
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 
+
+
+
+    if test "$GCC" = yes ; then
+           #
+           # -Werror forces warnings to be errors.
+           #
+           ac_lbl_cc_force_warning_errors=-Werror
     else
            V_INCLS="$V_INCLS -I/usr/local/include"
            LDFLAGS="$LDFLAGS -L/usr/local/lib"
@@ -3318,7 +3639,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
                    ;;
 
            osf*)
-                   #
+                   #
                    # Presumed to be DEC OSF/1, Digital UNIX, or
                    # Tru64 UNIX.
                    #
@@ -3353,7 +3674,8 @@ $as_echo_n "checking that Ultrix $CC hacks const in prototypes... " >&6; }
                    if ${ac_cv_lbl_cc_const_proto+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <sys/types.h>
 int
@@ -3448,187 +3770,43 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __attribute__" >&5
-$as_echo_n "checking for __attribute__... " >&6; }
-if ${ac_cv___attribute__+:} false; then :
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+$as_echo_n "checking how to run the C preprocessor... " >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+  CPP=
+fi
+if test -z "$CPP"; then
+  if ${ac_cv_prog_CPP+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+      # Double quotes because CPP needs to be expanded
+    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+    do
+      ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+  # <limits.h> exists even on freestanding compilers.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-
-#include <stdlib.h>
-
-static void foo(void) __attribute__ ((noreturn));
-
-static void
-foo(void)
-{
-  exit(1);
-}
-
-int
-main(int argc, char **argv)
-{
-  foo();
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv___attribute__=yes
-else
-  ac_cv___attribute__=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-if test "$ac_cv___attribute__" = "yes"; then
-
-$as_echo "#define HAVE___ATTRIBUTE__ 1" >>confdefs.h
-
-else
-  #
-  # We can't use __attribute__, so we can't use __attribute__((unused)),
-  # so we define _U_ to an empty string.
-  #
-  V_DEFS="$V_DEFS -D_U_=\"\""
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv___attribute__" >&5
-$as_echo "$ac_cv___attribute__" >&6; }
-
-if test "$ac_cv___attribute__" = "yes"; then
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __attribute__((unused)) can be used without warnings" >&5
-$as_echo_n "checking whether __attribute__((unused)) can be used without warnings... " >&6; }
-if ${ac_cv___attribute___unused+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-save_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS $ac_lbl_cc_force_warning_errors"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <stdlib.h>
-#include <stdio.h>
-
-int
-main(int argc  __attribute((unused)), char **argv __attribute((unused)))
-{
-  printf("Hello, world!\n");
-  return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv___attribute___unused=yes
-else
-  ac_cv___attribute___unused=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-CFLAGS="$save_CFLAGS"
-if test "$ac_cv___attribute___unused" = "yes"; then
-  V_DEFS="$V_DEFS -D_U_=\"__attribute__((unused))\""
-else
-  V_DEFS="$V_DEFS -D_U_=\"\""
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv___attribute___unused" >&5
-$as_echo "$ac_cv___attribute___unused" >&6; }
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __attribute__((fallthrough)) can be used without warnings" >&5
-$as_echo_n "checking whether __attribute__((fallthrough)) can be used without warnings... " >&6; }
-if ${ac_cv___attribute___fallthrough+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-save_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS $ac_lbl_cc_force_warning_errors"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <stdio.h>
-
-int
-main(int argc, char **argv)
-{
-       int x = 1;
-       switch (x)
-       {
-       case 1:
-               printf ("x == %d\n", x);
-               __attribute__ ((fallthrough));
-       case 2:
-               printf ("x == %d\n", x);
-               break;
-       default:
-               return 0;
-       }
-       return x;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv___attribute___fallthrough=yes
-else
-  ac_cv___attribute___fallthrough=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-CFLAGS="$save_CFLAGS"
-if test "$ac_cv___attribute___fallthrough" = "yes"; then
-
-$as_echo "#define __ATTRIBUTE___FALLTHROUGH_OK 1" >>confdefs.h
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv___attribute___fallthrough" >&5
-$as_echo "$ac_cv___attribute___fallthrough" >&6; }
-
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-                    Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+                    Syntax error
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
 
 else
   # Broken: fails on valid input.
@@ -3989,7 +4167,7 @@ fi
 done
 
 
-for ac_header in fcntl.h rpc/rpc.h rpc/rpcent.h netdnet/dnetdb.h
+for ac_header in fcntl.h rpc/rpc.h rpc/rpcent.h net/if.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@@ -4002,122 +4180,6 @@ fi
 
 done
 
-for ac_header in net/pfvar.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "net/pfvar.h" "ac_cv_header_net_pfvar_h" "#include <sys/types.h>
-#include <sys/socket.h>
-#include <net/if.h>
-"
-if test "x$ac_cv_header_net_pfvar_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NET_PFVAR_H 1
-_ACEOF
-
-fi
-
-done
-
-if test "$ac_cv_header_net_pfvar_h" = yes; then
-       for ac_header in net/if_pflog.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "net/if_pflog.h" "ac_cv_header_net_if_pflog_h" "#include <sys/types.h>
-       #include <sys/socket.h>
-       #include <net/if.h>
-       #include <net/pfvar.h>
-"
-if test "x$ac_cv_header_net_if_pflog_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NET_IF_PFLOG_H 1
-_ACEOF
-
-fi
-
-done
-
-       if test "$ac_cv_header_net_if_pflog_h" = yes; then
-               LOCALSRC="print-pflog.c $LOCALSRC"
-       fi
-fi
-for ac_header in netinet/if_ether.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "netinet/if_ether.h" "ac_cv_header_netinet_if_ether_h" "#include <sys/types.h>
-#include <sys/socket.h>
-"
-if test "x$ac_cv_header_netinet_if_ether_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NETINET_IF_ETHER_H 1
-_ACEOF
-
-fi
-
-done
-
-if test "$ac_cv_header_netinet_if_ether_h" != yes; then
-       #
-       # The simple test didn't work.
-       # Do we need to include <net/if.h> first?
-       # Unset ac_cv_header_netinet_if_ether_h so we don't
-       # treat the previous failure as a cached value and
-       # suppress the next test.
-       #
-       { $as_echo "$as_me:${as_lineno-$LINENO}: Rechecking with some additional includes" >&5
-$as_echo "$as_me: Rechecking with some additional includes" >&6;}
-       unset ac_cv_header_netinet_if_ether_h
-       for ac_header in netinet/if_ether.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "netinet/if_ether.h" "ac_cv_header_netinet_if_ether_h" "#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-struct mbuf;
-struct rtentry;
-#include <net/if.h>
-"
-if test "x$ac_cv_header_netinet_if_ether_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NETINET_IF_ETHER_H 1
-_ACEOF
-
-fi
-
-done
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-
-$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
-
-fi
-
 
 case "$host_os" in
 
@@ -4226,8 +4288,11 @@ else
 /* end confdefs.h.  */
 
 /* libsmi available check */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
 #include <smi.h>
-main()
+int main()
 {
   int current, revision, age, n;
   const int required = 2;
@@ -4288,14 +4353,12 @@ $as_echo_n "checking whether to enable the possibly-buggy SMB printer... " >&6;
 if test "${enable_smb+set}" = set; then :
   enableval=$enable_smb;
 else
-  enableval=yes
+  enableval=no
 fi
 
 case "$enableval" in
 yes)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: The SMB printer may have exploitable buffer overflows!!!" >&5
-$as_echo "$as_me: WARNING: The SMB printer may have exploitable buffer overflows!!!" >&2;}
 
 $as_echo "#define ENABLE_SMB 1" >>confdefs.h
 
@@ -4369,8 +4432,17 @@ fi
 # XXX - do we need to check for all of them, or are there some that, if
 # present, imply others are present?
 #
-if test ! -z "$with_sandbox-capsicum" && test "$with_sandbox-capsicum" != "no" ; then
-       for ac_func in cap_enter cap_rights_limit cap_ioctls_limit openat
+if test -z "$with_sandbox_capsicum" || test "$with_sandbox_capsicum" != "no" ; then
+       #
+       # First, make sure we have the required header.
+       #
+       ac_fn_c_check_header_mongrel "$LINENO" "sys/capsicum.h" "ac_cv_header_sys_capsicum_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_capsicum_h" = xyes; then :
+
+               #
+               # We do; now make sure we have the required functions.
+               #
+               for ac_func in cap_enter cap_rights_limit cap_ioctls_limit openat
 do :
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -4384,6 +4456,10 @@ else
 fi
 done
 
+
+fi
+
+
        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cap_init in -lcasper" >&5
 $as_echo_n "checking for cap_init in -lcasper... " >&6; }
 if ${ac_cv_lib_casper_cap_init+:} false; then :
@@ -4769,10 +4845,15 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 
+#include <string.h>
 /* AF_INET6 available check */
 #include <sys/types.h>
+#ifdef _WIN32
+#include <ws2tcpip.h>
+#else
 #include <sys/socket.h>
 #include <netinet/in.h>
+#endif
 #ifdef AF_INET6
 void
 foo(struct in6_addr *addr)
@@ -4947,46 +5028,6 @@ if test "$ipv6" = "yes" -a "$ipv6lib" != "none"; then
        fi
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_htoa declaration in netdnet/dnetdb.h" >&5
-$as_echo_n "checking for dnet_htoa declaration in netdnet/dnetdb.h... " >&6; }
-if ${td_cv_decl_netdnet_dnetdb_h_dnet_htoa+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <netdnet/dnetdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "dnet_htoa" >/dev/null 2>&1; then :
-  td_cv_decl_netdnet_dnetdb_h_dnet_htoa=yes
-else
-  td_cv_decl_netdnet_dnetdb_h_dnet_htoa=no
-fi
-rm -f conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $td_cv_decl_netdnet_dnetdb_h_dnet_htoa" >&5
-$as_echo "$td_cv_decl_netdnet_dnetdb_h_dnet_htoa" >&6; }
-if test "$td_cv_decl_netdnet_dnetdb_h_dnet_htoa" = yes; then
-
-$as_echo "#define HAVE_NETDNET_DNETDB_H_DNET_HTOA 1" >>confdefs.h
-
-fi
-
-ac_fn_c_check_func "$LINENO" "vfprintf" "ac_cv_func_vfprintf"
-if test "x$ac_cv_func_vfprintf" = xyes; then :
-  $as_echo "#define HAVE_VFPRINTF 1" >>confdefs.h
-
-else
-  case " $LIBOBJS " in
-  *" vfprintf.$ac_objext "* ) ;;
-  *) LIBOBJS="$LIBOBJS vfprintf.$ac_objext"
- ;;
-esac
-
-fi
-
 ac_fn_c_check_func "$LINENO" "strlcat" "ac_cv_func_strlcat"
 if test "x$ac_cv_func_strlcat" = xyes; then :
   $as_echo "#define HAVE_STRLCAT 1" >>confdefs.h
@@ -5039,6 +5080,19 @@ esac
 
 fi
 
+ac_fn_c_check_func "$LINENO" "getservent" "ac_cv_func_getservent"
+if test "x$ac_cv_func_getservent" = xyes; then :
+  $as_echo "#define HAVE_GETSERVENT 1" >>confdefs.h
+
+else
+  case " $LIBOBJS " in
+  *" getservent.$ac_objext "* ) ;;
+  *) LIBOBJS="$LIBOBJS getservent.$ac_objext"
+ ;;
+esac
+
+fi
+
 ac_fn_c_check_func "$LINENO" "getopt_long" "ac_cv_func_getopt_long"
 if test "x$ac_cv_func_getopt_long" = xyes; then :
   $as_echo "#define HAVE_GETOPT_LONG 1" >>confdefs.h
@@ -5053,7 +5107,7 @@ esac
 fi
 
 
-for ac_func in fork vfork strftime
+for ac_func in fork vfork
 do :
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -5065,179 +5119,82 @@ _ACEOF
 fi
 done
 
-for ac_func in setlinebuf alarm
+for ac_func in setlinebuf
 do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+  ac_fn_c_check_func "$LINENO" "setlinebuf" "ac_cv_func_setlinebuf"
+if test "x$ac_cv_func_setlinebuf" = xyes; then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_SETLINEBUF 1
 _ACEOF
 
 fi
 done
 
 
-needsnprintf=no
-for ac_func in vsnprintf snprintf
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+#
+# Make sure we have vsnprintf() and snprintf(); we require them.
+#
+ac_fn_c_check_func "$LINENO" "vsnprintf" "ac_cv_func_vsnprintf"
+if test "x$ac_cv_func_vsnprintf" = xyes; then :
 
 else
-  needsnprintf=yes
+  as_fn_error $? "vsnprintf() is required but wasn't found" "$LINENO" 5
 fi
-done
 
-if test $needsnprintf = yes; then
-       case " $LIBOBJS " in
-  *" snprintf.$ac_objext "* ) ;;
-  *) LIBOBJS="$LIBOBJS snprintf.$ac_objext"
- ;;
-esac
+ac_fn_c_check_func "$LINENO" "snprintf" "ac_cv_func_snprintf"
+if test "x$ac_cv_func_snprintf" = xyes; then :
 
+else
+  as_fn_error $? "snprintf() is required but wasn't found" "$LINENO" 5
 fi
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int
-main ()
-{
-return *(signal (0, 0)) (0) == 1;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-    if test "$ac_cv_type_signal" = void ; then
-
-$as_echo "#define RETSIGVAL /**/" >>confdefs.h
-
-    else
+#
+# Define HAVE_NO_PRINTF_Z to make it possible to disable test cases that
+# depend on %zu.
+#
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether printf(3) supports the z length modifier" >&5
+$as_echo_n "checking whether printf(3) supports the z length modifier... " >&6; }
+if test "$cross_compiling" = yes; then :
 
-$as_echo "#define RETSIGVAL (0)" >>confdefs.h
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: not while cross-compiling" >&5
+$as_echo "not while cross-compiling" >&6; }
 
-    fi
-    case "$host_os" in
 
-    irix*)
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 
-$as_echo "#define _BSD_SIGNALS 1" >>confdefs.h
 
-           ;;
+#include <stdio.h>
+#include <string.h>
 
-    *)
-                   for ac_func in sigaction
-do :
-  ac_fn_c_check_func "$LINENO" "sigaction" "ac_cv_func_sigaction"
-if test "x$ac_cv_func_sigaction" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGACTION 1
-_ACEOF
+int main()
+{
+  char buf[100];
+  snprintf(buf, sizeof(buf), "%zu", sizeof(buf));
+  return strncmp(buf, "100", sizeof(buf)) ? 1 : 0;
+}
 
-fi
-done
 
-           if test $ac_cv_func_sigaction = no ; then
-                   for ac_func in sigset
-do :
-  ac_fn_c_check_func "$LINENO" "sigset" "ac_cv_func_sigset"
-if test "x$ac_cv_func_sigset" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGSET 1
 _ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
 
-fi
-done
-
-           fi
-           ;;
-    esac
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dnet_htoa" >&5
-$as_echo_n "checking for library containing dnet_htoa... " >&6; }
-if ${ac_cv_search_dnet_htoa+:} false; then :
-  $as_echo_n "(cached) " >&6
 else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
 
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dnet_htoa ();
-int
-main ()
-{
-return dnet_htoa ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' dnet; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_dnet_htoa=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_dnet_htoa+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_dnet_htoa+:} false; then :
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
-else
-  ac_cv_search_dnet_htoa=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dnet_htoa" >&5
-$as_echo "$ac_cv_search_dnet_htoa" >&6; }
-ac_res=$ac_cv_search_dnet_htoa
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+$as_echo "#define HAVE_NO_PRINTF_Z 1" >>confdefs.h
 
-$as_echo "#define HAVE_DNET_HTOA 1" >>confdefs.h
 
 fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
 
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lrpc" >&5
@@ -5342,7 +5299,7 @@ fi
                 LBL_LIBS="$LIBS"
     pfopen=/usr/examples/packetfilter/pfopen.c
     if test -f $pfopen ; then
-           for ac_func in pfopen
+        for ac_func in pfopen
 do :
   ac_fn_c_check_func "$LINENO" "pfopen" "ac_cv_func_pfopen"
 if test "x$ac_cv_func_pfopen" = xyes; then :
@@ -5353,48 +5310,233 @@ _ACEOF
 fi
 done
 
-           if test $ac_cv_func_pfopen = "no" ; then
-                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using $pfopen" >&5
+        if test $ac_cv_func_pfopen = "no" ; then
+            { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using $pfopen" >&5
 $as_echo "Using $pfopen" >&6; }
-                   LIBS="$LIBS $pfopen"
-           fi
+            LIBS="$LIBS $pfopen"
+        fi
     fi
-       libpcap=FAIL
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for local pcap library" >&5
-$as_echo_n "checking for local pcap library... " >&6; }
+    libpcap=FAIL
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to look for a local libpcap" >&5
+$as_echo_n "checking whether to look for a local libpcap... " >&6; }
+    # Check whether --enable-local-libpcap was given.
+if test "${enable_local_libpcap+set}" = set; then :
+  enableval=$enable_local_libpcap;
+else
+  enableval=yes
+fi
 
-# Check whether --with-system-libpcap was given.
-if test "${with_system_libpcap+set}" = set; then :
-  withval=$with_system_libpcap;
-fi
-
-       if test "x$with_system_libpcap" != xyes ; then
-               lastdir=FAIL
-       places=`ls $srcdir/.. | sed -e 's,/$,,' -e "s,^,$srcdir/../," | \
-               egrep '/libpcap-[0-9]+\.[0-9]+(\.[0-9]*)?([ab][0-9]*|-PRE-GIT)?$'`
-       places2=`ls .. | sed -e 's,/$,,' -e "s,^,../," | \
-               egrep '/libpcap-[0-9]+\.[0-9]+(\.[0-9]*)?([ab][0-9]*|-PRE-GIT)?$'`
-       for dir in $places $srcdir/../libpcap ../libpcap $srcdir/libpcap $places2 ; do
-               basedir=`echo $dir | sed -e 's/[ab][0-9]*$//' | \
-                       sed -e 's/-PRE-GIT$//' `
-               if test $lastdir = $basedir ; then
-                                               continue;
-               fi
-               lastdir=$dir
-               if test -r $dir/libpcap.a ; then
-                       libpcap=$dir/libpcap.a
-                       d=$dir
-                                       fi
-               done
-       fi
-    if test $libpcap = FAIL ; then
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+    case "$enableval" in
+
+    no)
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+        #
+        # Don't look for a local libpcap.
+        #
+        using_local_libpcap=no
+        ;;
+
+    *)
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        #
+        # Look for a local pcap library.
+        #
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for local pcap library" >&5
+$as_echo_n "checking for local pcap library... " >&6; }
+        lastdir=FAIL
+        places=`ls $srcdir/.. | sed -e 's,/$,,' -e "s,^,$srcdir/../," | \
+            egrep '/libpcap-[0-9]+\.[0-9]+(\.[0-9]*)?([ab][0-9]*|-PRE-GIT|rc.)?$'`
+        places2=`ls .. | sed -e 's,/$,,' -e "s,^,../," | \
+            egrep '/libpcap-[0-9]+\.[0-9]+(\.[0-9]*)?([ab][0-9]*|-PRE-GIT|rc.)?$'`
+        for dir in $places $srcdir/../libpcap ../libpcap $srcdir/libpcap $places2 ; do
+            basedir=`echo $dir | sed -e 's/[ab][0-9]*$//' | \
+                sed -e 's/-PRE-GIT$//' `
+            if test $lastdir = $basedir ; then
+                                continue;
+            fi
+            lastdir=$dir
+            if test -r $dir/libpcap.a ; then
+                libpcap=$dir/libpcap.a
+                local_pcap_dir=$dir
+                            fi
+        done
+        if test $libpcap = FAIL ; then
+            #
+            # We didn't find a local libpcap.
+            #
+            { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
 $as_echo "not found" >&6; }
+            using_local_libpcap=no;
+        else
+            #
+            # We found a local libpcap.
+            #
+            { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libpcap" >&5
+$as_echo "$libpcap" >&6; }
+            using_local_libpcap=yes
+        fi
+        ;;
+    esac
 
-           #
-           # Look for pcap-config.
-           #
-           if test -n "$ac_tool_prefix"; then
+    if test $using_local_libpcap = no ; then
+        #
+        # We didn't find a local libpcap.
+        # Look for an installed pkg-config.
+        #
+        if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_PKG_CONFIG+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $PKG_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
+if test -n "$PKG_CONFIG"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+$as_echo "$PKG_CONFIG" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_path_PKG_CONFIG"; then
+  ac_pt_PKG_CONFIG=$PKG_CONFIG
+  # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $ac_pt_PKG_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
+if test -n "$ac_pt_PKG_CONFIG"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
+$as_echo "$ac_pt_PKG_CONFIG" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+  if test "x$ac_pt_PKG_CONFIG" = x; then
+    PKG_CONFIG=""
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    PKG_CONFIG=$ac_pt_PKG_CONFIG
+  fi
+else
+  PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
+fi
+
+        if test -n "$PKG_CONFIG" ; then
+            #
+            # We have it.  Are there .pc files for libpcap?
+            #
+            # --exists was introduced in pkg-config 0.4.0; that
+            # dates back to late 2000, so we won't worry about
+            # earlier releases that lack it.
+            #
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether there are .pc files for libpcap" >&5
+$as_echo_n "checking whether there are .pc files for libpcap... " >&6; }
+            if "$PKG_CONFIG" libpcap --exists ; then
+                #
+                # Yes, so we can use pkg-config to get configuration
+                # information for libpcap.
+                #
+                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+                pkg_config_usable=yes
+            else
+                #
+                # No, so we can't use pkg-config to get configuration
+                # information for libpcap.
+                #
+                { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                pkg_config_usable=no
+            fi
+        else
+            #
+            # We don't have it, so we obviously can't use it.
+            #
+            pkg_config_usable=no
+        fi
+        if test "$pkg_config_usable" = "yes" ; then
+            #
+            # Found both - use pkg-config to get the include flags for
+            # libpcap and the flags to link with libpcap.
+            #
+            # Please read section 11.6 "Shell Substitutions"
+            # in the autoconf manual before doing anything
+            # to this that involves quoting.  Especially note
+            # the statement "There is just no portable way to use
+            # double-quoted strings inside double-quoted back-quoted
+            # expressions (pfew!)."
+            #
+            cflags=`"$PKG_CONFIG" libpcap --cflags`
+            V_INCLS="$cflags $V_INCLS"
+            libpcap=`"$PKG_CONFIG" libpcap --libs`
+        else
+            #
+            # No pkg-config
+            # Look for an installed pcap-config.
+            #
+            if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pcap-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pcap-config; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -5492,26 +5634,140 @@ else
   PCAP_CONFIG="$ac_cv_path_PCAP_CONFIG"
 fi
 
-           if test -n "$PCAP_CONFIG" ; then
-               #
-               # Found - use it to get the include flags for
-               # libpcap and the flags to link with libpcap.
-               #
-               # Please read section 11.6 "Shell Substitutions"
-               # in the autoconf manual before doing anything
-               # to this that involves quoting.  Especially note
-               # the statement "There is just no portable way to use
-               # double-quoted strings inside double-quoted back-quoted
-               # expressions (pfew!)."
-               #
-               cflags=`"$PCAP_CONFIG" --cflags`
-               V_INCLS="$cflags $V_INCLS"
-               libpcap=`"$PCAP_CONFIG" --libs`
-           else
-               #
-               # Not found; look for pcap.
-               #
-               { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpcap" >&5
+            if test -n "$PCAP_CONFIG" ; then
+                #
+                # Found - use it to get the include flags for
+                # libpcap and the flags to link with libpcap.
+                #
+                # If this is a vendor-supplied pcap-config, which
+                # we define as being "a pcap-config in /usr/bin
+                # or /usr/ccs/bin" (the latter is for Solaris and
+                # Sun/Oracle Studio), there are some issues.  Work
+                # around them.
+                #
+                if test \( "$PCAP_CONFIG" = "/usr/bin/pcap-config" \) -o \
+                        \( "$PCAP_CONFIG" = "/usr/ccs/bin/pcap-config" \) ; then
+                    #
+                    # It's vendor-supplied.
+                    #
+                    case "$host_os" in
+
+                    darwin*)
+                        #
+                        # This is macOS or another Darwin-based OS.
+                        #
+                        # That means that /usr/bin/pcap-config it
+                        # may provide -I/usr/local/include with --cflags
+                        # and -L/usr/local/lib with --libs, rather than
+                        # pointing to the OS-supplied library and
+                        # Xcode-supplied headers.  Remember that, so we
+                        # ignore those values.
+                        #
+                        _broken_apple_pcap_config=yes
+                        ;;
+
+                    solaris*)
+                        #
+                        # This is Solaris 2 or later, i.e. SunOS 5.x.
+                        #
+                        # At least on Solaris 11; there's /usr/bin/pcap-config,
+                        # which reports -L/usr/lib with --libs, causing
+                        # the 32-bit libraries to be found, and there's
+                        # /usr/bin/{64bitarch}/pcap-config, where {64bitarch}
+                        # is a name for the 64-bit version of the instruction
+                        # set, which reports -L /usr/lib/{64bitarch}, causing
+                        # the 64-bit libraries to be found.
+                        #
+                        # So if we're building 64-bit targets, we replace
+                        # PCAP_CONFIG with /usr/bin/{64bitarch}; we get
+                        # {64bitarch} as the output of "isainfo -n".
+                        #
+                        # Are we building 32-bit or 64-bit?  Get the
+                        # size of void *, and check that.
+                        #
+                        # The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void *" >&5
+$as_echo_n "checking size of void *... " >&6; }
+if ${ac_cv_sizeof_void_p+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void *))" "ac_cv_sizeof_void_p"        "$ac_includes_default"; then :
+
+else
+  if test "$ac_cv_type_void_p" = yes; then
+     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute sizeof (void *)
+See \`config.log' for more details" "$LINENO" 5; }
+   else
+     ac_cv_sizeof_void_p=0
+   fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_void_p" >&5
+$as_echo "$ac_cv_sizeof_void_p" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define SIZEOF_VOID_P $ac_cv_sizeof_void_p
+_ACEOF
+
+
+                        if test ac_cv_sizeof_void_p -eq 8 ; then
+                            isainfo_output=`isainfo -n`
+                            if test ! -z "$isainfo_output" ; then
+                                #
+                                # Success - change PCAP_CONFIG.
+                                #
+                                PCAP_CONFIG=`echo $PCAP_CONFIG | sed "s;/bin/;/bin/$isainfo_output/;"`
+                            fi
+                        fi
+                        ;;
+                    esac
+                fi
+                #
+                # Please read section 11.6 "Shell Substitutions"
+                # in the autoconf manual before doing anything
+                # to this that involves quoting.  Especially note
+                # the statement "There is just no portable way to use
+                # double-quoted strings inside double-quoted back-quoted
+                # expressions (pfew!)."
+                #
+                cflags=`"$PCAP_CONFIG" --cflags`
+                #
+                # Work around macOS (and probably other Darwin) brokenness,
+                # by not adding /usr/local/include if it's from the broken
+                # Apple pcap-config.
+                #
+                if test "$_broken_apple_pcap_config" = "yes" ; then
+                    #
+                    # Strip -I/usr/local/include with sed.
+                    #
+                    cflags=`echo $cflags | sed 's;-I/usr/local/include;;'`
+                fi
+                V_INCLS="$cflags $V_INCLS"
+                libpcap=`"$PCAP_CONFIG" --libs`
+                #
+                # Work around macOS (and probably other Darwin) brokenness,
+                # by not adding /usr/local/lib if it's from the broken
+                # Apple pcap-config.
+                #
+                if test "$_broken_apple_pcap_config" = "yes" ; then
+                    #
+                    # Strip -L/usr/local/lib with sed.
+                    #
+                    libpcap=`echo $libpcap | sed 's;-L/usr/local/lib;;'`
+                fi
+            else
+                #
+                # Not found; look for an installed pcap.
+                #
+                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpcap" >&5
 $as_echo_n "checking for main in -lpcap... " >&6; }
 if ${ac_cv_lib_pcap_main+:} false; then :
   $as_echo_n "(cached) " >&6
@@ -5545,52 +5801,40 @@ if test "x$ac_cv_lib_pcap_main" = xyes; then :
   libpcap="-lpcap"
 fi
 
-               if test $libpcap = FAIL ; then
-                   as_fn_error $? "see the INSTALL doc for more info" "$LINENO" 5
-               fi
-                                                                                                                                                                                                                                                                                                                               { $as_echo "$as_me:${as_lineno-$LINENO}: checking for extraneous pcap header directories" >&5
+                if test $libpcap = FAIL ; then
+                    as_fn_error $? "see the INSTALL doc for more info" "$LINENO" 5
+                fi
+                                                                                                                                                                                                                                                                                                                                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for extraneous pcap header directories" >&5
 $as_echo_n "checking for extraneous pcap header directories... " >&6; }
-               if test \( ! -r /usr/local/include/pcap.h \) -a \
-                       \( ! -r /usr/include/pcap.h \); then
-                   if test -r /usr/local/include/pcap/pcap.h; then
-                       d="/usr/local/include/pcap"
-                   elif test -r /usr/include/pcap/pcap.h; then
-                       d="/usr/include/pcap"
-                   fi
-               fi
-               if test -z "$d" ; then
-                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+                if test \( ! -r /usr/local/include/pcap.h \) -a \
+                        \( ! -r /usr/include/pcap.h \); then
+                    if test -r /usr/local/include/pcap/pcap.h; then
+                        d="/usr/local/include/pcap"
+                    elif test -r /usr/include/pcap/pcap.h; then
+                        d="/usr/include/pcap"
+                    fi
+                fi
+                if test -z "$d" ; then
+                    { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
 $as_echo "not found" >&6; }
-               else
-                   V_INCLS="-I$d $V_INCLS"
-                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: found -- -I$d added" >&5
+                else
+                    V_INCLS="-I$d $V_INCLS"
+                    { $as_echo "$as_me:${as_lineno-$LINENO}: result: found -- -I$d added" >&5
 $as_echo "found -- -I$d added" >&6; }
-               fi
-           fi
-    else
-           V_PCAPDEP=$libpcap
-           places=`ls $srcdir/.. | sed -e 's,/$,,' -e "s,^,$srcdir/../," | \
-                       egrep '/libpcap-[0-9]*.[0-9]*(.[0-9]*)?([ab][0-9]*)?$'`
-           places2=`ls .. | sed -e 's,/$,,' -e "s,^,../," | \
-                       egrep '/libpcap-[0-9]*.[0-9]*(.[0-9]*)?([ab][0-9]*)?$'`
-            pcapH=FAIL
-           if test -r $d/pcap.h; then
-                    pcapH=$d
-           else
-                for dir in $places $srcdir/../libpcap ../libpcap $srcdir/libpcap $places2 ; do
-                   if test -r $dir/pcap.h ; then
-                       pcapH=$dir
-                   fi
-                done
+                fi
             fi
-
-            if test $pcapH = FAIL ; then
-                    as_fn_error $? "cannot find pcap.h: see INSTALL" "$LINENO" 5
-           fi
-            V_INCLS="-I$pcapH $V_INCLS"
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libpcap" >&5
-$as_echo "$libpcap" >&6; }
-           # Extract the first word of "pcap-config", so it can be a program name with args.
+        fi
+    else
+        #
+        # We found a local libpcap.  Add it to the dependencies for
+        # tcpdump.
+        #
+        V_PCAPDEP=$libpcap
+
+        #
+        # Look for its pcap-config script.
+        #
+        # Extract the first word of "pcap-config", so it can be a program name with args.
 set dummy pcap-config; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
@@ -5603,7 +5847,7 @@ else
   ;;
   *)
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $d
+for as_dir in $local_pcap_dir
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
@@ -5630,66 +5874,177 @@ $as_echo "no" >&6; }
 fi
 
 
-           if test -n "$PCAP_CONFIG"; then
-               #
-               # The libpcap directory has a pcap-config script.
-               # Use it to get any additioal libraries needed
-               # to link with the libpcap archive library in
-               # that directory.
-               #
-               # Please read section 11.6 "Shell Substitutions"
-               # in the autoconf manual before doing anything
-               # to this that involves quoting.  Especially note
-               # the statement "There is just no portable way to use
-               # double-quoted strings inside double-quoted back-quoted
-               # expressions (pfew!)."
-               #
-               additional_libs=`"$PCAP_CONFIG" --additional-libs --static`
-               libpcap="$libpcap $additional_libs"
-           fi
-    fi
-    LIBS="$libpcap $LIBS"
-    if ! test -n "$PCAP_CONFIG" ; then
-       #
-       # We don't have pcap-config; find out any additional link flags
-       # we need.  (If we have pcap-config, we assume it tells us what
-       # we need.)
-       #
-       case "$host_os" in
 
-       aix*)
-           #
-           # If libpcap is DLPI-based, we have to use /lib/pse.exp if
-           # present, as we use the STREAMS routines.
-           #
-           # (XXX - true only if we're linking with a static libpcap?)
-           #
-           pseexe="/lib/pse.exp"
-           { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $pseexe" >&5
-$as_echo_n "checking for $pseexe... " >&6; }
-           if test -f $pseexe ; then
-                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-                   LIBS="$LIBS -I:$pseexe"
-           fi
+        if test -n "$PCAP_CONFIG"; then
+            #
+            # We don't want its --cflags or --libs output, because
+            # those presume it's installed.  For the C compiler flags,
+            # we add the source directory for the local libpcap, so
+            # we pick up its header files.
+            #
+            # We do, however, want its additional libraries, as required
+            # when linking statically, because it makes calls to
+            # routines in those libraries, so we'll need to link with
+            # them, because we'll be linking statically with it.
+            #
+            # If it supports --static-pcap-only. use that, as we will be
+            # linking with a static libpcap but won't be linking
+            # statically with any of the libraries on which it depends;
+            # those libraries might not even have static versions
+            # installed.
+            #
+            # That means we need to find out the libraries on which
+            # libpcap directly depends, so we can link with them, but we
+            # don't need to link with the libraries on which those
+            # libraries depend as, on all UN*Xes with which I'm
+            # familiar, the libraries on which a shared library depends
+            # are stored in the library and are automatically loaded by
+            # the run-time linker, without the executable having to be
+            # linked with those libraries.  (This allows a library to be
+            # changed to depend on more libraries without breaking that
+            # library's ABI.)
+            #
+            # The only way to test for that support is to see if the
+            # script contains the string "static-pcap-only"; we can't
+            # try using that flag and checking for errors, as the
+            # versions of the script that didn't have that flag wouldn't
+            # report or return an error for an unsupported command-line
+            # flag.  Those older versions provided, with --static, only
+            # the libraries on which libpcap depends, not the
+            # dependencies of those libraries; the versions with
+            # --static-pcap-only provide all the dependencies with
+            # --static, for the benefit of programs that are completely
+            # statically linked, and provide only the direct
+            # dependencies with --static-pcap-only.
+            #
+            if grep -s -q "static-pcap-only" "$PCAP_CONFIG"
+            then
+                static_opt="--static-pcap-only"
+            else
+                static_opt="--static"
+            fi
+            V_INCLS="-I$local_pcap_dir $V_INCLS"
+            additional_libs=`"$PCAP_CONFIG" $static_opt --additional-libs`
+            libpcap="$libpcap $additional_libs"
+        else
+            #
+            # It doesn't have a pcap-config script.
+            # Make sure it has a pcap.h file.
+            #
+            places=`ls $srcdir/.. | sed -e 's,/$,,' -e "s,^,$srcdir/../," | \
+                egrep '/libpcap-[0-9]*.[0-9]*(.[0-9]*)?([ab][0-9]*)?$'`
+            places2=`ls .. | sed -e 's,/$,,' -e "s,^,../," | \
+                egrep '/libpcap-[0-9]*.[0-9]*(.[0-9]*)?([ab][0-9]*)?$'`
+            pcapH=FAIL
+            if test -r $local_pcap_dir/pcap.h; then
+                pcapH=$local_pcap_dir
+            else
+                for dir in $places $srcdir/../libpcap ../libpcap $srcdir/libpcap $places2 ; do
+                    if test -r $dir/pcap.h ; then
+                        pcapH=$dir
+                    fi
+                done
+            fi
 
-           #
-           # If libpcap is BPF-based, we need "-lodm" and "-lcfg", as
-           # we use them to load the BPF module.
-           #
-           # (XXX - true only if we're linking with a static libpcap?)
-           #
-           LIBS="$LIBS -lodm -lcfg"
-           ;;
-       esac
+            if test $pcapH = FAIL ; then
+                as_fn_error $? "cannot find pcap.h: see INSTALL" "$LINENO" 5
+            fi
+
+            #
+            # Force the compiler to look for header files in the
+            # directory containing pcap.h.
+            #
+            V_INCLS="-I$pcapH $V_INCLS"
+        fi
     fi
 
-                                    ac_fn_c_check_func "$LINENO" "pcap_loop" "ac_cv_func_pcap_loop"
-if test "x$ac_cv_func_pcap_loop" = xyes; then :
+    if test -z "$PKG_CONFIG" -a -z "$PCAP_CONFIG"; then
+        #
+        # We don't have pkg-config or pcap-config; find out any additional
+        # link flags we need.  (If we have pkg-config or pcap-config, we
+        # assume it tells us what we need.)
+        #
+        case "$host_os" in
+
+        aix*)
+            #
+            # If libpcap is DLPI-based, we have to use /lib/pse.exp if
+            # present, as we use the STREAMS routines.
+            #
+            # (XXX - true only if we're linking with a static libpcap?)
+            #
+            pseexe="/lib/pse.exp"
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $pseexe" >&5
+$as_echo_n "checking for $pseexe... " >&6; }
+            if test -f $pseexe ; then
+                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+                LIBS="$LIBS -I:$pseexe"
+            fi
+
+            #
+            # If libpcap is BPF-based, we need "-lodm" and "-lcfg", as
+            # we use them to load the BPF module.
+            #
+            # (XXX - true only if we're linking with a static libpcap?)
+            #
+            LIBS="$LIBS -lodm -lcfg"
+            ;;
+
+       solaris*)
+            # libdlpi is needed for Solaris 11 and later.
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlpi_walk in -ldlpi" >&5
+$as_echo_n "checking for dlpi_walk in -ldlpi... " >&6; }
+if ${ac_cv_lib_dlpi_dlpi_walk+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldlpi -L/lib $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlpi_walk ();
+int
+main ()
+{
+return dlpi_walk ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_dlpi_dlpi_walk=yes
+else
+  ac_cv_lib_dlpi_dlpi_walk=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dlpi_dlpi_walk" >&5
+$as_echo "$ac_cv_lib_dlpi_dlpi_walk" >&6; }
+if test "x$ac_cv_lib_dlpi_dlpi_walk" = xyes; then :
+  LIBS="$LIBS -ldlpi" LDFLAGS="-L/lib $LDFLAGS"
+fi
+
+            ;;
+        esac
+    fi
+
+    LIBS="$libpcap $LIBS"
+
+                                    ac_fn_c_check_func "$LINENO" "pcap_loop" "ac_cv_func_pcap_loop"
+if test "x$ac_cv_func_pcap_loop" = xyes; then :
 
 else
 
-           as_fn_error $? "This is a bug, please follow the guidelines in CONTRIBUTING and include the
+        as_fn_error $? "This is a bug, please follow the guidelines in CONTRIBUTING.md and include the
 config.log file in your report.  If you have downloaded libpcap from
 tcpdump.org, and built it yourself, please also include the config.log
 file from the libpcap source directory, the Makefile from the libpcap
@@ -5709,11 +6064,12 @@ fi
 #
 # You are in a twisty little maze of UN*Xes, all different.
 # Some might not have ether_ntohost().
-# Some might have it, but not declare it in any header file.
-# Some might have it, but declare it in <netinet/if_ether.h>.
-# Some might have it, but declare it in <netinet/ether.h>
-# (And some might have it but document it as something declared in
-# <netinet/ethernet.h>, although <netinet/if_ether.h> appears to work.)
+# Some might have it and declare it in <net/ethernet.h>.
+# Some might have it and declare it in <netinet/ether.h>
+# Some might have it and declare it in <sys/ethernet.h>.
+# Some might have it and declare it in <arpa/inet.h>.
+# Some might have it and declare it in <netinet/if_ether.h>.
+# Some might have it and not declare it in any header file.
 #
 # Before you is a C compiler.
 #
@@ -5738,6 +6094,8 @@ else
 /* end confdefs.h.  */
 
                #include <netdb.h>
+               #include <netinet/ether.h>
+               #include <stdlib.h>
                #include <sys/types.h>
                #include <sys/param.h>
                #include <sys/socket.h>
@@ -5777,27 +6135,46 @@ done
 if test "$ac_cv_func_ether_ntohost" = yes -a \
     "$ac_cv_buggy_ether_ntohost" = "no"; then
        #
-       # OK, we have ether_ntohost().  Do we have <netinet/if_ether.h>?
+       # OK, we have ether_ntohost().  Is it declared in <net/ethernet.h>?
+       #
+       # This test fails if we don't have <net/ethernet.h> or if we do
+       # but it doesn't declare ether_ntohost().
+       #
+       ac_fn_c_check_decl "$LINENO" "ether_ntohost" "ac_cv_have_decl_ether_ntohost" "
+#include <net/ethernet.h>
+
+"
+if test "x$ac_cv_have_decl_ether_ntohost" = xyes; then :
+
+
+$as_echo "#define NET_ETHERNET_H_DECLARES_ETHER_NTOHOST /**/" >>confdefs.h
+
+
+fi
+
+       #
+       # Did that succeed?
        #
-       if test "$ac_cv_header_netinet_if_ether_h" = yes; then
+       if test "$ac_cv_have_decl_ether_ntohost" != yes; then
+               #
+               # No, how about <netinet/ether.h>, as on Linux?
+               #
+               # This test fails if we don't have <netinet/ether.h>
+               # or if we do but it doesn't declare ether_ntohost().
                #
-               # Yes.  Does it declare ether_ntohost()?
+               # Unset ac_cv_have_decl_ether_ntohost so we don't
+               # treat the previous failure as a cached value and
+               # suppress the next test.
                #
+               unset ac_cv_have_decl_ether_ntohost
                ac_fn_c_check_decl "$LINENO" "ether_ntohost" "ac_cv_have_decl_ether_ntohost" "
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-struct mbuf;
-struct rtentry;
-#include <net/if.h>
-#include <netinet/if_ether.h>
+#include <netinet/ether.h>
 
 "
 if test "x$ac_cv_have_decl_ether_ntohost" = xyes; then :
 
 
-$as_echo "#define NETINET_IF_ETHER_H_DECLARES_ETHER_NTOHOST /**/" >>confdefs.h
+$as_echo "#define NETINET_ETHER_H_DECLARES_ETHER_NTOHOST /**/" >>confdefs.h
 
 
 fi
        #
        if test "$ac_cv_have_decl_ether_ntohost" != yes; then
                #
-               # No, how about <netinet/ether.h>, as on Linux?
+               # No, how about <sys/ethernet.h>, as on Solaris 10
+               # and later?
                #
-               for ac_header in netinet/ether.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "netinet/ether.h" "ac_cv_header_netinet_ether_h" "$ac_includes_default"
-if test "x$ac_cv_header_netinet_ether_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NETINET_ETHER_H 1
-_ACEOF
+               # This test fails if we don't have <sys/ethernet.h>
+               # or if we do but it doesn't declare ether_ntohost().
+               #
+               # Unset ac_cv_have_decl_ether_ntohost so we don't
+               # treat the previous failure as a cached value and
+               # suppress the next test.
+               #
+               unset ac_cv_have_decl_ether_ntohost
+               ac_fn_c_check_decl "$LINENO" "ether_ntohost" "ac_cv_have_decl_ether_ntohost" "
+#include <sys/ethernet.h>
 
-fi
+"
+if test "x$ac_cv_have_decl_ether_ntohost" = xyes; then :
 
-done
 
-               if test "$ac_cv_header_netinet_ether_h" = yes; then
-                       #
-                       # We have it - does it declare ether_ntohost()?
-                       # Unset ac_cv_have_decl_ether_ntohost so we don't
-                       # treat the previous failure as a cached value and
-                       # suppress the next test.
-                       #
-                       unset ac_cv_have_decl_ether_ntohost
-                       ac_fn_c_check_decl "$LINENO" "ether_ntohost" "ac_cv_have_decl_ether_ntohost" "
-#include <netinet/ether.h>
+$as_echo "#define SYS_ETHERNET_H_DECLARES_ETHER_NTOHOST /**/" >>confdefs.h
+
+
+fi
+
+       fi
+       #
+       # Did that succeed?
+       #
+       if test "$ac_cv_have_decl_ether_ntohost" != yes; then
+               #
+               # No, how about <arpa/inet.h>, as in AIX?
+               #
+               # This test fails if we don't have <arpa/inet.h>
+               # (if we have ether_ntohost(), we should have
+               # networking, and if we have networking, we should
+               # have <arpa/inet.h>) or if we do but it doesn't
+               # declare ether_ntohost().
+               #
+               # Unset ac_cv_have_decl_ether_ntohost so we don't
+               # treat the previous failure as a cached value and
+               # suppress the next test.
+               #
+               unset ac_cv_have_decl_ether_ntohost
+               ac_fn_c_check_decl "$LINENO" "ether_ntohost" "ac_cv_have_decl_ether_ntohost" "
+#include <arpa/inet.h>
 
 "
 if test "x$ac_cv_have_decl_ether_ntohost" = xyes; then :
 
 
-$as_echo "#define NETINET_ETHER_H_DECLARES_ETHER_NTOHOST /**/" >>confdefs.h
+$as_echo "#define ARPA_INET_H_DECLARES_ETHER_NTOHOST /**/" >>confdefs.h
 
 
 fi
 
-               fi
        fi
        #
-       # Is ether_ntohost() declared?
+       # Did that succeed?
        #
        if test "$ac_cv_have_decl_ether_ntohost" != yes; then
                #
-               # No, we'll have to declare it ourselves.
-               # Do we have "struct ether_addr"?
+               # No, how about <netinet/if_ether.h>?
+               # On some platforms, it requires <net/if.h> and
+               # <netinet/in.h>, and we always include it with
+               # both of them, so test it with both of them.
                #
-               ac_fn_c_check_type "$LINENO" "struct ether_addr" "ac_cv_type_struct_ether_addr" "
+               # This test fails if we don't have <netinet/if_ether.h>
+               # and the headers we include before it, or if we do but
+               # <netinet/if_ether.h> doesn't declare ether_hostton().
+               #
+               # Unset ac_cv_have_decl_ether_ntohost so we don't
+               # treat the previous failure as a cached value and
+               # suppress the next test.
+               #
+               unset ac_cv_have_decl_ether_ntohost
+               ac_fn_c_check_decl "$LINENO" "ether_ntohost" "ac_cv_have_decl_ether_ntohost" "
 #include <sys/types.h>
 #include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-struct mbuf;
-struct rtentry;
 #include <net/if.h>
+#include <netinet/in.h>
 #include <netinet/if_ether.h>
 
 "
-if test "x$ac_cv_type_struct_ether_addr" = xyes; then :
+if test "x$ac_cv_have_decl_ether_ntohost" = xyes; then :
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_ETHER_ADDR 1
-_ACEOF
+
+$as_echo "#define NETINET_IF_ETHER_H_DECLARES_ETHER_NTOHOST /**/" >>confdefs.h
 
 
 fi
 
+       fi
+       #
+       # After all that, is ether_ntohost() declared?
+       #
+       if test "$ac_cv_have_decl_ether_ntohost" = yes; then
+               #
+               # Yes.
+               #
 
-$as_echo "#define HAVE_DECL_ETHER_NTOHOST 0" >>confdefs.h
+$as_echo "#define HAVE_DECL_ETHER_NTOHOST 1" >>confdefs.h
 
        else
+               #
+               # No, we'll have to declare it ourselves.
+               # Do we have "struct ether_addr" if we include
+               # <netinet/if_ether.h>?
+               #
+               ac_fn_c_check_type "$LINENO" "struct ether_addr" "ac_cv_type_struct_ether_addr" "
+                       #include <sys/types.h>
+                       #include <sys/socket.h>
+                       #include <net/if.h>
+                       #include <netinet/in.h>
+                       #include <netinet/if_ether.h>
 
-$as_echo "#define HAVE_DECL_ETHER_NTOHOST 1" >>confdefs.h
+"
+if test "x$ac_cv_type_struct_ether_addr" = xyes; then :
 
-       fi
-fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_ETHER_ADDR 1
+_ACEOF
 
-# libdlpi is needed for Solaris 11 and later.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlpi_walk in -ldlpi" >&5
-$as_echo_n "checking for dlpi_walk in -ldlpi... " >&6; }
-if ${ac_cv_lib_dlpi_dlpi_walk+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldlpi -L/lib $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
 
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlpi_walk ();
-int
-main ()
-{
-return dlpi_walk ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dlpi_dlpi_walk=yes
-else
-  ac_cv_lib_dlpi_dlpi_walk=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dlpi_dlpi_walk" >&5
-$as_echo "$ac_cv_lib_dlpi_dlpi_walk" >&6; }
-if test "x$ac_cv_lib_dlpi_dlpi_walk" = xyes; then :
-  LIBS="$LIBS -ldlpi" LDFLAGS="-L/lib $LDFLAGS"
 fi
 
+       fi
+fi
 
 ac_fn_c_check_func "$LINENO" "pcap_list_datalinks" "ac_cv_func_pcap_list_datalinks"
 if test "x$ac_cv_func_pcap_list_datalinks" = xyes; then :
@@ -5953,16 +6341,6 @@ esac
 
 fi
 
-for ac_func in pcap_set_datalink
-do :
-  ac_fn_c_check_func "$LINENO" "pcap_set_datalink" "ac_cv_func_pcap_set_datalink"
-if test "x$ac_cv_func_pcap_set_datalink" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_PCAP_SET_DATALINK 1
-_ACEOF
-
-fi
-done
 
 ac_fn_c_check_func "$LINENO" "pcap_datalink_name_to_val" "ac_cv_func_pcap_datalink_name_to_val"
 if test "x$ac_cv_func_pcap_datalink_name_to_val" = xyes; then :
@@ -5999,33 +6377,28 @@ esac
 fi
 
 
-for ac_func in pcap_breakloop
+for ac_func in pcap_set_datalink
 do :
-  ac_fn_c_check_func "$LINENO" "pcap_breakloop" "ac_cv_func_pcap_breakloop"
-if test "x$ac_cv_func_pcap_breakloop" = xyes; then :
+  ac_fn_c_check_func "$LINENO" "pcap_set_datalink" "ac_cv_func_pcap_set_datalink"
+if test "x$ac_cv_func_pcap_set_datalink" = xyes; then :
   cat >>confdefs.h <<_ACEOF
-#define HAVE_PCAP_BREAKLOOP 1
+#define HAVE_PCAP_SET_DATALINK 1
 _ACEOF
 
 fi
 done
 
 
-ac_fn_c_check_func "$LINENO" "pcap_dump_ftell" "ac_cv_func_pcap_dump_ftell"
-if test "x$ac_cv_func_pcap_dump_ftell" = xyes; then :
-
-$as_echo "#define HAVE_PCAP_DUMP_FTELL 1" >>confdefs.h
-
-else
-
-           case " $LIBOBJS " in
-  *" pcap_dump_ftell.$ac_objext "* ) ;;
-  *) LIBOBJS="$LIBOBJS pcap_dump_ftell.$ac_objext"
- ;;
-esac
-
+for ac_func in pcap_breakloop
+do :
+  ac_fn_c_check_func "$LINENO" "pcap_breakloop" "ac_cv_func_pcap_breakloop"
+if test "x$ac_cv_func_pcap_breakloop" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_PCAP_BREAKLOOP 1
+_ACEOF
 
 fi
+done
 
 
 #
@@ -6081,25 +6454,12 @@ fi
 # Check for a miscellaneous collection of functions which we use
 # if we have them.
 #
-for ac_func in pcap_findalldevs pcap_dump_flush pcap_lib_version
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-done
-
-for ac_func in pcap_setdirection pcap_set_immediate_mode pcap_dump_ftell64
+for ac_func in pcap_findalldevs
 do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+  ac_fn_c_check_func "$LINENO" "pcap_findalldevs" "ac_cv_func_pcap_findalldevs"
+if test "x$ac_cv_func_pcap_findalldevs" = xyes; then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_PCAP_FINDALLDEVS 1
 _ACEOF
 
 fi
@@ -6121,6 +6481,17 @@ fi
 
     CPPFLAGS="$savedcppflags"
 fi
+for ac_func in pcap_dump_flush pcap_lib_version
+do :
+  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
 
 if test $ac_cv_func_pcap_lib_version = "no" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pcap_version is defined by libpcap" >&5
@@ -6158,28 +6529,66 @@ $as_echo "#define HAVE_PCAP_VERSION 1" >>confdefs.h
 $as_echo "no" >&6; }
     fi
 fi
-
-#
-# Check for special debugging functions
-#
-for ac_func in pcap_set_parser_debug
+for ac_func in pcap_setdirection pcap_set_immediate_mode pcap_dump_ftell64
 do :
-  ac_fn_c_check_func "$LINENO" "pcap_set_parser_debug" "ac_cv_func_pcap_set_parser_debug"
-if test "x$ac_cv_func_pcap_set_parser_debug" = xyes; then :
+  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
   cat >>confdefs.h <<_ACEOF
-#define HAVE_PCAP_SET_PARSER_DEBUG 1
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
 _ACEOF
 
 fi
 done
 
-if test "$ac_cv_func_pcap_set_parser_debug" = "no" ; then
-       #
-       # OK, we don't have pcap_set_parser_debug() to set the libpcap
-       # filter expression parser debug flag; can we directly set the
-       # flag?
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pcap_debug is defined by libpcap" >&5
-$as_echo_n "checking whether pcap_debug is defined by libpcap... " >&6; }
+for ac_func in pcap_open pcap_findalldevs_ex
+do :
+  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+ac_fn_c_check_func "$LINENO" "pcap_dump_ftell" "ac_cv_func_pcap_dump_ftell"
+if test "x$ac_cv_func_pcap_dump_ftell" = xyes; then :
+  $as_echo "#define HAVE_PCAP_DUMP_FTELL 1" >>confdefs.h
+
+else
+  case " $LIBOBJS " in
+  *" pcap_dump_ftell.$ac_objext "* ) ;;
+  *) LIBOBJS="$LIBOBJS pcap_dump_ftell.$ac_objext"
+ ;;
+esac
+
+fi
+
+
+
+#
+# Check for special debugging functions
+#
+for ac_func in pcap_set_parser_debug
+do :
+  ac_fn_c_check_func "$LINENO" "pcap_set_parser_debug" "ac_cv_func_pcap_set_parser_debug"
+if test "x$ac_cv_func_pcap_set_parser_debug" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_PCAP_SET_PARSER_DEBUG 1
+_ACEOF
+
+fi
+done
+
+if test "$ac_cv_func_pcap_set_parser_debug" = "no" ; then
+       #
+       # OK, we don't have pcap_set_parser_debug() to set the libpcap
+       # filter expression parser debug flag; can we directly set the
+       # flag?
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pcap_debug is defined by libpcap" >&5
+$as_echo_n "checking whether pcap_debug is defined by libpcap... " >&6; }
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -6451,56 +6860,6 @@ $as_echo "#define u_int64_t uint64_t" >>confdefs.h
 fi
 
 
-#
-# Check for some headers introduced in later versions of libpcap
-# and used by some printers.
-#
-# Those headers might use the {u_}intN_t types, so we must do this
-# after we check for what's needed to get them defined.
-#
-savedcppflags="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $V_INCLS"
-for ac_header in pcap/bluetooth.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "pcap/bluetooth.h" "ac_cv_header_pcap_bluetooth_h" "#include \"netdissect-stdinc.h\"
-"
-if test "x$ac_cv_header_pcap_bluetooth_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_PCAP_BLUETOOTH_H 1
-_ACEOF
-
-fi
-
-done
-
-for ac_header in pcap/nflog.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "pcap/nflog.h" "ac_cv_header_pcap_nflog_h" "#include \"netdissect-stdinc.h\"
-"
-if test "x$ac_cv_header_pcap_nflog_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_PCAP_NFLOG_H 1
-_ACEOF
-
-fi
-
-done
-
-for ac_header in pcap/usb.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "pcap/usb.h" "ac_cv_header_pcap_usb_h" "#include \"netdissect-stdinc.h\"
-"
-if test "x$ac_cv_header_pcap_usb_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_PCAP_USB_H 1
-_ACEOF
-
-fi
-
-done
-
-CPPFLAGS="$savedcppflags"
-
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ranlib; ac_word=$2
@@ -6696,67 +7055,91 @@ rm -f os-proto.h
            #
            if test "$ac_lbl_cc_dont_try_gcc_dashW" != yes; then
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler fails when given an unknown warning option" >&5
-$as_echo_n "checking whether the compiler fails when given an unknown warning option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -W option" >&5
+$as_echo_n "checking whether the compiler supports the -W option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       CFLAGS="$CFLAGS -Wxyzzy-this-will-never-succeed-xyzzy"
+       CFLAGS="$CFLAGS -W"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-               #
-               # We're assuming this is clang, where
-               # -Werror=unknown-warning-option is the appropriate
-               # option to force the compiler to fail.
-               #
-               ac_lbl_unknown_warning_option_error="-Werror=unknown-warning-option"
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+               CFLAGS="$save_CFLAGS"
+               V_CCOPT="$V_CCOPT -W"
 
 else
 
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+               CFLAGS="$save_CFLAGS"
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-       CFLAGS="$save_CFLAGS"
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wall option" >&5
 $as_echo_n "checking whether the compiler supports the -Wall option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wall" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wall"
-       elif expr "x-Wall" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wall"
-       elif expr "x-Wall" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wall"
-       else
-           CFLAGS="$CFLAGS -Wall"
-       fi
+       CFLAGS="$CFLAGS -Wall"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
@@ -6773,40 +7156,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wmissing-prototypes option" >&5
-$as_echo_n "checking whether the compiler supports the -Wmissing-prototypes option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wassign-enum option" >&5
+$as_echo_n "checking whether the compiler supports the -Wassign-enum option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wmissing-prototypes" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wmissing-prototypes"
-       elif expr "x-Wmissing-prototypes" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wmissing-prototypes"
-       elif expr "x-Wmissing-prototypes" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wmissing-prototypes"
-       else
-           CFLAGS="$CFLAGS -Wmissing-prototypes"
-       fi
+       CFLAGS="$CFLAGS -Wassign-enum"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wmissing-prototypes"
+               V_CCOPT="$V_CCOPT -Wassign-enum"
 
 else
 
@@ -6816,40 +7208,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wstrict-prototypes option" >&5
-$as_echo_n "checking whether the compiler supports the -Wstrict-prototypes option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wcast-qual option" >&5
+$as_echo_n "checking whether the compiler supports the -Wcast-qual option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wstrict-prototypes" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wstrict-prototypes"
-       elif expr "x-Wstrict-prototypes" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wstrict-prototypes"
-       elif expr "x-Wstrict-prototypes" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wstrict-prototypes"
-       else
-           CFLAGS="$CFLAGS -Wstrict-prototypes"
-       fi
+       CFLAGS="$CFLAGS -Wcast-qual"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wstrict-prototypes"
+               V_CCOPT="$V_CCOPT -Wcast-qual"
 
 else
 
@@ -6859,40 +7260,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wwrite-strings option" >&5
-$as_echo_n "checking whether the compiler supports the -Wwrite-strings option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wmissing-prototypes option" >&5
+$as_echo_n "checking whether the compiler supports the -Wmissing-prototypes option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wwrite-strings" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wwrite-strings"
-       elif expr "x-Wwrite-strings" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wwrite-strings"
-       elif expr "x-Wwrite-strings" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wwrite-strings"
-       else
-           CFLAGS="$CFLAGS -Wwrite-strings"
-       fi
+       CFLAGS="$CFLAGS -Wmissing-prototypes"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wwrite-strings"
+               V_CCOPT="$V_CCOPT -Wmissing-prototypes"
 
 else
 
@@ -6902,40 +7312,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wpointer-arith option" >&5
-$as_echo_n "checking whether the compiler supports the -Wpointer-arith option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wmissing-variable-declarations option" >&5
+$as_echo_n "checking whether the compiler supports the -Wmissing-variable-declarations option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wpointer-arith" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wpointer-arith"
-       elif expr "x-Wpointer-arith" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wpointer-arith"
-       elif expr "x-Wpointer-arith" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wpointer-arith"
-       else
-           CFLAGS="$CFLAGS -Wpointer-arith"
-       fi
+       CFLAGS="$CFLAGS -Wmissing-variable-declarations"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wpointer-arith"
+               V_CCOPT="$V_CCOPT -Wmissing-variable-declarations"
 
 else
 
@@ -6945,40 +7364,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wcast-qual option" >&5
-$as_echo_n "checking whether the compiler supports the -Wcast-qual option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wold-style-definition option" >&5
+$as_echo_n "checking whether the compiler supports the -Wold-style-definition option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wcast-qual" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wcast-qual"
-       elif expr "x-Wcast-qual" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wcast-qual"
-       elif expr "x-Wcast-qual" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wcast-qual"
-       else
-           CFLAGS="$CFLAGS -Wcast-qual"
-       fi
+       CFLAGS="$CFLAGS -Wold-style-definition"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wcast-qual"
+               V_CCOPT="$V_CCOPT -Wold-style-definition"
 
 else
 
@@ -6988,40 +7416,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wshadow option" >&5
-$as_echo_n "checking whether the compiler supports the -Wshadow option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wpedantic option" >&5
+$as_echo_n "checking whether the compiler supports the -Wpedantic option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wshadow" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wshadow"
-       elif expr "x-Wshadow" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wshadow"
-       elif expr "x-Wshadow" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wshadow"
-       else
-           CFLAGS="$CFLAGS -Wshadow"
-       fi
+       CFLAGS="$CFLAGS -Wpedantic"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wshadow"
+               V_CCOPT="$V_CCOPT -Wpedantic"
 
 else
 
@@ -7031,40 +7468,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wdeclaration-after-statement option" >&5
-$as_echo_n "checking whether the compiler supports the -Wdeclaration-after-statement option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wpointer-arith option" >&5
+$as_echo_n "checking whether the compiler supports the -Wpointer-arith option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wdeclaration-after-statement" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wdeclaration-after-statement"
-       elif expr "x-Wdeclaration-after-statement" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wdeclaration-after-statement"
-       elif expr "x-Wdeclaration-after-statement" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wdeclaration-after-statement"
-       else
-           CFLAGS="$CFLAGS -Wdeclaration-after-statement"
-       fi
+       CFLAGS="$CFLAGS -Wpointer-arith"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wdeclaration-after-statement"
+               V_CCOPT="$V_CCOPT -Wpointer-arith"
 
 else
 
@@ -7074,40 +7520,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wpedantic option" >&5
-$as_echo_n "checking whether the compiler supports the -Wpedantic option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wpointer-sign option" >&5
+$as_echo_n "checking whether the compiler supports the -Wpointer-sign option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wpedantic" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wpedantic"
-       elif expr "x-Wpedantic" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wpedantic"
-       elif expr "x-Wpedantic" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wpedantic"
-       else
-           CFLAGS="$CFLAGS -Wpedantic"
-       fi
+       CFLAGS="$CFLAGS -Wpointer-sign"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wpedantic"
+               V_CCOPT="$V_CCOPT -Wpointer-sign"
 
 else
 
@@ -7117,40 +7572,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wold-style-definition option" >&5
-$as_echo_n "checking whether the compiler supports the -Wold-style-definition option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wshadow option" >&5
+$as_echo_n "checking whether the compiler supports the -Wshadow option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wold-style-definition" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wold-style-definition"
-       elif expr "x-Wold-style-definition" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wold-style-definition"
-       elif expr "x-Wold-style-definition" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wold-style-definition"
-       else
-           CFLAGS="$CFLAGS -Wold-style-definition"
-       fi
+       CFLAGS="$CFLAGS -Wshadow"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wold-style-definition"
+               V_CCOPT="$V_CCOPT -Wshadow"
 
 else
 
@@ -7160,40 +7624,49 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wused-but-marked-unused option" >&5
-$as_echo_n "checking whether the compiler supports the -Wused-but-marked-unused option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wsign-compare option" >&5
+$as_echo_n "checking whether the compiler supports the -Wsign-compare option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wused-but-marked-unused" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wused-but-marked-unused"
-       elif expr "x-Wused-but-marked-unused" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wused-but-marked-unused"
-       elif expr "x-Wused-but-marked-unused" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wused-but-marked-unused"
-       else
-           CFLAGS="$CFLAGS -Wused-but-marked-unused"
-       fi
+       CFLAGS="$CFLAGS -Wsign-compare"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wused-but-marked-unused"
+               V_CCOPT="$V_CCOPT -Wsign-compare"
 
 else
 
@@ -7203,40 +7676,101 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -W option" >&5
-$as_echo_n "checking whether the compiler supports the -W option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wstrict-prototypes option" >&5
+$as_echo_n "checking whether the compiler supports the -Wstrict-prototypes option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-W" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -W"
-       elif expr "x-W" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -W"
-       elif expr "x-W" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -W"
-       else
-           CFLAGS="$CFLAGS -W"
-       fi
+       CFLAGS="$CFLAGS -Wstrict-prototypes"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
+int main(void) { return 0; }
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
 
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+               CFLAGS="$save_CFLAGS"
+               V_CCOPT="$V_CCOPT -Wstrict-prototypes"
+
+else
+
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+               CFLAGS="$save_CFLAGS"
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
+
+
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wunreachable-code-return option" >&5
+$as_echo_n "checking whether the compiler supports the -Wunreachable-code-return option... " >&6; }
+       save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -Wunreachable-code-return"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -W"
+               V_CCOPT="$V_CCOPT -Wunreachable-code-return"
 
 else
 
@@ -7246,40 +7780,101 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wassign-enum option" >&5
-$as_echo_n "checking whether the compiler supports the -Wassign-enum option... " >&6; }
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wused-but-marked-unused option" >&5
+$as_echo_n "checking whether the compiler supports the -Wused-but-marked-unused option... " >&6; }
        save_CFLAGS="$CFLAGS"
-       if expr "x-Wassign-enum" : "x-W.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS $ac_lbl_unknown_warning_option_error -Wassign-enum"
-       elif expr "x-Wassign-enum" : "x-f.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wassign-enum"
-       elif expr "x-Wassign-enum" : "x-m.*" >/dev/null
-       then
-           CFLAGS="$CFLAGS -Werror -Wassign-enum"
-       else
-           CFLAGS="$CFLAGS -Wassign-enum"
-       fi
+       CFLAGS="$CFLAGS -Wused-but-marked-unused"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
+int main(void) { return 0; }
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
 
-int
-main ()
-{
-return 0
-  ;
-  return 0;
-}
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+               CFLAGS="$save_CFLAGS"
+               V_CCOPT="$V_CCOPT -Wused-but-marked-unused"
+
+else
+
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+               CFLAGS="$save_CFLAGS"
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
+
+
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the -Wwrite-strings option" >&5
+$as_echo_n "checking whether the compiler supports the -Wwrite-strings option... " >&6; }
+       save_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -Wwrite-strings"
+       #
+       # XXX - yes, this depends on the way AC_LANG_WERROR works,
+       # but no mechanism is provided to turn AC_LANG_WERROR on
+       # *and then turn it back off*, so that we *only* do it when
+       # testing compiler options - 15 years after somebody asked
+       # for it:
+       #
+       #     https://autoconf.gnu.narkive.com/gTAVmfKD/how-to-cancel-flags-set-by-ac-lang-werror
+       #
+       save_ac_c_werror_flag="$ac_c_werror_flag"
+       ac_c_werror_flag=yes
+       #
+       # We use AC_LANG_SOURCE() so that we can control the complete
+       # content of the program being compiled.  We do not, for example,
+       # want the default "int main()" that AC_LANG_PROGRAM() generates,
+       # as it will generate a warning with -Wold-style-definition, meaning
+       # that we would treat it as not working, as the test will fail if
+       # *any* error output, including a warning due to the flag we're
+       # testing, is generated; see
+       #
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #    https://www.postgresql.org/message-id/2192993.1591682589%40sss.pgh.pa.us
+       #
+       # This may, as per those two messages, be fixed in autoconf 2.70,
+       # but we only require 2.64 or newer for now.
+       #
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+int main(void) { return 0; }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
 
                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
                CFLAGS="$save_CFLAGS"
-               V_CCOPT="$V_CCOPT -Wassign-enum"
+               V_CCOPT="$V_CCOPT -Wwrite-strings"
 
 else
 
@@ -7289,6 +7884,7 @@ $as_echo "no" >&6; }
 
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+       ac_c_werror_flag="$save_ac_c_werror_flag"
 
            fi
 
@@ -7362,12 +7958,15 @@ $as_echo_n "checking whether the compiler supports generating dependencies... "
 /* end confdefs.h.  */
 int main(void) { return 0; }
 _ACEOF
-               echo "$CC" $ac_lbl_dependency_flag conftest.c >&5
-               if "$CC" $ac_lbl_dependency_flag conftest.c >/dev/null 2>&1; then
+               if { { $as_echo "$as_me:${as_lineno-$LINENO}: eval \"\$CC \$ac_lbl_dependency_flag conftest.c >/dev/null 2>&1\""; } >&5
+  (eval "$CC $ac_lbl_dependency_flag conftest.c >/dev/null 2>&1") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
                        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, with $ac_lbl_dependency_flag" >&5
 $as_echo "yes, with $ac_lbl_dependency_flag" >&6; }
                        DEPENDENCY_CFLAG="$ac_lbl_dependency_flag"
-                       MKDEP='${srcdir}/mkdep'
+                       MKDEP='${top_srcdir}/mkdep'
                else
                        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
@@ -7411,135 +8010,6 @@ $as_echo "$as_me: WARNING: can't find $name" >&2;}
            fi
     fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if sockaddr struct has the sa_len member" >&5
-$as_echo_n "checking if sockaddr struct has the sa_len member... " >&6; }
-    if ${ac_cv_lbl_sockaddr_has_sa_len+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#      include <sys/types.h>
-#      include <sys/socket.h>
-int
-main ()
-{
-u_int i = sizeof(((struct sockaddr *)0)->sa_len)
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_lbl_sockaddr_has_sa_len=yes
-else
-  ac_cv_lbl_sockaddr_has_sa_len=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lbl_sockaddr_has_sa_len" >&5
-$as_echo "$ac_cv_lbl_sockaddr_has_sa_len" >&6; }
-    if test $ac_cv_lbl_sockaddr_has_sa_len = yes ; then
-
-$as_echo "#define HAVE_SOCKADDR_SA_LEN 1" >>confdefs.h
-
-    fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if unaligned accesses fail" >&5
-$as_echo_n "checking if unaligned accesses fail... " >&6; }
-    if ${ac_cv_lbl_unaligned_fail+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case "$host_cpu" in
-
-       #
-       # These are CPU types where:
-       #
-       #       the CPU faults on an unaligned access, but at least some
-       #       OSes that support that CPU catch the fault and simulate
-       #       the unaligned access (e.g., Alpha/{Digital,Tru64} UNIX) -
-       #       the simulation is slow, so we don't want to use it;
-       #
-       #       the CPU, I infer (from the old
-       #
-       # XXX: should also check that they don't do weird things (like on arm)
-       #
-       #       comment) doesn't fault on unaligned accesses, but doesn't
-       #       do a normal unaligned fetch, either (e.g., presumably, ARM);
-       #
-       #       for whatever reason, the test program doesn't work
-       #       (this has been claimed to be the case for several of those
-       #       CPUs - I don't know what the problem is; the problem
-       #       was reported as "the test program dumps core" for SuperH,
-       #       but that's what the test program is *supposed* to do -
-       #       it dumps core before it writes anything, so the test
-       #       for an empty output file should find an empty output
-       #       file and conclude that unaligned accesses don't work).
-       #
-       # This run-time test won't work if you're cross-compiling, so
-       # in order to support cross-compiling for a particular CPU,
-       # we have to wire in the list of CPU types anyway, as far as
-       # I know, so perhaps we should just have a set of CPUs on
-       # which we know it doesn't work, a set of CPUs on which we
-       # know it does work, and have the script just fail on other
-       # cpu types and update it when such a failure occurs.
-       #
-       alpha*|arm*|bfin*|hp*|mips*|sh*|sparc*|ia64|nv1)
-               ac_cv_lbl_unaligned_fail=yes
-               ;;
-
-       *)
-               cat >conftest.c <<EOF
-#              include <sys/types.h>
-#              include <sys/wait.h>
-#              include <stdio.h>
-               unsigned char a[5] = { 1, 2, 3, 4, 5 };
-               main() {
-               unsigned int i;
-               pid_t pid;
-               int status;
-               /* avoid "core dumped" message */
-               pid = fork();
-               if (pid <  0)
-                       exit(2);
-               if (pid > 0) {
-                       /* parent */
-                       pid = waitpid(pid, &status, 0);
-                       if (pid < 0)
-                               exit(3);
-                       exit(!WIFEXITED(status));
-               }
-               /* child */
-               i = *(unsigned int *)&a[1];
-               printf("%d\n", i);
-               exit(0);
-               }
-EOF
-               ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS \
-                   conftest.c $LIBS >/dev/null 2>&1
-               if test ! -x conftest ; then
-                                               ac_cv_lbl_unaligned_fail=yes
-               else
-                       ./conftest >conftest.out
-                       if test ! -s conftest.out ; then
-                               ac_cv_lbl_unaligned_fail=yes
-                       else
-                               ac_cv_lbl_unaligned_fail=no
-                       fi
-               fi
-               rm -f -r conftest* core core.conftest
-               ;;
-       esac
-fi
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lbl_unaligned_fail" >&5
-$as_echo "$ac_cv_lbl_unaligned_fail" >&6; }
-    if test $ac_cv_lbl_unaligned_fail = yes ; then
-
-$as_echo "#define LBL_ALIGN 1" >>confdefs.h
-
-    fi
-
 # Check for OpenSSL/libressl libcrypto
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use OpenSSL/libressl libcrypto" >&5
 $as_echo_n "checking whether to use OpenSSL/libressl libcrypto... " >&6; }
@@ -7598,7 +8068,7 @@ if test "$want_libcrypto" != "no"; then
        # El Capitan, probably because they don't want you writing
        # nasty portable code that could run on other UN*Xes, they
        # want you writing code that uses their Shiny New Crypto
-       # Library and that only runs on OS X.
+       # Library and that only runs on macOS.
        #
        ac_fn_c_check_header_mongrel "$LINENO" "openssl/crypto.h" "ac_cv_header_openssl_crypto_h" "$ac_includes_default"
 if test "x$ac_cv_header_openssl_crypto_h" = xyes; then :
@@ -7669,19 +8139,19 @@ done
                        # EVP_CIPHER_CTX, as EVP_CIPHER_CTX may be
                        # opaque; otherwise, we allocate it ourselves.
                        #
-                       # 2) do we have EVP_CipherInit_ex()?
+                       # 2) do we have EVP_DecryptInit_ex()?
                        # If so, we use it, because we need to be
                        # able to make two "initialize the cipher"
                        # calls, one with the cipher and key, and
                        # one with the IV, and, as of OpenSSL 1.1,
-                       # You Can't Do That with EVP_CipherInit(),
-                       # because a call to EVP_CipherInit() will
+                       # You Can't Do That with EVP_DecryptInit(),
+                       # because a call to EVP_DecryptInit() will
                        # unconditionally clear the context, and
                        # if you don't supply a cipher, it'll
                        # clear the cipher, rendering the context
                        # unusable and causing a crash.
                        #
-                       for ac_func in EVP_CIPHER_CTX_new EVP_CipherInit_ex
+                       for ac_func in EVP_CIPHER_CTX_new EVP_DecryptInit_ex
 do :
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -8413,7 +8883,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by $as_me, which was
+This file was extended by tcpdump $as_me 4.99.4-PRE-GIT, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -8479,7 +8949,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-config.status
+tcpdump config.status 4.99.4-PRE-GIT
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -9167,8 +9637,8 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
   case $ac_file$ac_mode in
     "default-1":C) if test -f .devel; then
        echo timestamp > stamp-h
-       cat Makefile-devel-adds >> Makefile
-       make depend
+       cat $srcdir/Makefile-devel-adds >> Makefile
+       make depend || exit 1
 fi ;;
 
   esac