2 # Autoconf script for Wireshark
6 # Define variables for the components of the Wireshark version number.
8 m4_define([version_major], [2])
9 m4_define([version_minor], [3])
10 m4_define([version_micro], [0])
11 dnl Updated by make-version.pl
12 m4_define([version_extra], [])
13 m4_define([version_micro_extra], m4_join([], version_micro, version_extra))
15 AC_INIT(Wireshark, [version_major.version_minor.version_micro_extra], http://bugs.wireshark.org/, , http://www.wireshark.org/)
19 # Minimum autoconf version we require.
21 # Variable expansion doesn't work in AC_PREREQ()
23 AC_SUBST(AC_MIN_VERSION)
25 dnl Make sure to keep ACLOCAL_AMFLAGS in Makefile.am and AC_CONFIG_MACRO_DIRS
26 dnl in configure.ac in sync, otherwise there will be an error running autogen.sh.
27 m4_ifdef([AC_CONFIG_MACRO_DIRS],[AC_CONFIG_MACRO_DIRS([m4])])
29 dnl Check for CPU / vendor / OS
30 dnl The user is encouraged to use either `AC_CANONICAL_BUILD', or
31 dnl `AC_CANONICAL_HOST', or `AC_CANONICAL_TARGET', depending on the
32 dnl needs. Using `AC_CANONICAL_TARGET' is enough to run the two other
35 dnl As nothing in the Wireshark is itself a build tool (we are not,
36 dnl for example, a compiler that generates machine code), we probably
37 dnl don't need AC_CANONICAL_TARGET, so, in theory, we should be able
38 dnl to use AC_CANONICAL_BUILD and AC_CANONICAL_HOST - or perhaps just
39 dnl AC_CANONICAL_HOST - instead. Note that we do have tools, such as
40 dnl lemon, that need to be built for the build machine, not for the
41 dnl host machine, so we might need both.
43 dnl This has to be done *after* AC_INIT, otherwise autogen.sh fails.
45 dnl AC_CANONICAL_BUILD
49 AM_INIT_AUTOMAKE([1.11 tar-ustar dist-xz no-dist-gzip subdir-objects])
51 # Enable silent builds by default. Verbose builds can be enabled with "./configure
52 # --enable-silent-rules ..." or "make V=1 ..."
53 AM_SILENT_RULES([yes])
55 # Make Wireshark's version available in config.h
56 AC_DEFINE(VERSION_MAJOR, version_major, [Wireshark's major version])
57 AC_DEFINE(VERSION_MINOR, version_minor, [Wireshark's minor version])
58 AC_DEFINE(VERSION_MICRO, version_micro, [Wireshark's micro version])
60 AC_DEFINE_UNQUOTED(VERSION_FLAVOR,
61 ["${WIRESHARK_VERSION_FLAVOR:-"Development Build"}"], [Wireshark's package flavor])
64 LT_INIT([disable-static dlopen])
65 AC_SUBST([LIBTOOL_DEPS])
67 AC_CONFIG_LIBOBJ_DIR([wsutil])
70 # Checks for programs used in the main build process.
72 # See doc/README.developer for allowed C99 features
75 if test "$ac_cv_prog_cc_c99" = "no"
77 AC_MSG_ERROR([The C compiler does not support C99])
82 if test ! -z "$CXX"; then
84 # OK, we found something AC_LANG_CXX thinks is a C++ compiler,
87 # Some UN*Xes have, by default, a case-insensitive file
88 # system, and AC_PROG_CXX looks for, among other things,
89 # "CC" as a C++ compiler, and, if you have a case-insensitive
90 # file system and a C compiler named "cc" (both true, by
91 # default, on OS X), AC_PROG_CXX may end up thinking it's
94 # So we check by feeding the purported C++ compiler a
95 # program using C++ features (iostream).
97 AC_MSG_CHECKING(whether $CXX is a C++ compiler)
99 AC_LINK_IFELSE([AC_LANG_PROGRAM(
104 std::cout << "Hello World! ";
107 [AC_MSG_RESULT(yes)],
115 # Qt 5.7 or later requires C++11
116 AS_IF([test -n "$CXX"],
117 [AX_CXX_COMPILE_STDCXX([11], [noext], [optional])])
119 # Set CC_FOR_BUILD (the *local* gcc to use for building e.g. lemon)
120 if test "x$cross_compiling" = xno -a -z "$CC_FOR_BUILD"; then
126 # Check for versions of "sed" inadequate to handle, in libtool, a list
127 # of object files as large as the list in Wireshark.
134 AC_PATH_PROG(PERL, perl)
137 AC_PATH_PROGS(PYTHON, python python3)
138 if test ! -z "$PYTHON"; then
140 # OK, we found Python; is it Python 2.5 or later?
141 # Note: we don't use named components for sys.version_info to get
142 # the major version number, as named components for version_info
143 # were apparently introduced in Python 2.7.
145 AC_MSG_CHECKING([whether $PYTHON is Python 2.5 or later])
146 python_major_version=`$PYTHON -c 'import sys; print (sys.version_info[[0]])'`
147 python_minor_version=`$PYTHON -c 'import sys; print (sys.version_info[[1]])'`
148 if test "$python_major_version" -eq 2 -a "$python_minor_version" -lt 5 ; then
150 AC_MSG_WARN([Building with Python $python_major_version.$python_minor_version may not work])
155 AC_MSG_ERROR(I couldn't find python; make sure it's installed and in your path)
159 dnl Check for yacc/lex. Distribution tarballs include generated source,
160 dnl in which case these tools are not a mandatory requirement to build.
163 AS_IF([test "x$YACC" = xyacc], [AS_UNSET(YACC)])
164 AS_IF([test -z "$YACC" -a ! -f $srcdir/wiretap/ascend.c],
165 [AC_MSG_ERROR([I couldn't find bison or byacc; make sure it's installed and in your path])])
166 AM_MISSING_PROG(YACC, bison)
168 AS_IF([test "x$LEX" != xflex], [AS_UNSET(LEX)])
169 AS_IF([test -z "$LEX" -a ! -f $srcdir/wiretap/ascend_scanner.c],
170 [AC_MSG_ERROR([I couldn't find flex; make sure it's installed and in your path])])
171 AM_MISSING_PROG(LEX, flex)
173 AC_PATH_PROG(POD2MAN, pod2man)
174 if test "x$POD2MAN" = x
177 # The alternative is not to build the man pages....
179 AC_MSG_ERROR(I couldn't find pod2man; make sure it's installed and in your path)
181 AC_PATH_PROG(POD2HTML, pod2html)
182 if test "x$POD2HTML" = x
185 # The alternative is not to build the HTML man pages....
187 AC_MSG_ERROR(I couldn't find pod2html; make sure it's installed and in your path)
191 # Set "ac_supports_gcc_flags" if the compiler is known to support GCC-style
192 # flags such as -pedantic, -W warning flags and -f feature flags. Currently,
193 # we assume GCC and clang do; other compilers should be added here.
195 # This is done to avoid getting tripped up by compilers that support
196 # those flags but give them a different meaning.
198 if test "x$GCC" = "xyes" -o "x$CC" = "xclang" ; then
199 ac_supports_gcc_flags=yes
203 AC_PATH_PROG(DOXYGEN, doxygen)
204 AC_CHECK_PROG(HAVE_DOXYGEN, doxygen, "yes", "no")
205 AM_CONDITIONAL(HAVE_DOXYGEN, test x$HAVE_DOXYGEN = xyes)
208 # Check for pkg-config and set PKG_CONFIG accordingly.
210 # This is referenced via AC_REQUIRE([PKG_PROG_PKG_CONFIG] in some macros
211 # like PKG_CHECK_MODULES. If the first call to such a macro is under an
212 # "if" statement, it's safer to call PKG_PROG_PKG_CONFIG directly, see
213 # the comments in acolocal.m4
215 # We want version 0.7 or better. (XXX - explain why. Is that just
216 # because our Qt tests were originally based on AM_PATH_GTK, and *it*
217 # requires 0.7 or better?)
219 PKG_PROG_PKG_CONFIG(0.7)
220 if test -z "$PKG_CONFIG"; then
221 AC_MSG_ERROR(I couldn't find pkg-config; make sure it's installed and in your path)
225 # Add configure argument to select OSX deployment target.
227 AC_WIRESHARK_OSX_DEPLOY_TARGET
230 # Try to arrange for large file support.
235 # Check if we need to link with libm
237 AC_SEARCH_LIBS([cos], [m])
240 # Check for C99 math functions.
242 AC_CHECK_FUNCS([floorl lrint])
245 # Check if we need to link with -lnsl and -lsocket
250 # GUI toolkit options
253 AC_HELP_STRING( [--with-qt=@<:@yes/no/4/5@:>@],
254 [use Qt @<:@default=yes, if available@:>@]),
255 with_qt="$withval", with_qt="unspecified")
258 AC_HELP_STRING( [--with-gtk=@<:@yes/no/2/3@:>@],
259 [use GTK+ @<:@default=yes, if available@:>@]),
261 [yes], [with_gtk="3 2 fail"],
262 [no], [with_gtk="no"],
263 [3], [with_gtk="3 fail3"],
264 [2], [with_gtk="2 fail2"],
265 [AC_MSG_ERROR([--with-gtk must be one of yes/no/2/3])]),
269 # Version 3.0 switched from LGPLv2.1+ to LGPLv3+, then switched back to
270 # LGPLv2.1+ in version 3.1.10.
271 # GnuTLS depends on GMP which switched from LGPLv2.1+ to LGPLv3+ in
272 # version 4.2.2, the switched to LGPLv3+ / GPLv2+ in version 6.0.0.
275 want_gnutls="if_available"
276 AC_ARG_WITH([gnutls],
277 AC_HELP_STRING( [--with-gnutls=@<:@yes/no@:>@],
278 [use GnuTLS library @<:@default=yes, if available@:>@]),
279 [ with_gnutls="$withval"; want_gnutls="yes" ], with_gnutls="yes")
281 if test "x$with_gnutls" = "xyes"; then
282 have_license_compatible_gnutls="no"
283 PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 3.1.10 ],
284 [ have_license_compatible_gnutls="yes" ], [ echo "GnuTLS >= 3.1.10 not found " ]
287 if test "x$have_license_compatible_gnutls" != "xyes"; then
288 PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 2.12.0 gnutls < 3],
289 [ have_license_compatible_gnutls="yes" ] , [ echo "GnuTLS >= 2.12.0, < 3.0 not found " ]
293 if test "x$have_license_compatible_gnutls" != "xyes"; then
294 if test "x$want_gnutls" = "xyes"; then
295 AC_MSG_ERROR([GnuTLS crypto library was requested, but is not available])
297 AS_ECHO(["GnuTLS with compatible license not found, disabling SSL decryption"])
300 AC_DEFINE(HAVE_LIBGNUTLS, 1, [Define to use GnuTLS library])
307 want_gcrypt="if_available"
308 AC_ARG_WITH([gcrypt],
309 AC_HELP_STRING( [--with-gcrypt=@<:@yes/no@:>@],
310 [use gcrypt library @<:@default=yes, if available@:>@]),
311 [ with_gcrypt="$withval"; want_gcrypt="yes" ], with_gcrypt="yes")
313 if test "x$with_gcrypt" = "xyes"; then
314 AM_PATH_LIBGCRYPT(1.4.2,
316 AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define to use libgcrypt])
320 if test x$libgcrypt_config_prefix != x ; then
321 AC_MSG_ERROR([[libgcrypt not found; install libgcrypt-devel package for your system]])
323 AS_ECHO(["libgcrypt not found, disabling decryption for ipsec, ssl, etc."])
327 # Error out if the user explicitly requested gcrypt
328 if test "x$want_gcrypt" = "xyes"; then
329 AC_MSG_ERROR([libgcrypt library was requested, but is not available])
336 AC_HELP_STRING([--with-libnl@<:@=VERSION@:>@],
337 [use libnl (force version VERSION, if supplied) @<:@default: yes, if available@:>@]),
339 if test "x$withval" = "xno"
342 elif test "x$withval" = "xyes"
346 elif test "x$withval" = "x1"
350 elif test "x$withval" = "x2"
354 elif test "x$withval" = "x3"
359 AC_MSG_ERROR(["$withval" is not a valid argument to --with-libnl])
363 # Use libnl if it's present, otherwise don't.
365 want_libnl=ifavailable
369 # Libnl is Linux-specific.
374 AC_MSG_CHECKING(whether to use libnl for various network interface purposes)
376 if test x$want_libnl = "xno"; then
381 # Test for specific libnl versions only if no version
382 # was specified by the user or if the version in question
383 # was requested by the user.
385 if test x$libnl_version = "xany" -o x$libnl_version = "x3"; then
386 PKG_CHECK_EXISTS([libnl-3.0 libnl-route-3.0 libnl-genl-3.0], [have_libnl3=yes], [have_libnl3=no])
388 if test x$libnl_version = "xany" -o x$libnl_version = "x2"; then
389 PKG_CHECK_EXISTS([libnl-2.0], [have_libnl2=yes], [have_libnl2=no])
391 if test x$libnl_version = "xany" -o x$libnl_version = "x1"; then
392 PKG_CHECK_EXISTS([libnl-1], [have_libnl1=yes], [have_libnl1=no])
394 if (test "${have_libnl3}" = "yes"); then
395 PKG_WIRESHARK_CHECK_SYSTEM_MODULES([LIBNL], [libnl-3.0 libnl-route-3.0 libnl-genl-3.0])
396 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
397 AC_DEFINE(HAVE_LIBNL3, 1, [libnl version 3])
398 libnl_message="yes (v3)"
399 elif (test "${have_libnl2}" = "yes"); then
400 PKG_WIRESHARK_CHECK_SYSTEM_MODULES([LIBNL], [libnl-2.0])
401 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
402 AC_DEFINE(HAVE_LIBNL2, 1, [libnl version 2])
403 libnl_message="yes (v2)"
404 elif (test "${have_libnl1}" = "yes"); then
405 PKG_WIRESHARK_CHECK_SYSTEM_MODULES([LIBNL], [libnl-1])
406 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
407 AC_DEFINE(HAVE_LIBNL1, 1, [libnl version 1])
408 libnl_message="yes (v1)"
410 if test x$want_libnl = "xyes"; then
411 case "$libnl_version" in
414 AC_MSG_ERROR("I couldn't find libnl even though you manually enabled it.")
418 AC_MSG_ERROR("I couldn't find libnl version $libnl_version even though you manually enabled it.")
425 AC_MSG_CHECKING([if nl80211.h is new enough])
426 AC_TRY_COMPILE([#include <linux/nl80211.h>],
427 [int x = NL80211_FREQUENCY_ATTR_MAX_TX_POWER;
428 x |= NL80211_ATTR_SUPPORTED_IFTYPES;
429 x |= NL80211_ATTR_SUPPORTED_COMMANDS;
430 x |= NL80211_ATTR_WIPHY_FREQ;
431 x |= NL80211_CHAN_NO_HT;
433 [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NL80211, 1, [nl80211.h is new enough])],
436 AC_MSG_CHECKING([for NL80211_SET_CHANNEL])
437 AC_TRY_COMPILE([#include <linux/nl80211.h>],
438 [enum nl80211_commands x = NL80211_CMD_SET_CHANNEL;],
439 [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NL80211_CMD_SET_CHANNEL, 1, [SET_CHANNEL is supported])],
442 AC_MSG_CHECKING([for NL80211_SPLIT_WIPHY_DUMP])
443 AC_TRY_COMPILE([#include <linux/nl80211.h>],
444 [enum nl80211_protocol_features x = NL80211_PROTOCOL_FEATURE_SPLIT_WIPHY_DUMP;],
445 [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NL80211_SPLIT_WIPHY_DUMP, 1, [SPLIT_WIPHY_DUMP is supported])],
448 AC_MSG_CHECKING([for NL80211_VHT_CAPABILITY])
449 AC_TRY_COMPILE([#include <linux/nl80211.h>],
450 [enum nl80211_attrs x = NL80211_ATTR_VHT_CAPABILITY;],
451 [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NL80211_VHT_CAPABILITY, 1, [VHT_CAPABILITY is supported])],
456 if test x$want_libnl != "xno" -a x$want_libnl != "xifavailable"; then
457 AC_MSG_WARN([libnl is Linux-specific, ignoring --with-libnl])
462 # FIXME: currently the path argument to with-libsmi is being ignored
466 # Check for programs used when building DocBook documentation.
468 AC_CHECK_PROGS(XSLTPROC, xsltproc, xsltproc)
469 AC_CHECK_PROGS(A2X, a2x, a2x)
470 AC_CHECK_PROGS(FOP, fop, fop)
472 # HTML to text processor
473 AC_MSG_CHECKING([for an HTML to text processor])
474 AS_IF([w3m -version >&AS_MESSAGE_LOG_FD 2>&1], [have_a2x_text=w3m],
475 [lynx -version >&AS_MESSAGE_LOG_FD 2>&1], [have_a2x_text=lynx],
477 AC_MSG_RESULT([$have_a2x_text])
478 AM_CONDITIONAL(HAVE_A2X_TEXT, [test "x$have_a2x_text" != xno])
479 AS_IF([test $have_a2x_text = lynx], [A2X_LYNX="--lynx"])
482 # Check for packaging utilities
483 # For now, we check to see if the various packaging utilites are in our
484 # path. I'm too lazy to write code to go hunt for them. - Gerald
488 # (Lets you install the desktop files.)
490 AC_PATH_PROG(DESKTOP_FILE_INSTALL, desktop-file-install)
493 AC_CHECK_PROG(HAVE_PKGPROTO, pkgproto, "yes", "no")
494 AC_CHECK_PROG(HAVE_PKGMK, pkgmk, "yes", "no")
495 AC_CHECK_PROG(HAVE_PKGTRANS, pkgtrans, "yes", "no")
497 if test x$HAVE_PKGPROTO = xyes -a x$HAVE_PKGMK = xyes \
498 -a x$HAVE_PKGTRANS = xyes ; then
499 HAVE_SVR4_PACKAGING=yes
501 HAVE_SVR4_PACKAGING=no
503 AC_SUBST(HAVE_SVR4_PACKAGING)
507 # Looks for the rpmbuild program, and checks to see if we can redefine "_topdir".
509 AC_CHECK_PROGS(RPMBUILD, [rpmbuild], [false])
510 if test "x$RPMBUILD" != "xfalse" ; then
511 AC_MSG_CHECKING([to see if we can redefine _topdir])
512 rpm --define '_topdir /tmp' > /dev/null 2>&1
513 if test $? -eq 0 ; then
517 AC_MSG_RESULT([no, you'll have to build packages manually])
521 AM_CONDITIONAL(HAVE_RPM, [test "x$have_rpm" = xyes])
524 AC_CHECK_PROG(HAVE_DPKG_BUILDPACKAGE, dpkg-buildpackage, "yes", "no")
527 AC_CHECK_PROG(HAVE_XCODEBUILD, xcodebuild, "yes", "no")
528 AC_CHECK_PROG(HAVE_HDIUTIL, hdiutil, "yes", "no")
529 AC_CHECK_PROG(HAVE_BLESS, bless, "yes", "no")
531 if test x$HAVE_XCODEBUILD = xyes -a x$HAVE_HDIUTIL = xyes \
532 -a x$HAVE_BLESS = xyes ; then
533 HAVE_OSX_PACKAGING=yes
535 HAVE_OSX_PACKAGING=no
537 AC_SUBST(HAVE_OSX_PACKAGING)
540 # Use this as a proxy for "is this OS X" (just in case somebody actually
541 # built and installed Darwin as an OS, perhaps with some X11-based GUI,
542 # don't look for Darwin).
544 AC_CHECK_PROG(have_sw_vers, sw_vers, "yes", "no")
545 AM_CONDITIONAL(NOT_OS_X, test "x$have_sw_vers" = "xno")
548 # Check compiler vendor. For GCC this will be 'gnu' and for Clang 'clang'.
551 if test "x$CXX" != "x" ; then
558 # Some compilers have to be told to fail when passed an unknown -W flag;
559 # make sure we do that.
561 AC_WIRESHARK_CHECK_UNKNOWN_WARNING_OPTION_ERROR
564 # Some C++ compilers have to be told to fail when passed a -W flag that
565 # they don't think should apply to C++; make sure we do that.
567 AC_WIRESHARK_CHECK_NON_CXX_WARNING_OPTION_ERROR
570 # The following are for C and C++
572 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wall)
573 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wextra)
574 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wendif-labels)
575 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wpointer-arith)
576 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wformat-security)
577 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fwrapv)
578 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fno-strict-overflow)
579 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fno-delete-null-pointer-checks)
580 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wvla)
581 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Waddress)
582 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wattributes)
583 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdiv-by-zero)
584 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wignored-qualifiers)
585 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wpragmas)
586 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-overlength-strings)
587 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-long-long)
588 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wheader-guard)
591 # The following are C only, not C++
593 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wc++-compat, C)
594 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdeclaration-after-statement, C)
595 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wunused-const-variable, C)
600 # Make sure -Wshadow doesn't complain about variables in function and
601 # function pointer declarations shadowing other variables; if not, don't
602 # turn it on, as some versions of GCC (including the one in at least
603 # some Xcode versions that came with Mac OS X 10.5) complain about
606 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wshadow, C,
608 extern int bar(int a);
614 int (*fptr)(int a) = bar;
619 [warns about variables in function declarations shadowing other variables])
621 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-pointer-sign, C)
622 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wold-style-definition, C)
623 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wstrict-prototypes, C)
625 # Unfortunately some versions of gcc generate logical-op warnings when strchr()
626 # is given a constant string.
627 # gcc versions 4.3.2 and 4.4.5 are known to have the problem.
628 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wlogical-op, C,
632 int foo(const char *, int);
636 foo(const char *sep, int c)
638 if (strchr (sep, c) != NULL)
647 return foo("<", 'a');
650 [generates warnings from strchr()])
652 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wjump-misses-init, C)
653 # The Qt headers generate a ton of shortening errors on 64-bit systems
654 # so only enable this for C for now.
655 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wshorten-64-to-32, C)
657 # Clang only. Avoid "argument unused during compilation" warnings
658 # (for example, when getting the -gsplit-dwarf option or
659 # when combining -fwrapv with -fno-strict-overflow)
660 if test x"$ax_cv_c_compiler_vendor" = xclang; then
661 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Qunused-arguments, C)
663 if test x"$ax_cv_cxx_compiler_vendor" = xclang; then
664 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Qunused-arguments, CXX)
668 # Use the faster pre gcc 4.5 floating point precision if available.
670 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fexcess-precision=fast)
673 # Try to have the compiler default to hiding symbols, so that only
674 # symbols explicitly exported with WS_DLL_PUBLIC will be visible
675 # outside (shared) libraries; that way, more UN*X builds will catch
676 # failures to export symbols, rather than having that fail only on
679 # GCC and GCC-compatible compilers
681 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fvisibility=hidden)
682 if test "x$can_add_to_cflags" = "xno"
687 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-xldscope=hidden)
688 if test "x$can_add_to_cflags" = "xno"
690 # TODO add other ways of hiding symbols
691 AC_MSG_WARN(Compiler will export all symbols from shared libraries)
696 # Try to add some additional checks to CFLAGS.
697 # These are not enabled by default, because the warnings they produce
698 # are very hard or impossible to eliminate.
700 AC_ARG_ENABLE(extra-compiler-warnings,
701 AC_HELP_STRING( [--enable-extra-compiler-warnings],
702 [do additional compiler warnings @<:@default=no@:>@]),
704 wireshark_extra_flags=$enableval
705 if test $enableval != no
708 # The following are for C and C++
710 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wpedantic)
712 # As we use variadic macros, we don't want warnings
713 # about them, even with -Wpedantic.
715 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-variadic-macros)
717 # Various code blocks this one.
719 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Woverflow)
720 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fstrict-overflow -Wstrict-overflow=4)
722 # Due to various places where APIs we don't control
723 # require us to cast away constness, we can probably
724 # never enable this one with -Werror.
726 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wcast-qual)
728 # Some generated ASN.1 dissectors block this one;
729 # multiple function declarations for the same
730 # function are being generated.
732 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wredundant-decls)
734 # Some loops are safe, but it's hard to convince the
737 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wunsafe-loop-optimizations)
739 # All the registration functions block these for now.
741 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wmissing-prototypes)
742 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wmissing-declarations)
744 # A bunch of "that might not work on SPARC" code blocks
747 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wcast-align)
749 # Works only with Clang
751 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wunreachable-code)
753 # Works only with Clang but generates a lot of warnings
754 # (about glib library not using Doxygen)
756 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdocumentation)
759 # The following are C only, not C++
761 # Due to various places where APIs we don't control
762 # require us to cast away constness, we can probably
763 # never enable this one with -Werror.
765 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wbad-function-cast, C)
769 # Try to add ASAN address analyze.
770 # Only needed for analyse
773 AC_HELP_STRING( [--enable-asan],
774 [Enable AddressSanitizer (ASAN) for debugging (degrades performance)@<:@default=no@:>@]),
777 # With Clang >= 3.5 Leak detection is enable by default
778 # and no yet all leak is fixed...
779 # use ASAN_OPTIONS=detect_leaks=0 to disable detect_leaks
781 # XXX shouldn't this also be added to LDFLAGS?
782 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fsanitize=address)
786 # Add check hf conflict..
788 AC_ARG_ENABLE(checkhf-conflict,
789 AC_HELP_STRING( [--enable-checkhf-conflict],
790 [Enable hf conflict check for debugging (start-up may be slower)@<:@default=no@:>@]),
792 AC_DEFINE(ENABLE_CHECK_FILTER, 1, [Enable hf conflict check])
795 AC_WIRESHARK_LDFLAGS_CHECK([-Wl,--as-needed])
796 ###AC_WIRESHARK_LDFLAGS_CHECK([-Wl,-M])
797 ###AC_WIRESHARK_LDFLAGS_CHECK([-Wl,--cref])
798 # AC_WIRESHARK_LDFLAGS_CHECK([-flto])
799 # AC_WIRESHARK_LDFLAGS_CHECK([-fwhopr])
800 # AC_WIRESHARK_LDFLAGS_CHECK([-fwhole-program])
803 # Put -fPIE in PIE_CFLAGS and -pie in PIE_LDFLAGS if we can use them,
804 # so that we can build dumpcap PIE - it may run with elevated
805 # privileges, and using PIE means the OS can run it at random locations
806 # in the address space to make attacks more difficult.
809 WS_CFLAGS_saved="$WS_CFLAGS"
810 WS_LDFLAGS_saved="$WS_LDFLAGS"
811 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fPIE, C)
812 if test "x$can_add_to_cflags" = "xyes"
814 AC_WIRESHARK_LDFLAGS_CHECK([-fPIE -pie])
815 if test "x$can_add_to_ldflags" = "xyes"
822 WS_CFLAGS="$WS_CFLAGS_saved"
823 WS_LDFLAGS="$WS_LDFLAGS_saved"
825 AC_SUBST(PIE_LDFLAGS)
827 WS_CFLAGS_saved="$WS_CFLAGS"
828 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-msse4.2, C)
829 if test "x$can_add_to_cflags" = "xyes"
832 # The compiler supports -msse4.2; use that to enable SSE 4.2.
834 # We only want to apply -msse4.2 to
835 # wsutil/ws_mempbrk_sse42.c, as the SSE4.2 code there
836 # is run only if the hardware supports it, but other
837 # code would do no such checks.
839 ac_sse4_2_flag=-msse4.2
842 # Try -xarch=sse4_2; that's the flag for Sun's compiler.
844 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-xarch=sse4_2, C)
845 if test "x$can_add_to_cflags" = "xyes"
848 # The compiler supports -xarch=sse4_2; use that to
850 ac_sse4_2_flag=-xarch=sse4_2
853 WS_CFLAGS="$WS_CFLAGS_saved"
855 if test "x$ac_sse4_2_flag" != x; then
857 # OK, we have a compiler flag to enable SSE 4.2.
859 # Make sure we have the necessary headers for the SSE4.2 intrinsics
860 # and that we can use them.
862 # First, check whether we have emmintrin.h and can use it
863 # *without* the SSE 4.2 flag.
865 AC_MSG_CHECKING([whether there is emmintrin.h header and we can use it])
867 [#include <emmintrin.h>],
870 emmintrin_h_works=yes
880 # OK, if that works, see whether we have nmmintrin.h and
881 # can use it *with* the SSE 4.2 flag.
883 if test "x$emmintrin_h_works" = "xyes"; then
885 # Add the SSE4.2 flags to the beginning of CFLAGS,
886 # in case the user explicitly specified -mno-sse4.2
887 # (or in case Gentoo's build tools did so); if they
888 # did so, we only want this to work if we can use
889 # the #pragma to override that for ws_mempbrk_sse42.c,
890 # and putting it at the beginning means that the
891 # CFLAGS setting in the environment will come later
894 AC_MSG_CHECKING([whether there is nmmintrin.h header and we can use it])
895 saved_CFLAGS="$CFLAGS"
896 CFLAGS="$ac_sse4_2_flag $WS_CFLAGS $CFLAGS"
898 [#include <nmmintrin.h>],
902 AC_DEFINE(HAVE_SSE4_2, 1, [Support SSSE4.2 (Streaming SIMD Extensions 4.2) instructions])
903 CFLAGS_SSE42="$ac_sse4_2_flag"
911 CFLAGS="$saved_CFLAGS"
918 dnl build libwsutil_sse42 only if there is SSE4.2
919 AM_CONDITIONAL(SSE42_SUPPORTED, test "x$have_sse42" = "xyes")
920 AC_SUBST(CFLAGS_SSE42)
923 # If we're running GCC or clang define _U_ to be "__attribute__((unused))"
924 # so we can use _U_ to flag unused function parameters and not get warnings
925 # about them. Otherwise, define _U_ to be an empty string so that _U_ used
926 # to flag an unused function parameters will compile with other compilers.
928 # XXX - similar hints for other compilers?
930 if test "x$GCC" = "xyes" -o "x$CC" = "xclang" ; then
931 AC_DEFINE(_U_, __attribute__((unused)), [Hint to the compiler that a function parameters is not used])
932 AC_DEFINE(WS_NORETURN, __attribute((noreturn)), [Hint to the compiler that a function never returns])
934 AC_DEFINE(_U_, , [Hint to the compiler that a function parameters is not used])
935 AC_DEFINE(WS_NORETURN, , [Hint to the compiler that a function never returns])
938 # If we're running GCC or CLang, use FORTIFY_SOURCE=2
939 # (only if the GCC 'optimization level' > 0).
941 # See: http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html
942 # See: http://sourceware.org/bugzilla/show_bug.cgi?id=13979
944 # Note: FORTIFY_SOURCE is only effective for gcc optimization level > 0 (-O1, etc)
945 AC_WIRESHARK_GCC_FORTIFY_SOURCE_CHECK
948 # If the compiler supports GCC-style flags, enable a barrier "stop on
950 # This barrier is set for a very large part of the code. However, it is
951 # typically not set for "generated" code (flex, ans2wrs, idl2wrs, ...)
953 warnings_as_errors_default="yes"
954 AC_MSG_CHECKING(whether we should treat compiler warnings as errors)
955 AC_ARG_ENABLE(warnings-as-errors,
956 AC_HELP_STRING( [--enable-warnings-as-errors],
957 [treat warnings as errors (only for GCC or clang) @<:@default=yes, unless extra compiler warnings are enabled@:>@]),
959 if test "x$ac_supports_gcc_flags" = "xyes" -a "x$enableval" = "xyes"; then
960 with_warnings_as_errors="yes"
963 with_warnings_as_errors="no"
968 if test "x$ac_supports_gcc_flags" = "xyes" -a "x$wireshark_extra_flags" = "x" -a "x$warnings_as_errors_default" = "xyes"; then
969 with_warnings_as_errors="yes"
972 with_warnings_as_errors="no"
977 AS_IF([test "x$with_warnings_as_errors" = "xyes"], [WERROR="-Werror"], [WERROR=""])
979 AM_CONDITIONAL(HAVE_WARNINGS_AS_ERRORS, [test "x$with_warnings_as_errors" = "xyes"])
982 # Add any platform-specific compiler flags needed.
984 AC_MSG_CHECKING(for platform-specific compiler flags)
985 if test "x$GCC" = "xyes" ; then
987 # GCC - do any platform-specific tweaking necessary.
991 # the X11 headers don't automatically include prototype info
992 # and a lot don't include the return type
993 WS_CPPFLAGS="$WS_CPPFLAGS -DFUNCPROTO=15"
994 WS_CFLAGS="$WS_CFLAGS -Wno-return-type"
995 WS_CXXFLAGS="$WS_CXXFLAGS -Wno-return-type"
996 AC_MSG_RESULT(GCC on Solaris - added -Wno-return-type -DFUNCPROTO=15)
999 AC_MSG_RESULT(none needed)
1004 # Not GCC - assume it's the vendor's compiler.
1009 # AC_PROG_CC_STDC should already have added whatever
1010 # flags are necessary for ISO C - C99 if available,
1011 # otherwise C89 - with extensions.
1013 # Add +O2, for optimization, as suggested by Jost Martin.
1014 # XXX - works with "-g"?
1016 # +O2 is supported both by the C and C++ compiler.
1018 WS_CFLAGS="+O2 $WS_CFLAGS"
1019 if test "$CC" = "$CC_FOR_BUILD"; then
1021 # We're building the build tools with the same
1022 # compiler as the one with which we're building
1023 # Wireshark, so add the flags to the flags for
1024 # that compiler as well.
1026 CFLAGS_FOR_BUILD="-Ae +O2 $CFLAGS"
1028 WS_CXXFLAGS="+O2 $WS_CXXFLAGS"
1029 AC_MSG_RESULT(HP C/C++ compiler - added +O2)
1033 # Crank up the warning level.
1035 WS_CFLAGS="$WS_CFLAGS -v"
1036 WS_CXXFLAGS="$WS_CXXFLAGS +w2"
1039 AC_MSG_RESULT(none needed)
1045 # Add any platform-specific linker flags needed.
1047 AC_MSG_CHECKING(for platform-specific linker flags)
1051 # Add -Wl,-single_module to the LDFLAGS used with shared
1052 # libraries, to fix some error that show up in some cases;
1053 # some Apple documentation recommends it for most shared
1056 LDFLAGS_SHAREDLIB="-Wl,-single_module"
1058 # Add -Wl,-headerpad_max_install_names to the LDFLAGS, as
1059 # code-signing issues is running out of padding space.
1061 # Add -Wl,-search_paths_first to make sure that if we search
1062 # directories A and B, in that order, for a given library, a
1063 # non-shared version in directory A, rather than a shared
1064 # version in directory B, is chosen (so we can use
1065 # --with-pcap=/usr/local to force all programs to be linked
1066 # with a static version installed in /usr/local/lib rather than
1067 # the system version in /usr/lib).
1069 WS_LDFLAGS="-Wl,-headerpad_max_install_names -Wl,-search_paths_first $WS_LDFLAGS"
1070 AC_MSG_RESULT([Apple linker - added -Wl,-single_module to shared library linker flags and -Wl,-headerpad_max_install_names -Wl,-search_paths_first and -Wl,-headerpad_max_install_names to all linker flags])
1074 # Shared libraries in cygwin/Win32 must never contain
1075 # undefined symbols.
1077 WS_LDFLAGS="$WS_LDFLAGS -no-undefined"
1078 AC_MSG_RESULT(CygWin GNU ld - added -no-undefined)
1081 AC_MSG_RESULT(none needed)
1084 AC_SUBST(LDFLAGS_SHAREDLIB)
1087 # On "Darwin", which we assume to mean "OS X" rather than "iOS" or
1088 # "just Darwin" (as we don't currently support iOS, and as I don't
1089 # think you can build and run "just Darwin" as an OS for PCs), we
1090 # arrange to build some programs with Application Services so they
1091 # can launch Web browsers and Finder windows, arrange to build some
1092 # programs with System Configuration so they can get "friendly names"
1093 # and other information about interfaces, and build any programs that
1094 # use either of those frameworks or that report version information
1095 # with Core Foundation as the frameworks in question use it and as we
1096 # get version information from plists and thus need Core Foundation
1097 # to process those plists.
1099 have_os_x_frameworks=no
1102 have_os_x_frameworks=yes
1103 AC_DEFINE(HAVE_OS_X_FRAMEWORKS, 1, [Define to 1 if you have OS X frameworks])
1104 APPLICATIONSERVICES_FRAMEWORKS="-framework ApplicationServices"
1105 SYSTEMCONFIGURATION_FRAMEWORKS="-framework SystemConfiguration"
1106 COREFOUNDATION_FRAMEWORKS="-framework CoreFoundation"
1109 # OK, so we have the OS X frameworks; do they include
1110 # CFPropertyListCreateWithStream, or do we have
1111 # to fall back on CFPropertyListCreateFromStream?
1112 # (They only differ in the error return, which we
1113 # don't care about. And, no, we shouldn't just
1114 # use CFPropertyListCreateFromStream, because it's
1115 # deprecated in newer releases.)
1117 ac_save_LIBS="$LIBS"
1118 LIBS="$LIBS $COREFOUNDATION_FRAMEWORKS"
1119 AC_CHECK_FUNCS(CFPropertyListCreateWithStream)
1120 LIBS="$ac_save_LIBS"
1123 AC_SUBST(APPLICATIONSERVICES_FRAMEWORKS)
1124 AC_SUBST(SYSTEMCONFIGURATION_FRAMEWORKS)
1125 AC_SUBST(COREFOUNDATION_FRAMEWORKS)
1126 AM_CONDITIONAL(HAVE_OS_X_FRAMEWORKS, [test "x$have_os_x_frameworks" = "xyes"])
1129 # If we're running Solaris, and LD_LIBRARY_PATH is defined, add it as a
1134 AC_MSG_CHECKING(for LD_LIBRARY_PATH, since you appear to be running Solaris)
1135 if test x$LD_LIBRARY_PATH != x ; then
1136 LIBS="$LIBS -R$LD_LIBRARY_PATH"
1137 AC_MSG_RESULT(yes -- added LD_LIBRARY_PATH to run-time linker path)
1139 AC_MSG_RESULT(no -- this may be a problem in a few seconds)
1144 # Enable/disable wireshark
1145 AC_ARG_ENABLE(wireshark,
1146 AC_HELP_STRING( [--enable-wireshark],
1147 [build the Wireshark GUI (with Gtk+, Qt, or both) @<:@default=yes@:>@]),
1148 enable_wireshark=$enableval,enable_wireshark=yes)
1149 AM_CONDITIONAL(BUILDING_WIRESHARK, test x$enable_wireshark = xyes)
1151 AC_ARG_ENABLE(packet-editor,
1152 AC_HELP_STRING( [--enable-packet-editor],
1153 [add support for packet editor in Wireshark @<:@default=yes@:>@]),
1154 enable_packet_editor=$enableval,enable_packet_editor=yes)
1155 if test x$enable_packet_editor = xyes; then
1156 AC_DEFINE(WANT_PACKET_EDITOR, 1, [Support for packet editor])
1159 AC_ARG_ENABLE(profile-build,
1160 AC_HELP_STRING( [--enable-profile-build],
1161 [build profile-ready binaries @<:@default=no@:>@]),
1162 enable_profile_build=$enableval,enable_profile_build=no)
1163 AM_CONDITIONAL(USE_PROFILE_BUILD, test x$enable_profile_build = xyes)
1164 AC_MSG_CHECKING(if profile builds must be generated)
1165 if test "x$enable_profile_build" = "xyes" ; then
1166 if test "x$GCC" = "xyes" -o "x$CLANG" = "xyes" ; then
1168 WS_CFLAGS="-pg $WS_CFLAGS"
1169 WS_CXXFLAGS="-pg $WS_CXXFLAGS"
1172 echo "Building profile binaries currently only supported for GCC and clang."
1178 GLIB_MIN_VERSION=2.22.0
1179 AC_SUBST(GLIB_MIN_VERSION)
1180 # GLib checks; we require GLib $GLIB_MIN_VERSION or later, and require gmodule
1181 # support, as we need that for dynamically loading plugins.
1183 # Release dates for GLib versions:
1184 # 2.14.0: 03 Aug 2007
1185 # 2.16.0: 10 Mar 2008
1186 # 2.18.0: 02 Sep 2008
1187 # 2.20.0: 13 Mar 2009
1188 # 2.22.0: 22 Sep 2009
1189 # 2.24.0: 28 Mar 2010
1190 # 2.26.0: 27 Sep 2010
1191 # 2.28.0: 08 Feb 2011
1192 # 2.30.0: 27 Sep 2011
1193 # 2.32.0: 24 Mar 2012
1194 # 2.34.0: 24 Sep 2012
1195 # 2.36.0: 25 Mar 2013
1196 # 2.38.0: 23 Sep 2013
1197 # 2.40.0: 24 Mar 2014
1198 # 2.42.0: 22 Sep 2014
1199 # 2.44.0: 23 Mar 2014
1200 # 2.46.0: 25 Sep 2015
1202 PKG_WIRESHARK_CHECK_SYSTEM_MODULES([GLIB],
1203 [glib-2.0 >= $GLIB_MIN_VERSION gthread-2.0 >= $GLIB_MIN_VERSION gmodule-2.0 >= $GLIB_MIN_VERSION],
1204 [GLIB_VERSION=`$PKG_CONFIG --modversion glib-2.0`],
1205 [AC_MSG_ERROR([GLib $GLIB_MIN_VERSION or later not found.])])
1207 # Error out if a glib header other than a "top level" header
1208 # (glib.h, glib-object.h, gio.h) or certain other headers( e.g.,gmodule.h)
1210 AX_APPEND_FLAG([-DG_DISABLE_SINGLE_INCLUDES], [GLIB_CONFIG])
1212 # Error out on the usage of deprecated glib functions
1213 AX_APPEND_FLAG([-DG_DISABLE_DEPRECATED], [GLIB_CONFIG])
1215 GLIB_CFLAGS="$GLIB_CONFIG $GLIB_CFLAGS"
1216 AC_SUBST(GLIB_CFLAGS)
1219 GTK2_MIN_VERSION=2.12.0
1220 AC_SUBST(GTK2_MIN_VERSION)
1221 GTK3_MIN_VERSION=3.0.0
1222 AC_SUBST(GTK3_MIN_VERSION)
1223 QT_MIN_VERSION=4.7.0
1224 AC_SUBST(QT_MIN_VERSION)
1225 # GTK+ and Qt checks; we require GTK+ $GTK2_MIN_VERSION or later or
1226 # GTK3_MIN_VERSION or later or Qt $QT_MIN_VERSION or later.
1228 # We only do those if we're going to be building Wireshark;
1229 # otherwise, we don't have any GUI to build, so we don't use
1232 # We don't add $GTK_LIBS or $Qt_LIBS to LIBS, because we don't want to
1233 # force all programs to be built with GTK+ or Qt.
1235 # Release dates for GTK+ versions:
1236 # https://en.wikipedia.org/wiki/GTK+#Releases
1237 # 2.12.0: 14 Sep 2007
1238 # 2.14.0: 04 Sep 2008
1239 # 2.16.0: 13 Mar 2009
1240 # 2.18.0: 23 Sep 2009
1241 # 2.20.0: 23 Mar 2010
1242 # 2.22.0: 23 Sep 2010
1243 # 2.24.0: 30 Jan 2011
1244 # 3.0.0: 10 Feb 2011
1245 # 3.2.0: 25 Sep 2011
1246 # 3.4.0: 26 Mar 2012
1247 # 3.6.0: 24 Sep 2012
1248 # 3.8.0: 25 Mar 2013
1249 # 3.10.0: 23 Sep 2013
1250 # 3.12.0: 25 Mar 2014
1251 # 3.14.0: 30 Sep 2014
1252 # 3.16.0: 22 Mar 2015
1253 # 3.18.0 22 Sep 2015
1255 # Release dates for Qt versions:
1256 # https://en.wikipedia.org/wiki/List_of_Qt_releases
1257 # 4.6.0: 01 Dec 2009
1258 # 4.7.0: 21 Sep 2010
1259 # 4.8.0: 15 Dec 2011
1260 # 5.0.0: 19 Dec 2012
1261 # 5.1.0: 03 Jul 2013
1262 # 5.2.0: 12 Dec 2013
1263 # 5.3.0: 20 May 2014
1264 # 5.4.0: 10 Dec 2015
1265 # 5.5.0: 01 Jul 2015
1269 if test "x$enable_wireshark" = "xyes"; then
1270 if test "x$with_qt" != "xno"; then
1272 # Qt was specified; make sure we have a C++ compiler.
1274 if test -z "$CXX"; then
1275 AC_MSG_ERROR(Need a working C++ compiler to build Wireshark with Qt)
1279 # Now make sure we have Qt and, if so, add the flags
1280 # for it to CFLAGS and CXXFLAGS.
1282 AC_WIRESHARK_QT_CHECK($QT_MIN_VERSION, "$with_qt",
1287 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-qt"
1290 # We're building with Qt, so we need the Qt build
1291 # tools in order to build the Wireshark GUI.
1292 # We've found a particular major version of Qt,
1293 # and we want that version's build tools; for
1294 # example, the Qt 4 version of uic produces files
1295 # that include Qt headers with paths that work
1296 # with Qt 4 but not Qt 5, so we can't use the
1297 # Qt 4 version of uic if we're building with Qt 5.
1298 AC_WIRESHARK_QT_TOOL_CHECK(UIC, uic, "$qt_version")
1300 AC_WIRESHARK_QT_TOOL_CHECK(MOC, moc, "$qt_version")
1302 AC_WIRESHARK_QT_TOOL_CHECK(RCC, rcc, "$qt_version")
1304 AC_WIRESHARK_QT_TOOL_CHECK_LRELEASE("$qt_version")
1308 # On Darwin, find where the Qt frameworks are
1309 # located, and add that to the rpath, just in
1310 # case this is Qt 5.5 or later and the frameworks
1311 # have an install name that begins with @rpath
1312 # and aren't installed in a frameworks directory
1313 # that's searched by default.
1317 if test $qt_version -le 4
1319 Qt_LDFLAGS="-Wl,-rpath,"`$PKG_CONFIG --libs QtCore | sed -e 's/-F//' -e 's/ -framework.*//'`
1321 Qt_LDFLAGS="-Wl,-rpath,"`$PKG_CONFIG --libs Qt${qt_version}Core | sed -e 's/-F//' -e 's/ -framework.*//'`
1325 AC_SUBST(Qt_LDFLAGS)
1327 if test -z "${MOC_OPTIONS+1}"
1329 # Squelch moc verbose "nothing to do" output
1330 if test $QT_VERSION_MAJOR -eq 5
1333 elif test $QT_VERSION_MAJOR -eq 4 -a $QT_VERSION_MINOR -ge 8
1338 AC_SUBST(MOC_OPTIONS)
1345 # They didn't explicitly ask for Qt,
1346 # so just don't build with it.
1351 AC_MSG_ERROR([Qt is not available])
1355 AC_MSG_ERROR([Qt 4 is not available])
1359 AC_MSG_ERROR([Qt 5 is not available])
1365 for want_gtk_version in $with_gtk; do
1366 AS_CASE([$want_gtk_version],
1367 [3], [PKG_WIRESHARK_CHECK_SYSTEM_MODULES([GTK],
1368 [gtk+-3.0 >= $GTK3_MIN_VERSION glib-2.0 >= $GLIB_MIN_VERSION gthread-2.0 >= $GLIB_MIN_VERSION gmodule-2.0 >= $GLIB_MIN_VERSION],
1371 GTK_VERSION=`$PKG_CONFIG --modversion gtk+-3.0`
1372 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-gtk=3"
1377 [2], [PKG_WIRESHARK_CHECK_SYSTEM_MODULES([GTK],
1378 [gtk+-2.0 >= $GTK2_MIN_VERSION glib-2.0 >= $GLIB_MIN_VERSION gthread-2.0 >= $GLIB_MIN_VERSION gmodule-2.0 >= $GLIB_MIN_VERSION],
1381 GTK_VERSION=`$PKG_CONFIG --modversion gtk+-2.0`
1382 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-gtk=2"
1387 [fail3], [AC_MSG_ERROR([GTK+ 3 was requested but is not available])],
1388 [fail2], [AC_MSG_ERROR([GTK+ 2 was requested but is not available])],
1389 [fail], [AC_MSG_ERROR([GTK+ was requested but is not available])])
1391 AS_IF([test "x$have_gtk" = xyes], [break])
1394 if test "$have_gtk" = "yes" ; then
1395 # If we have GTK then add flags for it.
1399 GTK_CONFIG="$GLIB_CONFIG"
1401 gtk_major_version=`echo $GTK_VERSION | cut -d. -f1`
1402 gtk_minor_version=`echo $GTK_VERSION | cut -d. -f2`
1404 AX_APPEND_FLAG([-DGDK_DISABLE_DEPRECATED], [GTK_CONFIG])
1405 if test \( $gtk_major_version -eq 3 -a $gtk_minor_version -ge 10 \) ; then
1406 ## Allow use of deprecated & disable deprecated warnings if Gtk >= 3.10;
1407 ## The deprecations in Gtk 3.10 will not be fixed ...
1408 AX_APPEND_FLAG([-DGDK_DISABLE_DEPRECATION_WARNINGS], [GTK_CONFIG])
1410 AX_APPEND_FLAG([-DGTK_DISABLE_DEPRECATED], [GTK_CONFIG])
1412 AX_APPEND_FLAG([-DGTK_DISABLE_SINGLE_INCLUDES], [GTK_CONFIG])
1413 if test ! \( $gtk_major_version -eq 2 -a $gtk_minor_version -lt 20 \) ; then
1414 # Enable GSEAL when building with GTK > 2.20
1415 # (Versions prior to 2.22 lacked some necessary accessors.)
1416 AX_APPEND_FLAG([-DGSEAL_ENABLE], [GTK_CONFIG])
1419 GTK_CFLAGS="$GTK_CONFIG $GTK_CFLAGS"
1423 AC_SUBST(GTK_CFLAGS)
1425 AC_SUBST(GUI_CONFIGURE_FLAGS)
1427 # Check for GTK GUI support for GResource pixbufs
1428 have_gresource_pixbuf=no
1429 if test "x$have_gtk" = "xyes"; then
1430 AC_MSG_CHECKING(whether GDK-Pixbuf can load data using GResource)
1431 PKG_CHECK_EXISTS([gio-2.0 >= 2.32 gdk-pixbuf-2.0 >= 2.26],
1434 AC_DEFINE(HAVE_GDK_GRESOURCE, 1, [Defined if GResource is supported])
1435 have_gresource_pixbuf=yes
1437 [AC_MSG_RESULT(no)])
1439 AM_CONDITIONAL(HAVE_GRESOURCE_PIXBUF, test "x$have_gresource_pixbuf" = "xyes")
1441 if test "$have_gtk" = "yes" -a "$have_qt" = "yes" ; then
1442 # We have both GTK and Qt and thus will be building both wireshark
1443 # and wireshark-gtk.
1445 wireshark_bin="wireshark\$(EXEEXT) wireshark-gtk\$(EXEEXT)"
1446 wireshark_man="wireshark.1"
1447 wireshark_SUBDIRS="codecs ui/qt ui/gtk"
1449 if test "$have_gtk" = "no" -a "$have_qt" = "yes" ; then
1450 # We don't have GTK+ but we have Qt.
1452 wireshark_bin="wireshark\$(EXEEXT)"
1453 wireshark_man="wireshark.1"
1454 wireshark_SUBDIRS="codecs ui/qt"
1456 if test "$have_gtk" = "yes" -a "$have_qt" = "no" ; then
1457 # We have GTK+ but not Qt.
1459 wireshark_bin="wireshark-gtk\$(EXEEXT)"
1460 wireshark_man="wireshark.1"
1461 wireshark_SUBDIRS="codecs ui/gtk"
1462 OSX_APP_FLAGS="$OSX_APP_FLAGS -gtk"
1463 OSX_DMG_FLAGS="-gtk"
1465 if test "$have_gtk" = "no" -a "$have_qt" = "no" ; then
1466 # We have neither GTK+ nor Qt.
1468 # If they didn't explicitly say "--disable-wireshark",
1469 # fail (so that, unless they explicitly indicated that
1470 # they don't want Wireshark, we stop so they know they
1471 # won't be getting Wireshark unless they fix the GTK+/Qt
1474 if test "x$enable_wireshark" = "xyes"; then
1475 AC_MSG_ERROR([Neither Qt nor GTK+ are available, so Wireshark can't be compiled])
1479 wireshark_SUBDIRS=""
1483 # Check whether GLib modules are supported, to determine whether we
1484 # can support plugins.
1487 AC_CACHE_CHECK([whether GLib supports loadable modules],
1488 [ac_cv_glib_supports_modules], [
1489 ac_save_CFLAGS="$CFLAGS"
1490 ac_save_LIBS="$LIBS"
1491 CFLAGS="$WS_CFLAGS $GLIB_CFLAGS $CFLAGS"
1492 LIBS="$LIBS $GLIB_LIBS"
1495 #include <gmodule.h>
1502 if (g_module_supported())
1503 return 0; /* success */
1505 return 1; /* failure */
1507 ], ac_cv_glib_supports_modules=yes, ac_cv_glib_supports_modules=no,
1508 [echo $ac_n "cross compiling; assumed OK... $ac_c"
1509 ac_cv_glib_supports_modules=yes])
1510 CFLAGS="$ac_save_CFLAGS"
1511 LIBS="$ac_save_LIBS"
1513 if test "$ac_cv_glib_supports_modules" = yes ; then
1515 plugins_dir="plugins"
1520 AC_SUBST(plugins_dir)
1523 # If we have <dlfcn.h>, check whether we have dladdr.
1525 if test "$ac_cv_header_dlfcn_h" = "yes"
1528 # Use GLib compiler flags and linker flags; GLib's gmodule
1529 # stuff uses the dl APIs if available, so it might know
1530 # what flags are needed.
1532 ac_save_CFLAGS="$CFLAGS"
1533 ac_save_LIBS="$LIBS"
1534 CFLAGS="$WS_CFLAGS $GLIB_CFLAGS $CFLAGS"
1535 LIBS="$LIBS $GLIB_LIBS"
1536 AC_CHECK_FUNCS(dladdr)
1537 if test x$ac_cv_func_dladdr = xno
1540 # OK, try it with -ldl, in case you need that to get
1541 # dladdr(). For some reason, on Linux, that's not
1542 # part of the GLib flags; perhaps GLib itself is
1543 # linked with libdl, so that you can link with
1544 # Glib and it'll pull libdl in itself.
1547 AC_CHECK_FUNCS(dladdr)
1549 CFLAGS="$ac_save_CFLAGS"
1550 LIBS="$ac_save_LIBS"
1554 # Check whether GLib's printf supports thousands grouping. (This might
1555 # be different from the system's printf since GLib can optionally use
1556 # its own printf implementation.)
1558 AC_CACHE_CHECK([whether GLib supports POSIX/XSI thousands grouping],
1559 [ac_cv_glib_supports_printf_grouping], [
1560 ac_save_CFLAGS="$CFLAGS"
1561 ac_save_LIBS="$LIBS"
1562 CFLAGS="$WS_CFLAGS $GLIB_CFLAGS $CFLAGS"
1563 LIBS="$LIBS $GLIB_LIBS"
1574 setlocale(LC_ALL, "en_US.UTF-8");
1575 str = g_strdup_printf("%'u", 123456);
1576 return (strcmp (str, "123,456") != 0);
1578 ], ac_cv_glib_supports_printf_grouping=yes, ac_cv_glib_supports_printf_grouping=no,
1579 [echo $ac_n "cross compiling; playing it safe... $ac_c"
1580 ac_cv_glib_supports_printf_grouping=no])
1581 CFLAGS="$ac_save_CFLAGS"
1582 LIBS="$ac_save_LIBS"
1584 if test "$ac_cv_glib_supports_printf_grouping" = yes ; then
1585 AC_DEFINE(HAVE_GLIB_PRINTF_GROUPING, 1, [Define if GLib's printf functions support thousands grouping.])
1588 if test "x$have_gtk" = "xyes"
1591 # We have GTK+; do we want the OS X integration functions and,
1592 # if so, do we have them and, if so, which versions do we have,
1593 # the old Carbon-based ones or the new Cocoa-based ones?
1595 AC_MSG_CHECKING(whether to use OS X integration functions)
1597 AC_ARG_WITH(osx-integration,
1598 AC_HELP_STRING( [--with-osx-integration],
1599 [use OS X integration functions @<:@default=yes, if available@:>@]),
1601 if test $withval = no
1603 want_osx_integration=no
1605 want_osx_integration=yes
1608 want_osx_integration=yes
1610 if test "x$want_osx_integration" = "xno"; then
1614 AC_WIRESHARK_OSX_INTEGRATION_CHECK
1618 AC_SUBST(wireshark_bin)
1619 AC_SUBST(wireshark_man)
1620 AC_SUBST(wireshark_SUBDIRS)
1621 AM_CONDITIONAL(HAVE_Qt, test "$have_qt" = "yes")
1622 AM_CONDITIONAL(HAVE_GTK, test "$have_gtk" = "yes")
1623 AC_SUBST(OSX_APP_FLAGS)
1624 AC_SUBST(OSX_DMG_FLAGS)
1626 # Enable/disable tshark
1627 AC_ARG_ENABLE(tshark,
1628 AC_HELP_STRING( [--enable-tshark],
1629 [build tshark @<:@default=yes@:>@]),
1630 tshark=$enableval,enable_tshark=yes)
1632 if test "x$enable_tshark" = "xyes" ; then
1633 tshark_bin="tshark\$(EXEEXT)"
1634 tshark_man="tshark.1"
1635 wiresharkfilter_man="wireshark-filter.4"
1640 AC_SUBST(tshark_bin)
1641 AC_SUBST(tshark_man)
1643 # Enable/disable editcap
1645 AC_ARG_ENABLE(editcap,
1646 AC_HELP_STRING( [--enable-editcap],
1647 [build editcap @<:@default=yes@:>@]),
1648 enable_editcap=$enableval,enable_editcap=yes)
1650 if test "x$enable_editcap" = "xyes" ; then
1651 editcap_bin="editcap\$(EXEEXT)"
1652 editcap_man="editcap.1"
1657 AC_SUBST(editcap_bin)
1658 AC_SUBST(editcap_man)
1661 # Enabling/disabling of dumpcap is done later (after we know if we have PCAP
1664 # Enable/disable capinfos
1666 AC_ARG_ENABLE(capinfos,
1667 AC_HELP_STRING( [--enable-capinfos],
1668 [build capinfos @<:@default=yes@:>@]),
1669 enable_capinfos=$enableval,enable_capinfos=yes)
1671 if test "x$enable_capinfos" = "xyes" ; then
1672 capinfos_bin="capinfos\$(EXEEXT)"
1673 capinfos_man="capinfos.1"
1678 AC_SUBST(capinfos_bin)
1679 AC_SUBST(capinfos_man)
1681 # Enable/disable captype
1683 AC_ARG_ENABLE(captype,
1684 AC_HELP_STRING( [--enable-captype],
1685 [build captype @<:@default=yes@:>@]),
1686 enable_captype=$enableval,enable_captype=yes)
1688 if test "x$enable_captype" = "xyes" ; then
1689 captype_bin="captype\$(EXEEXT)"
1690 captype_man="captype.1"
1695 AC_SUBST(captype_bin)
1696 AC_SUBST(captype_man)
1698 # Enable/disable mergecap
1700 AC_ARG_ENABLE(mergecap,
1701 AC_HELP_STRING( [--enable-mergecap],
1702 [build mergecap @<:@default=yes@:>@]),
1703 enable_mergecap=$enableval,enable_mergecap=yes)
1705 if test "x$enable_mergecap" = "xyes" ; then
1706 mergecap_bin="mergecap\$(EXEEXT)"
1707 mergecap_man="mergecap.1"
1712 AC_SUBST(mergecap_bin)
1713 AC_SUBST(mergecap_man)
1715 # Enable/disable reordercap
1717 AC_ARG_ENABLE(reordercap,
1718 AC_HELP_STRING( [--enable-reordercap],
1719 [build reordercap @<:@default=yes@:>@]),
1720 enable_reordercap=$enableval,enable_reordercap=yes)
1722 if test "x$enable_reordercap" = "xyes" ; then
1723 reordercap_bin="reordercap\$(EXEEXT)"
1724 reordercap_man="reordercap.1"
1729 AC_SUBST(reordercap_bin)
1730 AC_SUBST(reordercap_man)
1732 # Enable/disable text2pcap
1734 AC_ARG_ENABLE(text2pcap,
1735 AC_HELP_STRING( [--enable-text2pcap],
1736 [build text2pcap @<:@default=yes@:>@]),
1737 text2pcap=$enableval,enable_text2pcap=yes)
1739 if test "x$enable_text2pcap" = "xyes" ; then
1740 text2pcap_bin="text2pcap\$(EXEEXT)"
1741 text2pcap_man="text2pcap.1"
1746 AC_SUBST(text2pcap_bin)
1747 AC_SUBST(text2pcap_man)
1749 # Enable/disable dftest
1751 AC_ARG_ENABLE(dftest,
1752 AC_HELP_STRING( [--enable-dftest],
1753 [build dftest @<:@default=yes@:>@]),
1754 enable_dftest=$enableval,enable_dftest=yes)
1756 if test "x$enable_dftest" = "xyes" ; then
1757 dftest_bin="dftest\$(EXEEXT)"
1758 dftest_man="dftest.1"
1763 AC_SUBST(dftest_bin)
1764 AC_SUBST(dftest_man)
1766 # Enable/disable randpkt
1768 AC_ARG_ENABLE(randpkt,
1769 AC_HELP_STRING( [--enable-randpkt],
1770 [build randpkt @<:@default=yes@:>@]),
1771 enable_randpkt=$enableval,enable_randpkt=yes)
1773 if test "x$enable_randpkt" = "xyes" ; then
1774 randpkt_bin="randpkt\$(EXEEXT)"
1775 randpkt_man="randpkt.1"
1780 AC_SUBST(randpkt_bin)
1781 AC_SUBST(randpkt_man)
1783 AC_SUBST(wiresharkfilter_man)
1786 AC_MSG_CHECKING(whether to use libpcap for packet capture)
1789 AC_HELP_STRING( [--with-pcap@<:@=DIR@:>@],
1790 [use libpcap for packet capturing @<:@default=yes@:>@]),
1792 if test $withval = no
1795 elif test $withval = yes
1806 if test "x$want_pcap" = "xno" ; then
1810 AC_WIRESHARK_PCAP_CHECK
1814 AC_MSG_CHECKING(whether to build dumpcap)
1816 AC_ARG_ENABLE(dumpcap,
1817 AC_HELP_STRING( [--enable-dumpcap],
1818 [build dumpcap @<:@default=yes@:>@]),
1819 enable_dumpcap=$enableval,enable_dumpcap=yes)
1821 if test "x$enable_dumpcap" = "xyes" ; then
1822 if test "x$want_pcap" = "xno" ; then
1824 AC_MSG_RESULT(pcap not available - disabling dumpcap)
1832 if test "x$enable_dumpcap" = "xyes" ; then
1833 dumpcap_bin="dumpcap\$(EXEEXT)"
1834 dumpcap_man="dumpcap.1"
1839 AC_SUBST(dumpcap_bin)
1840 AC_SUBST(dumpcap_man)
1842 # Enable/disable rawshark
1845 AC_MSG_CHECKING(whether to build rawshark)
1847 AC_ARG_ENABLE(rawshark,
1848 AC_HELP_STRING( [--enable-rawshark],
1849 [build rawshark @<:@default=yes@:>@]),
1850 rawshark=$enableval,enable_rawshark=yes)
1852 if test "x$enable_rawshark" = "xyes" ; then
1853 if test "x$want_pcap" = "xno" ; then
1855 AC_MSG_RESULT(pcap not available - disabling rawshark)
1863 if test "x$enable_rawshark" = "xyes" ; then
1864 rawshark_bin="rawshark\$(EXEEXT)"
1865 rawshark_man="rawshark.1"
1870 AC_SUBST(rawshark_bin)
1871 AC_SUBST(rawshark_man)
1873 # Enable/disable echld
1874 AC_ARG_ENABLE(echld,
1875 AC_HELP_STRING( [--enable-echld],
1876 [support echld (Experimental) @<:@default=no@:>@]),
1877 have_echld=$enableval,have_echld=no)
1879 AM_CONDITIONAL(HAVE_ECHLD, test "x$have_echld" = "xyes")
1880 if test "x$have_echld" = "xyes"
1882 AC_DEFINE(HAVE_ECHLD, 1, [Define if echld is enabled])
1883 echld_test_bin="echld_test\$(EXEEXT)"
1890 AC_SUBST(echld_test_bin)
1893 # Enable/disable tfshark
1894 AC_ARG_ENABLE(tfshark,
1895 AC_HELP_STRING( [--enable-tfshark],
1896 [build tfshark (Experimental) @<:@default=no@:>@]),
1897 tfshark=$enableval,enable_tfshark=no)
1899 if test "x$enable_tfshark" = "xyes" ; then
1900 tfshark_bin="tfshark\$(EXEEXT)"
1901 tfshark_man="tfshark.1"
1902 wiresharkfilter_man="wireshark-filter.4"
1907 AC_SUBST(tfshark_bin)
1908 AC_SUBST(tfshark_man)
1911 dnl Use pcap-ng by default
1912 AC_ARG_ENABLE(pcap-ng-default,
1913 AC_HELP_STRING( [--enable-pcap-ng-default],
1914 [use the pcap-ng file format by default instead of pcap @<:@default=yes@:>@]),
1915 enable_pcap_ng_default=$enableval,enable_pcap_ng_default=yes)
1916 if test x$enable_pcap_ng_default = xyes; then
1917 AC_DEFINE(PCAP_NG_DEFAULT, 1, [Support for pcap-ng])
1920 dnl pcap remote check
1921 AC_MSG_CHECKING(whether to use libpcap remote capturing feature)
1923 AC_ARG_WITH(pcap-remote,
1924 AC_HELP_STRING([--with-pcap-remote],
1925 [use libpcap remote capturing (requires libpcap)]),
1927 if test $withval = no
1931 want_pcap_remote=yes
1936 if test "x$want_pcap_remote" = "xno" -o "x$want_pcap" = "xno" ; then
1940 AC_WIRESHARK_PCAP_REMOTE_CHECK
1944 AC_MSG_CHECKING(whether to use zlib for gzip compression and decompression)
1947 AC_HELP_STRING([--with-zlib@<:@=DIR@:>@],
1948 [use zlib (located in directory DIR, if supplied) for gzip compression and decompression @<:@default=yes, if available@:>@]),
1950 if test "x$withval" = "xno"
1953 elif test "x$withval" = "xyes"
1962 # Use zlib if it's present, otherwise don't.
1964 want_zlib=ifavailable
1967 if test "x$want_zlib" = "xno" ; then
1971 AC_WIRESHARK_ZLIB_CHECK
1972 if test "x$want_zlib" = "xno" ; then
1973 AC_MSG_RESULT(zlib not found - disabling gzip compression and decompression)
1975 if test "x$ac_cv_func_inflatePrime" = "xno" ; then
1976 AC_MSG_RESULT(inflatePrime not found in zlib - disabling gzipped capture file support)
1983 AC_HELP_STRING( [--with-lua@<:@=DIR@:>@],
1984 [use liblua (located in directory DIR, if supplied) for the Lua scripting plugin @<:@default=yes, if available@:>@]),
1986 if test $withval = no
1989 elif test $withval = yes
1994 want_lua_dir=$withval
1997 # By default use Lua if we can find it
1998 want_lua=ifavailable
2001 if test "x$want_lua" != "xno" ; then
2002 AC_WIRESHARK_LIBLUA_CHECK
2004 if test "x$want_lua" = "xyes" -a "x$have_lua" = "xno"
2006 AC_MSG_ERROR([Lua support was requested, but is not available])
2009 if test "x$have_lua" = "xyes"
2011 AC_DEFINE(HAVE_LUA, 1, [Define to use Lua])
2013 AM_CONDITIONAL(HAVE_LIBLUA, test x$have_lua = xyes)
2015 AC_SUBST(LUA_CFLAGS)
2019 AC_MSG_CHECKING(whether to use libportaudio for the GTK+ RTP player)
2021 AC_ARG_WITH(portaudio,
2022 AC_HELP_STRING( [--with-portaudio@<:@=DIR@:>@],
2023 [use libportaudio (located in directory DIR, if supplied) for the GTK+ RTP player @<:@default=yes, if available@:>@]),
2025 if test $withval = no
2028 elif test $withval = yes
2033 portaudio_dir=$withval
2037 # Use libportaudio by default
2039 want_portaudio=ifavailable
2042 if test "x$want_portaudio" = "xno" ; then
2046 AC_WIRESHARK_LIBPORTAUDIO_CHECK
2047 if test "x$want_portaudio" = "xno" ; then
2048 AC_MSG_RESULT(libportaudio not found - disabling support for the GTK+ RTP player)
2051 AM_CONDITIONAL(HAVE_LIBPORTAUDIO, test x$want_portaudio = xyes)
2054 dnl Check if dumpcap should be installed with filesystem capabilities
2055 AC_PATH_PROG(SETCAP, setcap)
2056 AC_ARG_ENABLE(setcap-install,
2057 AC_HELP_STRING( [--enable-setcap-install],
2058 [install dumpcap with cap_net_admin and cap_net_raw @<:@default=no@:>@]),
2059 enable_setcap_install=$enableval,enable_setcap_install=no)
2061 AC_MSG_CHECKING(whether to install dumpcap with cap_net_admin and cap_net_raw capabilities)
2062 if test "x$enable_setcap_install" = "xno" ; then
2065 if test "x$SETCAP" = "x" ; then
2066 AC_MSG_RESULT(setcap not found)
2067 AC_MSG_ERROR([Setcap install was requested, but setcap was not found])
2068 elif test "x$enable_dumpcap" = "xno" ; then
2069 AC_MSG_RESULT(dumpcap disabled)
2070 AC_MSG_ERROR([Setcap install works only with dumpcap, but dumpcap is disabled])
2076 AM_CONDITIONAL(SETCAP_INSTALL, test x$enable_setcap_install = xyes)
2078 dnl Check if dumpcap should be installed setuid
2079 AC_ARG_ENABLE(setuid-install,
2080 AC_HELP_STRING( [--enable-setuid-install],
2081 [install dumpcap as setuid @<:@default=no@:>@]),
2082 enable_setuid_install=$enableval,enable_setuid_install=no)
2084 AC_MSG_CHECKING(whether to install dumpcap setuid)
2085 if test "x$enable_setuid_install" = "xno" ; then
2088 if test "x$enable_setcap_install" = "xyes" ; then
2089 enable_setuid_install=no
2090 AC_MSG_RESULT(setcap and setuid both selected)
2091 AC_MSG_ERROR(You must choose one of setcap install and setuid install)
2092 elif test "x$enable_dumpcap" = "xno" ; then
2093 AC_MSG_RESULT(dumpcap disabled)
2094 AC_MSG_ERROR([Setuid install works only with dumpcap, but dumpcap is disabled])
2100 AM_CONDITIONAL(SETUID_INSTALL, test x$enable_setuid_install = xyes)
2101 AC_CHECK_FUNCS(setresuid setresgid)
2103 dnl ...but our Network Operations group is named "no"!
2105 AC_ARG_WITH(dumpcap-group,
2106 AC_HELP_STRING( [--with-dumpcap-group=GROUP],
2107 [restrict dumpcap to GROUP]),
2109 if test "x$withval" = "xyes"; then
2110 AC_MSG_ERROR([No dumpcap group specified.])
2111 elif test "x$withval" != "xno"; then
2112 if test "x$enable_dumpcap" = "xno" ; then
2113 AC_MSG_ERROR(dumpcap group install works only with dumpcap but dumpcap is disabled)
2115 AC_MSG_RESULT($withval)
2116 DUMPCAP_GROUP="$withval"
2119 AC_SUBST(DUMPCAP_GROUP)
2120 AM_CONDITIONAL(HAVE_DUMPCAP_GROUP, test x$DUMPCAP_GROUP != x)
2122 dnl libcap (not libpcap) check
2124 AC_MSG_CHECKING(whether to use the libcap capabilities library)
2127 AC_HELP_STRING( [--with-libcap@<:@=DIR@:>@],
2128 [use libcap (located in directory DIR, if supplied) for POSIX.1e capabilities management @<:@default=yes, if present@:>@]),
2130 if test "x$withval" = "xno"; then
2132 elif test "x$withval" = "xyes"; then
2134 elif test -d "$withval"; then
2136 AC_WIRESHARK_ADD_DASH_L(WS_LDFLAGS, ${withval}/lib)
2139 if test "x$with_libcap" = "xno" ; then
2143 AC_WIRESHARK_LIBCAP_CHECK
2145 AC_SUBST(LIBCAP_LIBS)
2147 dnl Checks for header files.
2148 dnl Some of these may not be needed: http://hacks.owlfolio.org/header-survey/
2149 dnl Note, however, that, whilst this script is generally run only on UN*Xes:
2151 dnl 1) we also support building on and for Windows and not all of those
2152 dnl headers are present on Windows, so the code has to check a
2153 dnl #define *anyway* to determine whether to include the header
2158 dnl 2) this might also be run on Windows with a sufficiently UNIXy
2159 dnl environment such as Cygwin (although Wireshark should be built
2160 dnl natively rather than using Cygwin).
2162 AC_CHECK_HEADERS(fcntl.h getopt.h grp.h inttypes.h netdb.h pwd.h unistd.h)
2163 AC_CHECK_HEADERS(sys/ioctl.h sys/param.h sys/socket.h sys/sockio.h sys/stat.h sys/time.h sys/types.h sys/utsname.h sys/wait.h)
2164 AC_CHECK_HEADERS(netinet/in.h)
2165 AC_CHECK_HEADERS(arpa/inet.h arpa/nameser.h)
2166 AC_CHECK_HEADERS(ifaddrs.h)
2169 # On Linux, check for some additional headers, which we need as a
2170 # workaround for a bonding driver bug and for libpcap's current lack
2171 # of its own workaround for that bug.
2175 AC_CHECK_HEADERS(linux/sockios.h linux/if_bonding.h,,,[#include <sys/socket.h>])
2181 AC_MSG_CHECKING(whether to use SSL library)
2184 AC_HELP_STRING( [--with-ssl@<:@=DIR@:>@],
2185 [use SSL crypto library (located in directory DIR, if supplied) @<:@default=no@:>@]),
2187 if test "x$withval" = "xno"; then
2189 elif test "x$withval" = "xyes"; then
2191 elif test -d "$withval"; then
2193 AC_WIRESHARK_ADD_DASH_L(WS_LDFLAGS, ${withval}/lib)
2198 if test "x$want_ssl" = "xyes"; then
2200 AC_CHECK_LIB(crypto,EVP_md5,
2205 AC_MSG_ERROR([SSL crypto library was requested, but is not available])
2213 AC_MSG_CHECKING(whether to use Kerberos library)
2216 AC_HELP_STRING( [--with-krb5@<:@=DIR@:>@],
2217 [use Kerberos library (located in directory DIR, if supplied) to use in Kerberos dissection @<:@default=yes@:>@]),
2219 if test $withval = no
2222 elif test $withval = yes
2231 # Use Kerberos library if available, otherwise don't.
2233 want_krb5=ifavailable
2236 if test "x$want_krb5" = "xno" ; then
2240 AC_WIRESHARK_KRB5_CHECK
2246 AC_MSG_CHECKING(whether to use the c-ares library if available)
2249 AC_HELP_STRING( [--with-c-ares@<:@=DIR@:>@],
2250 [use c-ares (located in directory DIR, if supplied) @<:@default=yes, if present@:>@]),
2252 if test "x$withval" = "xno"; then
2254 elif test "x$withval" = "xyes"; then
2256 elif test -d "$withval"; then
2258 AC_WIRESHARK_ADD_DASH_L(WS_LDFLAGS, ${withval}/lib)
2261 if test "x$want_c_ares" = "xno" ; then
2265 AC_WIRESHARK_C_ARES_CHECK
2267 AC_SUBST(C_ARES_LIBS)
2271 AC_MSG_CHECKING(whether to use the GeoIP IP address mapping library if available)
2274 AC_HELP_STRING( [--with-geoip@<:@=DIR@:>@],
2275 [use GeoIP (located in directory DIR, if supplied) @<:@default=yes, if present@:>@]),
2277 if test "x$withval" = "xno"; then
2279 elif test "x$withval" = "xyes"; then
2281 elif test -d "$withval"; then
2283 AC_WIRESHARK_ADD_DASH_L(WS_LDFLAGS, ${withval}/lib)
2286 if test "x$want_geoip" = "xno"; then
2290 AC_WIRESHARK_GEOIP_CHECK
2292 AC_SUBST(GEOIP_LIBS)
2296 AC_MSG_CHECKING(whether to use the libssh library if available)
2299 AC_HELP_STRING( [--with-libssh@<:@=DIR@:>@],
2300 [use libssh (located in directory DIR, if supplied) @<:@default=yes, if present@:>@]),
2302 if test "x$withval" = "xno"; then
2304 elif test "x$withval" = "xyes"; then
2306 elif test -d "$withval"; then
2308 AC_WIRESHARK_ADD_DASH_L(WS_LDFLAGS, ${withval}/lib)
2311 if test "x$want_libssh" = "xno"; then
2315 AC_WIRESHARK_LIBSSH_CHECK
2317 AC_SUBST(LIBSSH_LIBS)
2319 dnl Checks for typedefs, structures, and compiler characteristics.
2322 # Check how we can get the time zone abbreviation
2325 # We need to know whether "struct stat" has an "st_flags" member
2326 # for file_user_immutable().
2328 AC_CHECK_MEMBERS([struct stat.st_flags])
2330 # We need to know whether "struct sockaddr" has an "sa_len" member
2331 # for get_interface_list().
2333 AC_CHECK_MEMBERS([struct sockaddr.sa_len],,,
2334 [#ifdef HAVE_SYS_TYPES_H
2335 #include <sys/types.h>
2337 #ifdef HAVE_SYS_SOCKET_H
2338 #include <sys/socket.h>
2341 # We must know our byte order
2344 # Checks whether "-traditional" is needed when using "ioctl".
2345 # XXX - do we need this?
2346 AC_PROG_GCC_TRADITIONAL
2348 AC_REPLACE_FUNCS(getopt_long)
2350 dnl Do we have optreset?
2352 if test "x$ac_cv_func_getopt_long" = xyes; then
2353 AC_CACHE_CHECK([whether optreset is defined], ac_cv_have_optreset,
2354 AC_LINK_IFELSE([AC_LANG_SOURCE([[extern int optreset;return optreset;]])],
2355 ac_cv_have_optreset=yes, ac_cv_have_optreset=no))
2356 if test "$ac_cv_have_optreset" = yes ; then
2357 AC_DEFINE(HAVE_OPTRESET, 1, [Define to 1 if you have the optreset variable])
2361 AC_REPLACE_FUNCS(inet_aton)
2363 AC_CHECK_FUNC(inet_pton, [
2364 dnl check for pre-BIND82 inet_pton() bug.
2365 AC_MSG_CHECKING(for broken inet_pton)
2366 AC_TRY_RUN([#include <sys/types.h>
2367 #include <sys/socket.h>
2368 #include <netinet/in.h>
2369 #include <arpa/inet.h>
2374 /* this should return 0 (error) */
2375 return inet_pton(AF_INET6, "0:1:2:3:4:5:6:7:", buf);
2379 }], [AC_MSG_RESULT(ok);
2380 have_inet_pton=yes], [AC_MSG_RESULT(broken);
2381 have_inet_pton=no], [AC_MSG_RESULT([cross compiling, assume it is broken]);
2382 have_inet_pton=no])],
2384 if test "$have_inet_pton" = no; then
2385 AC_LIBOBJ(inet_pton)
2387 AC_DEFINE(HAVE_INET_PTON, 1, [Define to 1 if you have the `inet_pton' function.])
2390 AC_REPLACE_FUNCS(inet_ntop)
2391 AC_REPLACE_FUNCS(strptime)
2392 AC_REPLACE_FUNCS(popcount)
2394 AC_CHECK_FUNCS(mkstemps mkdtemp)
2395 AC_CHECK_FUNCS(getprotobynumber)
2396 AC_CHECK_FUNCS(issetugid)
2397 AC_CHECK_FUNCS(sysconf)
2398 AC_CHECK_FUNCS(getifaddrs)
2399 AC_CHECK_FUNC(getexecname)
2402 # Check for SpeexDSP (http://www.speex.org)
2404 AS_IF([test "x$have_qt_multimedia_lib" = xyes],
2405 [PKG_CHECK_MODULES(SPEEXDSP, speexdsp, [have_speexdsp=yes], [have_speexdsp=no])])
2406 AS_IF([test "x$have_speexdsp" = xyes],
2407 [AC_DEFINE(HAVE_SPEEXDSP, 1, [Define to 1 if you have SpeexDSP])])
2408 AM_CONDITIONAL(HAVE_SPEEXDSP, [test "x$have_speexdsp" = "xyes"])
2410 # Check Bluetooth SBC codec for RTP Player
2411 # git://git.kernel.org/pub/scm/bluetooth/sbc.git
2413 AC_HELP_STRING( [--with-sbc=@<:@yes/no@:>@],
2414 [use SBC codec to play Bluetooth A2DP stream @<:@default=yes, if available@:>@]),
2415 with_sbc="$withval"; want_sbc="yes", with_sbc="yes")
2417 PKG_CHECK_MODULES(SBC, sbc >= 1.0, [have_sbc=yes], [have_sbc=no])
2418 if test "x$with_sbc" != "xno"; then
2419 if (test "${have_sbc}" = "yes"); then
2420 AC_DEFINE(HAVE_SBC, 1, [Define to support playing SBC by standalone BlueZ SBC library])
2421 elif test "x$want_sbc" = "xyes"; then
2422 # Error out if the user explicitly requested the sbc library
2423 AC_MSG_ERROR([SBC codec library was requested, but is not available])
2428 AM_CONDITIONAL(HAVE_SBC, test "x$have_sbc" = "xyes")
2431 dnl check whether plugins should be enabled and, if they should be,
2432 dnl check for plugins directory - stolen from Amanda's configure.ac
2434 dnl we don't wish to expand ${libdir} yet
2435 plugindir="\${libdir}/wireshark/plugins/${VERSION}"
2436 AC_ARG_WITH(plugins,
2437 AC_HELP_STRING( [--with-plugins@<:@=DIR@:>@],
2438 [support plugins (installed in DIR, if supplied) @<:@default=yes, if possible@:>@]),
2440 if test "x$withval" = "xno"; then
2442 elif test "x$have_plugins" = "xno"; then
2443 AC_MSG_ERROR([GLib on this platform doesn't support loadable modules, so you can't enable plugins.])
2444 elif test "x$withval" != "xyes"; then
2445 plugindir="$withval"
2448 AM_CONDITIONAL(HAVE_PLUGINS, test "x$have_plugins" = "xyes")
2449 if test x$have_plugins = xyes
2451 AC_DEFINE(HAVE_PLUGINS, 1, [Define if plugins are enabled])
2456 # The plugin dissectors reside in ./plugins/PROTO/
2459 AC_SUBST(PLUGIN_LIBS)
2462 dnl check whether extcap programs should be enabled and, if they should be,
2463 dnl check for extcap directory - stolen from Amanda's configure.ac
2465 dnl we don't wish to expand ${libdir} yet
2466 extcapdir="\${libdir}/wireshark/extcap"
2468 AC_HELP_STRING( [--with-extcap@<:@=DIR@:>@],
2469 [use extcap for external capture sources (installed in DIR, if supplied) @<:@default=yes, if possible@:>@]),
2471 if test "x$withval" = "xno"; then
2473 elif test "x$withval" = "xyes"; then
2475 elif test "x$withval" != "xyes"; then
2477 extcapdir ="$withval"
2482 AM_CONDITIONAL(HAVE_EXTCAP, test "x$have_extcap" = "xyes")
2483 if test "x$have_extcap" = "xyes"
2485 AC_DEFINE(HAVE_EXTCAP, 1, [Define if external capture sources should be enabled])
2486 extcap_subdir="extcap"
2487 extcap_man="extcap.4"
2489 AC_SUBST(extcap_subdir)
2490 AC_SUBST(extcap_man)
2493 dnl androiddump check
2494 AC_MSG_CHECKING(whether to build androiddump)
2496 AC_ARG_ENABLE(androiddump,
2497 AC_HELP_STRING( [--enable-androiddump],
2498 [build androiddump @<:@default=yes@:>@]),
2499 androiddump=$enableval,enable_androiddump=yes)
2501 if test "x$have_extcap" != xyes; then
2502 AC_MSG_RESULT([no, extcap disabled])
2503 enable_androiddump=no
2504 elif test "x$enable_androiddump" = "xyes" ; then
2510 AC_ARG_ENABLE(androiddump_use_libpcap,
2511 AC_HELP_STRING( [--enable-androiddump-use-libpcap],
2512 [build androiddump using libpcap @<:@default=no@:>@]),
2513 androiddump_use_libpcap=$enableval,enable_androiddump_use_libpcap=no)
2515 if test "x$enable_androiddump" = "xyes" -a "x$enable_androiddump_use_libpcap" = "xyes" ; then
2516 AC_DEFINE(ANDROIDDUMP_USE_LIBPCAP, 1, [Androiddump will use Libpcap])
2519 if test "x$enable_androiddump" = "xyes" ; then
2520 androiddump_bin="androiddump\$(EXEEXT)"
2521 androiddump_man="androiddump.1"
2526 AC_SUBST(androiddump_bin)
2527 AC_SUBST(androiddump_man)
2530 AC_MSG_CHECKING(whether to build sshdump)
2532 AC_ARG_ENABLE(sshdump,
2533 AC_HELP_STRING( [--enable-sshdump],
2534 [build sshdump @<:@default=yes@:>@]),
2535 [],[enable_sshdump=yes])
2537 if test "x$have_extcap" != xyes; then
2538 AC_MSG_RESULT([no, extcap disabled])
2540 elif test "x$have_libssh_pointsix" != xyes; then
2541 AC_MSG_RESULT([no, libssh >= 0.6.0 not available])
2543 elif test "x$enable_sshdump" = "xyes" ; then
2549 if test "x$enable_sshdump" = "xyes" ; then
2550 sshdump_bin="sshdump\$(EXEEXT)"
2551 sshdump_man="sshdump.1"
2556 AC_SUBST(sshdump_bin)
2557 AC_SUBST(sshdump_man)
2560 AC_MSG_CHECKING(whether to build ciscodump)
2562 AC_ARG_ENABLE(ciscodump,
2563 AC_HELP_STRING( [--enable-ciscodump],
2564 [build ciscodump @<:@default=yes@:>@]),
2565 [],[enable_ciscodump=yes])
2567 if test "x$have_extcap" != xyes; then
2568 AC_MSG_RESULT([no, extcap disabled])
2570 elif test "x$have_libssh_pointsix" != xyes; then
2571 AC_MSG_RESULT([no, libssh >= 0.6.0 not available])
2573 elif test "x$enable_ciscodump" = "xyes" ; then
2579 if test "x$enable_ciscodump" = "xyes" ; then
2580 ciscodump_bin="ciscodump\$(EXEEXT)"
2581 ciscodump_man="ciscodump.1"
2586 AC_SUBST(ciscodump_bin)
2587 AC_SUBST(ciscodump_man)
2589 dnl randpktdump check
2590 AC_MSG_CHECKING(whether to build randpktdump)
2592 AC_ARG_ENABLE(randpktdump,
2593 AC_HELP_STRING( [--enable-randpktdump],
2594 [build randpktdump @<:@default=yes@:>@]),
2595 randpktdump=$enableval,enable_randpktdump=yes)
2597 if test "x$have_extcap" != xyes; then
2598 AC_MSG_RESULT([no, extcap disabled])
2599 enable_randpktdump=no
2600 elif test "x$enable_randpktdump" = "xyes" ; then
2606 if test "x$enable_randpktdump" = "xyes" ; then
2607 randpktdump_bin="randpktdump\$(EXEEXT)"
2608 randpktdump_man="randpktdump.1"
2613 AC_SUBST(randpktdump_bin)
2614 AC_SUBST(randpktdump_man)
2617 AC_MSG_CHECKING(whether to build udpdump)
2619 AC_ARG_ENABLE(udpdump,
2620 AC_HELP_STRING( [--enable-udpdump],
2621 [build udpdump @<:@default=yes@:>@]),
2622 [],[enable_udpdump=yes])
2624 if test "x$have_extcap" != xyes; then
2625 AC_MSG_RESULT([no, extcap disabled])
2627 elif test "x$enable_udpdump" = "xyes" ; then
2633 if test "x$enable_udpdump" = "xyes" ; then
2634 udpdump_bin="udpdump\$(EXEEXT)"
2635 udpdump_man="udpdump.1"
2640 AC_SUBST(udpdump_bin)
2641 AC_SUBST(udpdump_man)
2643 AM_CONDITIONAL(ENABLE_STATIC, test x$enable_static = xyes)
2644 if test x$enable_static = xyes -a x$have_plugins = xyes
2646 AC_DEFINE(ENABLE_STATIC, 1, [Link plugins statically into Wireshark])
2648 AC_SUBST(ENABLE_STATIC)
2650 # Gather which GUI we're building for rpmbuild
2651 if test "x$have_gtk" = "xyes"; then
2652 if test "x$gtk_major_version" = "x3"; then
2653 RPMBUILD_WITH_ARGS="--with gtk3 --without gtk2"
2655 RPMBUILD_WITH_ARGS="--without gtk3 --with gtk2"
2658 RPMBUILD_WITH_ARGS="--without gtk2 --without gtk3"
2660 if test "x$have_qt" = "xyes" ; then
2661 if test "$qt_version" -eq "5"; then
2662 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with qt5"
2664 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with qt"
2667 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --without qt --without qt5"
2669 if test "x$have_lua" = "xyes" ; then
2670 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with lua"
2672 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --without lua"
2674 AC_SUBST(RPMBUILD_WITH_ARGS)
2675 AC_SUBST(RPM_VERSION, version_major.version_minor.version_micro)
2677 AC_SUBST(WS_CPPFLAGS)
2679 AC_SUBST(WS_CXXFLAGS)
2680 AC_SUBST(WS_LDFLAGS)
2682 AC_SUBST(WS_CFLAGS_FOR_BUILD)
2684 AH_BOTTOM([#include <ws_diag_control.h>])
2686 dnl Save the cacheable configure results to config.cache before recursing
2689 sinclude(plugins/Custom.m4) dnl
2690 ifdef(_CUSTOM_AC_OUTPUT_,, define(_CUSTOM_AC_OUTPUT_, )) dnl
2692 sinclude(epan/dissectors/asn1/Custom.m4) dnl
2693 ifdef(_CUSTOM_ASN1_AC_OUTPUT_,, define(_CUSTOM_ASN1_AC_OUTPUT_, )) dnl
2695 AC_CONFIG_HEADERS([config.h])
2700 epan/dissectors/asn1/Makefile
2702 _CUSTOM_ASN1_AC_OUTPUT_
2703 epan/dissectors/asn1/acp133/Makefile
2704 epan/dissectors/asn1/acse/Makefile
2705 epan/dissectors/asn1/ansi_map/Makefile
2706 epan/dissectors/asn1/ansi_tcap/Makefile
2707 epan/dissectors/asn1/atn-cm/Makefile
2708 epan/dissectors/asn1/atn-cpdlc/Makefile
2709 epan/dissectors/asn1/atn-ulcs/Makefile
2710 epan/dissectors/asn1/c1222/Makefile
2711 epan/dissectors/asn1/camel/Makefile
2712 epan/dissectors/asn1/cdt/Makefile
2713 epan/dissectors/asn1/charging_ase/Makefile
2714 epan/dissectors/asn1/cmip/Makefile
2715 epan/dissectors/asn1/cmp/Makefile
2716 epan/dissectors/asn1/crmf/Makefile
2717 epan/dissectors/asn1/cms/Makefile
2718 epan/dissectors/asn1/credssp/Makefile
2719 epan/dissectors/asn1/dap/Makefile
2720 epan/dissectors/asn1/disp/Makefile
2721 epan/dissectors/asn1/dop/Makefile
2722 epan/dissectors/asn1/dsp/Makefile
2723 epan/dissectors/asn1/ess/Makefile
2724 epan/dissectors/asn1/ftam/Makefile
2725 epan/dissectors/asn1/goose/Makefile
2726 epan/dissectors/asn1/gprscdr/Makefile
2727 epan/dissectors/asn1/gsm_map/Makefile
2728 epan/dissectors/asn1/h225/Makefile
2729 epan/dissectors/asn1/h235/Makefile
2730 epan/dissectors/asn1/h245/Makefile
2731 epan/dissectors/asn1/h248/Makefile
2732 epan/dissectors/asn1/h282/Makefile
2733 epan/dissectors/asn1/h283/Makefile
2734 epan/dissectors/asn1/h323/Makefile
2735 epan/dissectors/asn1/h450/Makefile
2736 epan/dissectors/asn1/h450-ros/Makefile
2737 epan/dissectors/asn1/h460/Makefile
2738 epan/dissectors/asn1/h501/Makefile
2739 epan/dissectors/asn1/HI2Operations/Makefile
2740 epan/dissectors/asn1/hnbap/Makefile
2741 epan/dissectors/asn1/idmp/Makefile
2742 epan/dissectors/asn1/ilp/Makefile
2743 epan/dissectors/asn1/inap/Makefile
2744 epan/dissectors/asn1/isdn-sup/Makefile
2745 epan/dissectors/asn1/kerberos/Makefile
2746 epan/dissectors/asn1/lcsap/Makefile
2747 epan/dissectors/asn1/ldap/Makefile
2748 epan/dissectors/asn1/logotypecertextn/Makefile
2749 epan/dissectors/asn1/lpp/Makefile
2750 epan/dissectors/asn1/lppa/Makefile
2751 epan/dissectors/asn1/lppe/Makefile
2752 epan/dissectors/asn1/lte-rrc/Makefile
2753 epan/dissectors/asn1/m2ap/Makefile
2754 epan/dissectors/asn1/m3ap/Makefile
2755 epan/dissectors/asn1/mms/Makefile
2756 epan/dissectors/asn1/mpeg-audio/Makefile
2757 epan/dissectors/asn1/mpeg-pes/Makefile
2758 epan/dissectors/asn1/nbap/Makefile
2759 epan/dissectors/asn1/ns_cert_exts/Makefile
2760 epan/dissectors/asn1/novell_pkis/Makefile
2761 epan/dissectors/asn1/ocsp/Makefile
2762 epan/dissectors/asn1/p1/Makefile
2763 epan/dissectors/asn1/p22/Makefile
2764 epan/dissectors/asn1/p7/Makefile
2765 epan/dissectors/asn1/p772/Makefile
2766 epan/dissectors/asn1/pcap/Makefile
2767 epan/dissectors/asn1/pkcs1/Makefile
2768 epan/dissectors/asn1/pkcs12/Makefile
2769 epan/dissectors/asn1/pkinit/Makefile
2770 epan/dissectors/asn1/pkixac/Makefile
2771 epan/dissectors/asn1/pkix1explicit/Makefile
2772 epan/dissectors/asn1/pkix1implicit/Makefile
2773 epan/dissectors/asn1/pkixproxy/Makefile
2774 epan/dissectors/asn1/pkixqualified/Makefile
2775 epan/dissectors/asn1/pkixtsp/Makefile
2776 epan/dissectors/asn1/pres/Makefile
2777 epan/dissectors/asn1/q932/Makefile
2778 epan/dissectors/asn1/q932-ros/Makefile
2779 epan/dissectors/asn1/qsig/Makefile
2780 epan/dissectors/asn1/ranap/Makefile
2781 epan/dissectors/asn1/rnsap/Makefile
2782 epan/dissectors/asn1/ros/Makefile
2783 epan/dissectors/asn1/rrc/Makefile
2784 epan/dissectors/asn1/rrlp/Makefile
2785 epan/dissectors/asn1/rtse/Makefile
2786 epan/dissectors/asn1/rua/Makefile
2787 epan/dissectors/asn1/s1ap/Makefile
2788 epan/dissectors/asn1/sabp/Makefile
2789 epan/dissectors/asn1/sbc-ap/Makefile
2790 epan/dissectors/asn1/smrse/Makefile
2791 epan/dissectors/asn1/snmp/Makefile
2792 epan/dissectors/asn1/spnego/Makefile
2793 epan/dissectors/asn1/sv/Makefile
2794 epan/dissectors/asn1/t124/Makefile
2795 epan/dissectors/asn1/t125/Makefile
2796 epan/dissectors/asn1/t38/Makefile
2797 epan/dissectors/asn1/tcap/Makefile
2798 epan/dissectors/asn1/tetra/Makefile
2799 epan/dissectors/asn1/ulp/Makefile
2800 epan/dissectors/asn1/wlancertextn/Makefile
2801 epan/dissectors/asn1/x2ap/Makefile
2802 epan/dissectors/asn1/x509af/Makefile
2803 epan/dissectors/asn1/x509ce/Makefile
2804 epan/dissectors/asn1/x509if/Makefile
2805 epan/dissectors/asn1/x509sat/Makefile
2806 epan/dissectors/asn1/x721/Makefile
2808 capchild/doxygen.cfg
2810 caputils/doxygen.cfg
2814 epan/compress/Makefile
2817 epan/dfilter/Makefile
2818 epan/dissectors/Makefile
2819 epan/dissectors/dcerpc/Makefile
2820 epan/ftypes/Makefile
2821 epan/nghttp2/Makefile
2835 packaging/macosx/Info.plist
2836 packaging/macosx/Makefile
2837 packaging/macosx/osx-dmg.sh
2838 packaging/macosx/Wireshark_package.pmdoc/index.xml
2839 packaging/nsis/Makefile
2840 packaging/rpm/Makefile
2841 packaging/rpm/SPECS/Makefile
2842 packaging/rpm/SPECS/wireshark.spec
2843 packaging/svr4/Makefile
2844 packaging/svr4/checkinstall
2845 packaging/svr4/pkginfo
2846 packaging/wix/Makefile
2848 plugins/docsis/Makefile
2849 plugins/easy_codec/Makefile
2850 plugins/ethercat/Makefile
2851 plugins/gryphon/Makefile
2852 plugins/irda/Makefile
2853 plugins/m2m/Makefile
2854 plugins/mate/Makefile
2855 plugins/opcua/Makefile
2856 plugins/profinet/Makefile
2857 plugins/stats_tree/Makefile
2858 plugins/unistim/Makefile
2859 plugins/wimax/Makefile
2860 plugins/wimaxasncp/Makefile
2861 plugins/wimaxmacphy/Makefile
2862 randpkt_core/doxygen.cfg
2863 randpkt_core/Makefile
2865 tools/lemon/Makefile
2868 writecap/doxygen.cfg
2879 if test "x$have_gtk" = "xyes"; then
2880 gtk_lib_message=" (with GTK+ v$GTK_VERSION"
2881 if test "x$have_ige_mac" = "xyes"; then
2882 gtk_lib_message="$gtk_lib_message and OS X integration)"
2884 gtk_lib_message="$gtk_lib_message)"
2888 if test "x$have_qt" = "xyes" ; then
2889 enable_wireshark_qt="yes"
2890 qt_lib_message=" (with Qt$qt_version v$QT_VERSION)"
2892 enable_wireshark_qt="no"
2895 if test "x$enable_setcap_install" = "xyes" ; then
2896 setcap_message="yes"
2901 if test "x$enable_setuid_install" = "xyes" ; then
2902 setuid_message="yes"
2907 if test "x$DUMPCAP_GROUP" = "x" ; then
2908 dumpcap_group_message="(none)"
2910 dumpcap_group_message="$DUMPCAP_GROUP"
2913 if test "x$want_zlib" = "xno" ; then
2919 if test "x$have_lua" = "xyes" ; then
2925 if test "x$have_qt_multimedia_lib" = "xyes" ; then
2926 qt_multimedia_message="yes"
2928 qt_multimedia_message="no"
2931 if test "x$want_portaudio" = "xyes" ; then
2932 portaudio_message="yes"
2934 portaudio_message="no"
2937 if test "x$want_ssl" = "xno" ; then
2943 if test "x$want_krb5" = "xno" ; then
2946 krb5_message="yes ($ac_krb5_version)"
2949 if test "x$have_good_c_ares" = "xyes" ; then
2950 c_ares_message="yes"
2952 c_ares_message="no (name resolution will be disabled)"
2955 if test "x$have_good_libcap" = "xyes" ; then
2956 libcap_message="yes"
2961 if test "x$have_good_geoip" = "xyes" ; then
2967 if test "x$have_good_libssh" = "xyes" ; then
2968 libssh_message="yes"
2973 if test "x$have_ssh_userauth_agent" = "xyes" ; then
2974 ssh_userauth_agent_message="yes"
2976 ssh_userauth_agent_message="no"
2980 echo " CPPFLAGS: $WS_CPPFLAGS $CPPFLAGS"
2982 echo " CFLAGS: $WS_CFLAGS $CFLAGS"
2984 echo " CXXFLAGS: $WS_CXXFLAGS $CXXFLAGS"
2986 echo " LDFLAGS: $WS_LDFLAGS $LDFLAGS"
2991 echo "The Wireshark package has been configured with the following options:"
2992 echo " GLib version : v$GLIB_VERSION"
2993 echo " Build wireshark : $enable_wireshark_qt$qt_lib_message"
2994 echo " Build wireshark-gtk : $have_gtk""$gtk_lib_message"
2995 echo " Build tshark : $enable_tshark"
2996 echo " Build tfshark : $enable_tfshark"
2997 echo " Build capinfos : $enable_capinfos"
2998 echo " Build captype : $enable_captype"
2999 echo " Build editcap : $enable_editcap"
3000 echo " Build dumpcap : $enable_dumpcap"
3001 echo " Build mergecap : $enable_mergecap"
3002 echo " Build reordercap : $enable_reordercap"
3003 echo " Build text2pcap : $enable_text2pcap"
3004 echo " Build randpkt : $enable_randpkt"
3005 echo " Build dftest : $enable_dftest"
3006 echo " Build rawshark : $enable_rawshark"
3007 echo " Build androiddump : $enable_androiddump"
3008 echo " Build sshdump : $enable_sshdump"
3009 echo " Build ciscodump : $enable_ciscodump"
3010 echo " Build randpktdump : $enable_randpktdump"
3011 echo " Build udpdump : $enable_udpdump"
3012 echo " Build echld : $have_echld"
3014 echo " Save files as pcap-ng by default : $enable_pcap_ng_default"
3015 echo " Install dumpcap with capabilities : $setcap_message"
3016 echo " Install dumpcap setuid : $setuid_message"
3017 echo " Use dumpcap group : $dumpcap_group_message"
3018 echo " Use plugins : $have_plugins"
3019 echo " Use external capture sources : $have_extcap"
3020 echo " Use Lua library : $lua_message"
3021 echo " Build Qt RTP player : $qt_multimedia_message"
3022 echo " Build GTK+ RTP player : $portaudio_message"
3023 echo " Build profile binaries : $enable_profile_build"
3024 echo " Use pcap library : $want_pcap"
3025 echo " Use zlib library : $zlib_message"
3026 echo " Use kerberos library : $krb5_message"
3027 echo " Use c-ares library : $c_ares_message"
3028 echo " Use SMI MIB library : $libsmi_message"
3029 echo " Use GNU gcrypt library : $gcrypt_message"
3030 echo " Use SSL crypto library : $ssl_message"
3031 echo " Use GnuTLS library : $tls_message"
3032 echo " Use POSIX capabilities library : $libcap_message"
3033 echo " Use GeoIP library : $geoip_message"
3034 echo " Use libssh library : $libssh_message"
3035 echo " Have ssh_userauth_agent : $ssh_userauth_agent_message"
3036 echo " Use nl library : $libnl_message"
3037 echo " Use SBC codec library : $have_sbc"
3038 #echo " Use GDK-Pixbuf with GResource: $have_gresource_pixbuf"