2 # Autoconf script for Wireshark
6 # Define variables for the components of the Wireshark version number.
8 m4_define([version_major], [1])
9 m4_define([version_minor], [99])
10 m4_define([version_micro], [0])
11 m4_define([version_micro_extra], version_micro)
12 m4_append([version_micro_extra], [])
14 AC_INIT(wireshark, [version_major.version_minor.version_micro_extra], http://bugs.wireshark.org/, , http://www.wireshark.org/)
18 # Minimum autoconf version we require.
20 # Variable expansion doesn't work in AC_PREREQ()
22 AC_SUBST(AC_MIN_VERSION)
24 dnl Check for CPU / vendor / OS
25 dnl The user is encouraged to use either `AC_CANONICAL_BUILD', or
26 dnl `AC_CANONICAL_HOST', or `AC_CANONICAL_TARGET', depending on the
27 dnl needs. Using `AC_CANONICAL_TARGET' is enough to run the two other
30 dnl As nothing in the Wireshark is itself a build tool (we are not,
31 dnl for example, a compiler that generates machine code), we probably
32 dnl don't need AC_CANONICAL_TARGET, so, in theory, we should be able
33 dnl to use AC_CANONICAL_BUILD and AC_CANONICAL_HOST - or perhaps just
34 dnl AC_CANONICAL_HOST - instead. Note that we do have tools, such as
35 dnl lemon, that need to be built for the build machine, not for the
36 dnl host machine, so we might need both.
38 dnl This has to be done *after* AC_INIT, otherwise autogen.sh fails.
40 dnl AC_CANONICAL_BUILD
44 AM_INIT_AUTOMAKE([1.9 tar-ustar dist-bzip2 no-dist-gzip])
46 # Make Wireshark's version available in config.h
47 AC_DEFINE(VERSION_MAJOR, version_major, [Wireshark's major version])
48 AC_DEFINE(VERSION_MINOR, version_minor, [Wireshark's minor version])
49 AC_DEFINE(VERSION_MICRO, version_micro, [Wireshark's micro version])
54 # Checks for programs used in the main build process.
62 dnl Work around libtool bug (fixed in the version 1.5a?)
63 AC_DEFUN([AC_PROVIDE_AC_LIBTOOL_DLOPEN], )
66 if test ! -z "$CXX"; then
68 # OK, we found something AC_LANG_CXX thinks is a C++ compiler,
71 # Some UN*Xes have, by default, a case-insensitive file
72 # system, and AC_PROG_CXX looks for, among other things,
73 # "CC" as a C++ compiler, and, if you have a case-insensitive
74 # file system and a C compiler named "cc" (both true, by
75 # default, on OS X), AC_PROG_CXX may end up thinking it's
78 # So we check by feeding the purported C++ compiler a
79 # program using C++ features (iostream).
81 # We do this after AC_PROG_LIBTOOL; if we did so before, and
82 # cleared CXX if what we had isn't a C++ compiler, that'd
83 # get undone by AC_PROG_LIBTOOL for some reason.
85 AC_MSG_CHECKING(whether $CXX is a C++ compiler)
87 AC_LINK_IFELSE([AC_LANG_PROGRAM(
92 std::cout << "Hello World! ";
102 AC_PATH_PROG(PERL, perl)
105 AC_PATH_PROG(PYTHON, python)
106 if test ! -z "$PYTHON"; then
108 # OK, we found Python; is it Python 2.5 or later?
109 # Note: we don't use named components for sys.version_info to get
110 # the major version number, as named components for version_info
111 # were apparently introduced in Python 2.7.
113 AC_MSG_CHECKING([whether $PYTHON is Python 2.5 or later])
114 python_major_version=`$PYTHON -c 'import sys; print (sys.version_info[[0]])'`
115 python_minor_version=`$PYTHON -c 'import sys; print (sys.version_info[[1]])'`
116 if test "$python_major_version" -eq 2 -a "$python_minor_version" -lt 5 ; then
118 AC_MSG_WARN([Building with Python $python_major_version.$python_minor_version may not work])
125 # XXX - should autogen.sh check for YACC/Bison and Flex? A user building
126 # from a distribution tarball shouldn't have to have YACC/Bison or Flex,
127 # as the tarball should contain the results of running YACC/Bison on .y
128 # files and running Flex on .l files, but a user building from SVN
129 # will have to run YACC/Bison and Flex to process those files.
131 # On the other hand, what about users who use a distribution tarball to
132 # do development? They *shouldn't* - that's what the SVN repository is
133 # for - but they might. They'd get errors if they modify a .y or .l
134 # file and try to do a build - but the error should tell them that they
135 # need to get YACC/Bison and/or Flex.
137 # Then again, getting them shouldn't be too big of a burden.
139 # XXX - is the same true of pod2man and pod2html, or are they needed
140 # even when building from a distribution tarball?
144 AC_PATH_PROG(YACCDUMMY, $YACC)
145 if test "x$YACCDUMMY" = x
147 AC_MSG_ERROR(I couldn't find yacc (or bison or ...); make sure it's installed and in your path)
150 AC_PATH_PROG(LEX, flex)
153 AC_MSG_ERROR(I couldn't find flex; make sure it's installed and in your path)
155 AC_PATH_PROG(POD2MAN, pod2man)
156 if test "x$POD2MAN" = x
159 # The alternative is not to build the man pages....
161 AC_MSG_ERROR(I couldn't find pod2man; make sure it's installed and in your path)
163 AC_PATH_PROG(POD2HTML, pod2html)
164 if test "x$POD2HTML" = x
167 # The alternative is not to build the HTML man pages....
169 AC_MSG_ERROR(I couldn't find pod2html; make sure it's installed and in your path)
173 # Checks for programs used by Wireshark/TShark/etc.
177 # XXX - this looks for various HTML viewers on the host, not the target;
178 # we really want to know what's available on the target, for cross-builds.
179 # That would probably require us to, at run time, look for xdg-open and,
180 # if we don't find it, look for mozilla, htmlview, etc.
182 AC_PATH_PROG(HTML_VIEWER, xdg-open)
183 if test "x$HTML_VIEWER" != x
186 # XXX - the HTML_VIEWER shell variable is the full path of xdg-open.
187 # Define some variable to be that, so we just run that?
189 AC_DEFINE(HAVE_XDG_OPEN, 1, [Define if we have xdg-open])
192 # XXX - we have to define HTML_VIEWER for the prefs.c code that
193 # sets the default value of the Web browser preference, even
194 # though that preference won't be offered.
196 AC_DEFINE_UNQUOTED(HTML_VIEWER, "xdg-open", [HTML viewer, e.g. mozilla])
198 AC_PATH_PROG(HTML_VIEWER, htmlview)
199 if test "x$HTML_VIEWER" = x
201 AC_DEFINE_UNQUOTED(HTML_VIEWER, "mozilla", [HTML viewer, e.g. mozilla])
203 AC_DEFINE_UNQUOTED(HTML_VIEWER, "htmlview", [HTML viewer, e.g. mozilla])
208 # Set "ac_supports_gcc_flags" if the compiler is known to support GCC-style
209 # flags such as -pedantic, -W warning flags and -f feature flags. Currently,
210 # we assume GCC and clang do; other compilers should be added here.
212 # This is done to avoid getting tripped up by compilers that support
213 # those flags but give them a different meaning.
215 if test "x$GCC" = "xyes" -o "x$CC" = "xclang" ; then
216 ac_supports_gcc_flags=yes
219 if test "x$CC_FOR_BUILD" = x
223 AC_SUBST(CC_FOR_BUILD)
224 AC_SUBST(CFLAGS_FOR_BUILD)
227 AC_PATH_PROG(DOXYGEN, doxygen)
228 AC_CHECK_PROG(HAVE_DOXYGEN, doxygen, "yes", "no")
229 AM_CONDITIONAL(HAVE_DOXYGEN, test x$HAVE_DOXYGEN = xyes)
232 # Check for pkg-config and set PKG_CONFIG accordingly.
234 # This is referenced via AC_REQUIRE([PKG_PROG_PKG_CONFIG] in some macros
235 # like PKG_CHECK_MODULES. If the first call to such a macro is under an
236 # "if" statement, it's safer to call PKG_PROG_PKG_CONFIG directly, see
237 # the comments in acolocal.m4
241 AC_ARG_ENABLE(osx-deploy-target,
242 AC_HELP_STRING( [--enable-osx-deploy-target],
243 [choose an OS X deployment target @<:@default=major release on which you're building@:>@]),
253 # Let the user specify an OS X release to use as a
254 # deplayment target; if they specify that we should
255 # have a deployment target but don't specify the
256 # deployment target, then, if we have SDKs available,
257 # pick the OS version on which the build is being done.
258 # This also causes the build to be done against an SDK
259 # rather than against the headers and libraries in
260 # /usr/include and /usr/lib.
262 # Check for an OS X deployment target early, so that
263 # as many tests using the compiler are done using the
264 # flags that we'll be using when building.
266 if test $enableval = no
269 # The user explicitly said
270 # --disable-osx-deploy-target, so don't build
274 elif test $enableval = yes
277 # The user said --enable-osx-deploy-target, but
278 # didn't say what version to target; target the
279 # major version number of the version of OS X on
280 # which we're running.
282 # (We quote the command so that we can use
283 # autoconf's M4 quoting characters, [ and ], in
284 # the sed expression.)
286 [deploy_target=`sw_vers -productVersion | sed 's/\([0-9][0-9]*\)\.\([0-9][0-9]*\)\.[0-9]*/\1.\2/'`]
288 deploy_target="$enableval"
294 # No. Fail, because whatever the user intended for us to
295 # do, we can't do it.
297 AC_MSG_ERROR([--enable-osx-deploy-target specified on an OS other than OS X])
309 # If we have SDKs available, default to targeting the major
310 # version number of the version of OS X on which we're
313 # (We quote the command so that we can use autoconf's
314 # M4 quoting characters, [ and ], in the sed expression.)
316 for i in /Developer/SDKs \
317 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs \
318 /Library/Developer/CommandLineTools/SDKs
322 [deploy_target=`sw_vers -productVersion | sed 's/\([0-9][0-9]*\)\.\([0-9][0-9]*\)\.[0-9]*/\1.\2/'`]
330 # No. There's nothing to do.
336 if test ! -z "$deploy_target"
338 AC_MSG_CHECKING([whether we can build for OS X $deploy_target])
339 case $deploy_target in
343 # I'm not sure this would even work.
346 AC_ERROR([We don't support building for OS X $deploy_target])
351 # XXX - never tested.
354 SDKPATH="/Developer/SDKs/MacOSX10.3.9.sdk"
359 # XXX - for 10.4, do we need 10.4u? We're
360 # not currently doing fat builds (we'd need
361 # fat versions of the support libraries for
362 # that to be useful), but, if we do, we'd
365 for i in /Developer/SDKs \
366 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs \
367 /Library/Developer/CommandLineTools/SDKs
369 if test -d "$i"/"MacOSX$deploy_target.sdk"
371 SDKPATH="$i"/"MacOSX$deploy_target.sdk"
375 if test -z "$SDKPATH"
378 AC_MSG_ERROR([We couldn't find the SDK for OS X $deploy_target])
385 # Add a -mmacosx-version-min flag to force tests that
386 # use the compiler, as well as the build itself, not to,
387 # for example, use compiler or linker features not supported
388 # by the minimum targeted version of the OS.
390 # Add an -isysroot flag to use the SDK.
392 CFLAGS="-mmacosx-version-min=$deploy_target -isysroot $SDKPATH $CFLAGS"
393 CXXFLAGS="-mmacosx-version-min=$deploy_target -isysroot $SDKPATH $CXXFLAGS"
394 LDFLAGS="-mmacosx-version-min=$deploy_target -isysroot $SDKPATH $LDFLAGS"
397 # Add a -sdkroot flag to use with osx-app.sh.
399 OSX_APP_FLAGS="-sdkroot $SDKPATH"
402 # XXX - do we need this to build the Wireshark wrapper?
403 # XXX - is this still necessary with the -mmacosx-version-min
406 OSX_DEPLOY_TARGET="MACOSX_DEPLOYMENT_TARGET=$deploy_target"
409 # In the installer package XML file, give the deployment target
410 # as the minimum version.
412 OSX_MIN_VERSION="$deploy_target"
414 case $deploy_target in
418 # Only 32-bit builds are supported. 10.5
419 # (and 10.4?) had a bug that causes some BPF
420 # functions not to work with 64-bit userland
421 # code, so capturing won't work.
423 CFLAGS="-m32 $CFLAGS"
424 CXXFLAGS="-m32 $CXXFLAGS"
425 LDFLAGS="-m32 $LDFLAGS"
437 # In the installer package XML file, give the current OS
438 # version, minor version and all, as the minimum version.
439 # We can't guarantee that the resulting binary will work
440 # on older OS versions, not even older minor versions
441 # (original release or earlier software updates).
443 OSX_MIN_VERSION=`sw_vers -productVersion`
447 AC_SUBST(OSX_MIN_VERSION)
450 # Try to arrange for large file support.
455 # GUI toolkit options
458 AC_HELP_STRING( [--with-qt=@<:@yes/no@:>@],
459 [use Qt @<:@default=yes@:>@]),
460 with_qt="$withval", with_qt="unspecified")
463 AC_HELP_STRING( [--with-gtk2=@<:@yes/no@:>@],
464 [use GTK+ 2.0 @<:@default=no@:>@]),
465 with_gtk2="$withval", with_gtk2="unspecified")
468 AC_HELP_STRING( [--with-gtk3=@<:@yes/no@:>@],
469 [use GTK+ 3.0 instead of 2.0 @<:@default=yes@:>@]),
470 with_gtk3="$withval", with_gtk3="unspecified")
473 # Version 3.0 switched from LGPLv2.1+ to LGPLv3+, then switched back to
474 # LGPLv2.1+ in version 3.1.10.
475 # GnuTLS depends on GMP which switched from LGPLv2.1+ to LGPLv3+ in
476 # version 4.2.2, the switched to LGPLv3+ / GPLv2+ in version 6.0.0.
479 AC_ARG_WITH([gnutls],
480 AC_HELP_STRING( [--with-gnutls=@<:@yes/no@:>@],
481 [use GnuTLS library @<:@default=yes@:>@]),
482 with_gnutls="$withval", with_gnutls="yes")
483 if test "x$with_gnutls" = "xyes"; then
484 have_license_compatible_gnutls="no"
485 PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 3.1.10 ],
486 [ have_license_compatible_gnutls="yes" ], [ echo "GnuTLS >= 3.1.10 not found " ]
489 if test "x$have_license_compatible_gnutls" != "xyes"; then
490 PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 1.2.0 gnutls < 3],
491 [ have_license_compatible_gnutls="yes" ] , [ echo "GnuTLS >= 1.2.0, < 3.0 not found " ]
495 if test "x$have_license_compatible_gnutls" = "xyes"; then
496 echo "GnuTLS found, enabling SSL decryption"
497 AC_DEFINE(HAVE_LIBGNUTLS, 1, [Define to use GnuTLS library])
500 echo "GnuTLS with compatible license not found, disabling SSL decryption"
507 AC_ARG_WITH([gcrypt],
508 AC_HELP_STRING( [--with-gcrypt=@<:@yes/no@:>@],
509 [use gcrypt library @<:@default=yes@:>@]),
510 with_gcrypt="$withval", with_gcrypt="yes")
511 if test "x$with_gcrypt" = "xyes"; then
512 AM_PATH_LIBGCRYPT(1.1.92,
514 echo "libgcrypt found, enabling ipsec decryption"
515 AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define to use libgcrypt])
519 if test x$libgcrypt_config_prefix != x ; then
520 AC_MSG_ERROR([[libgcrypt not found; install libgcrypt-devel package for your system]])
522 echo "libgcrypt not found, disabling ipsec decryption"
530 AC_HELP_STRING([--with-libnl@<:@=VERSION@:>@],
531 [use libnl (force version VERSION, if supplied) @<:@default: yes, if available@:>@]),
533 if test "x$withval" = "xno"
536 elif test "x$withval" = "xyes"
540 elif test "x$withval" = "x1"
544 elif test "x$withval" = "x2"
548 elif test "x$withval" = "x3"
553 AC_MSG_ERROR(["$withval" is not a valid argument to --with-libnl])
557 # Use libnl if it's present, otherwise don't.
559 want_libnl=ifavailable
563 # Libnl is Linux-specific.
568 AC_MSG_CHECKING(whether to use libnl for various network interface purposes)
570 if test x$want_libnl = "xno"; then
575 # Test for specific libnl versions only if no version
576 # was specified by the user or if the version in question
577 # was requested by the user.
579 if test x$libnl_version = "xany" -o x$libnl_version = "x3"; then
580 PKG_CHECK_MODULES(LIBNL3, [libnl-route-3.0 >= 3.0 libnl-genl-3.0] >= 3.0, [have_libnl3=yes], [have_libnl3=no])
582 if test x$libnl_version = "xany" -o x$libnl_version = "x2"; then
583 PKG_CHECK_MODULES(LIBNL2, libnl-2.0 >= 2.0, [have_libnl2=yes], [have_libnl2=no])
585 if test x$libnl_version = "xany" -o x$libnl_version = "x1"; then
586 PKG_CHECK_MODULES(LIBNL1, libnl-1 >= 1.0, [have_libnl1=yes], [have_libnl1=no])
588 if (test "${have_libnl3}" = "yes"); then
589 CFLAGS="$CFLAGS $LIBNL3_CFLAGS"
590 LIBS="$LIBS $LIBNL3_LIBS"
591 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
592 AC_DEFINE(HAVE_LIBNL3, 1, [libnl version 3])
593 libnl_message="yes (v3)"
595 elif (test "${have_libnl2}" = "yes"); then
596 CFLAGS="$CFLAGS $LIBNL2_CFLAGS"
597 LIBS="$LIBS $LIBNL2_LIBS"
598 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
599 AC_DEFINE(HAVE_LIBNL2, 1, [libnl version 2])
600 libnl_message="yes (v2)"
602 elif (test "${have_libnl1}" = "yes"); then
603 CFLAGS="$CFLAGS $LIBNL1_CFLAGS"
604 LIBS="$LIBS $LIBNL1_LIBS"
605 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
606 AC_DEFINE(HAVE_LIBNL1, 1, [libnl version 1])
607 libnl_message="yes (v1)"
610 if test x$want_libnl = "xyes"; then
611 case "$libnl_version" in
614 AC_MSG_ERROR("I couldn't find libnl even though you manually enabled it.")
618 AC_MSG_ERROR("I couldn't find libnl version $libnl_version even though you manually enabled it.")
625 AC_MSG_CHECKING([if nl80211.h is new enough])
626 AC_TRY_COMPILE([#include <linux/nl80211.h>],
627 [int x = NL80211_FREQUENCY_ATTR_MAX_TX_POWER;
628 x = NL80211_ATTR_SUPPORTED_IFTYPES;
629 x = NL80211_ATTR_SUPPORTED_COMMANDS;
630 x = NL80211_ATTR_WIPHY_FREQ;
631 x = NL80211_CHAN_NO_HT;],
632 [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NL80211, 1, [nl80211.h is new enough])],
635 AC_MSG_CHECKING([for NL80211_SET_CHANNEL])
636 AC_TRY_COMPILE([#include <linux/nl80211.h>],
637 [enum nl80211_commands x = NL80211_CMD_SET_CHANNEL;],
638 [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NL80211_CMD_SET_CHANNEL, 1, [SET_CHANNEL is supported])],
643 if test x$want_libnl != "xno" -a x$want_libnl != "xifavailable"; then
644 AC_MSG_WARN([libnl is Linux-specific, ignoring --with-libnl])
649 # FIXME: currently the path argument to with-libsmi is being ignored
653 # Check for programs used when building DocBook documentation.
656 # Check for a2x (convert asciidoc to another format)
657 AC_PATH_PROG(A2X, a2x)
658 AC_CHECK_PROG(HAVE_A2X, a2x, "yes", "no")
659 AM_CONDITIONAL(HAVE_A2X, test x$HAVE_A2X = xyes)
661 # Want to control a tape drive? Use mt. Want to convert HTML to text?
662 # Uhhhhh... elinks? lynx? w3m? pandoc? html2text?
663 AC_PATH_PROG(ELINKS, elinks)
664 AC_CHECK_PROG(HAVE_ELINKS, elinks, "yes", "no")
665 AM_CONDITIONAL(HAVE_ELINKS, test x$HAVE_ELINKS = xyes)
667 # Check for fop (translate .fo to e.g. pdf)
668 AC_PATH_PROG(FOP, fop)
669 AC_CHECK_PROG(HAVE_FOP, fop, "yes", "no")
670 AM_CONDITIONAL(HAVE_FOP, test x$HAVE_FOP = xyes)
672 # Check for lynx (html -> text)
673 AC_PATH_PROG(LYNX, lynx)
674 AC_CHECK_PROG(HAVE_LYNX, lynx, "yes", "no")
675 AM_CONDITIONAL(HAVE_LYNX, test x$HAVE_LYNX = xyes)
677 # Check for w3m (html -> text)
678 AC_PATH_PROG(W3M, w3m)
679 AC_CHECK_PROG(HAVE_W3M, w3m, "yes", "no")
680 AM_CONDITIONAL(HAVE_W3M, test x$HAVE_W3M = xyes)
683 AC_PATH_PROG(XMLLINT, xmllint)
684 AC_CHECK_PROG(HAVE_XMLLINT, xmllint, "yes", "no")
685 AM_CONDITIONAL(HAVE_XMLLINT, test x$HAVE_XMLLINT = xyes)
688 AC_PATH_PROG(XSLTPROC, xsltproc)
689 AC_CHECK_PROG(HAVE_XSLTPROC, xsltproc, "yes", "no")
690 AM_CONDITIONAL(HAVE_XSLTPROC, test x$HAVE_XSLTPROC = xyes)
693 # Check for packaging utilities
694 # For now, we check to see if the various packaging utilites are in our
695 # path. I'm too lazy to write code to go hunt for them. - Gerald
699 # (Lets you install the desktop files.)
701 AC_PATH_PROG(DESKTOP_FILE_INSTALL, desktop-file-install)
704 AC_CHECK_PROG(HAVE_PKGPROTO, pkgproto, "yes", "no")
705 AC_CHECK_PROG(HAVE_PKGMK, pkgmk, "yes", "no")
706 AC_CHECK_PROG(HAVE_PKGTRANS, pkgtrans, "yes", "no")
708 if test x$HAVE_PKGPROTO = xyes -a x$HAVE_PKGMK = xyes \
709 -a x$HAVE_PKGTRANS = xyes ; then
710 HAVE_SVR4_PACKAGING=yes
712 HAVE_SVR4_PACKAGING=no
714 AC_SUBST(HAVE_SVR4_PACKAGING)
717 AC_WIRESHARK_RPM_CHECK
721 AC_CHECK_PROG(HAVE_DPKG_BUILDPACKAGE, dpkg-buildpackage, "yes", "no")
724 AC_CHECK_PROG(HAVE_XCODEBUILD, xcodebuild, "yes", "no")
725 AC_CHECK_PROG(HAVE_HDIUTIL, hdiutil, "yes", "no")
726 AC_CHECK_PROG(HAVE_BLESS, bless, "yes", "no")
728 if test x$HAVE_XCODEBUILD = xyes -a x$HAVE_HDIUTIL = xyes \
729 -a x$HAVE_BLESS = xyes ; then
730 HAVE_OSX_PACKAGING=yes
732 HAVE_OSX_PACKAGING=no
734 AC_SUBST(HAVE_OSX_PACKAGING)
737 # Some compilers have to be told to fail when passed an unknown -W flag;
738 # make sure we do that.
740 AC_WIRESHARK_CHECK_UNKNOWN_WARNING_OPTION_ERROR
743 # Some C++ compilers have to be told to fail when passed a -W flag that
744 # they don't think should apply to C++; make sure we do that.
746 AC_WIRESHARK_CHECK_NON_CXX_WARNING_OPTION_ERROR
749 # Try to add some additional checks to CFLAGS.
750 # These are not enabled by default, because the warnings they produce
751 # are very hard or impossible to eliminate.
753 AC_ARG_ENABLE(extra-compiler-warnings,
754 AC_HELP_STRING( [--enable-extra-compiler-warnings],
755 [do additional compiler warnings @<:@default=no@:>@]),
757 wireshark_extra_flags=$enableval
758 if test $enableval != no
760 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-pedantic)
762 # Various code blocks this one.
764 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Woverflow)
765 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fstrict-overflow -Wstrict-overflow=4)
767 # Due to various places where APIs we don't control
768 # require us to cast away constness, we can probably
769 # never enable these ones with -Werror.
771 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wcast-qual)
772 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wbad-function-cast, C)
774 # Some generated ASN.1 dissectors block this one;
775 # multiple function declarations for the same
776 # function are being generated.
778 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wredundant-decls)
780 # Some loops are safe, but it's hard to convince the
783 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wunsafe-loop-optimizations)
785 # All the registration functions block these for now.
787 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wmissing-prototypes)
788 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wmissing-declarations)
790 # A bunch of "that might not work on SPARC" code blocks
793 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wcast-align)
795 # Works only with Clang
797 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wunreachable-code)
799 # Works only with Clang but generates a lot of warnings
800 # (about glib library not using Doxygen)
802 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdocumentation)
806 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wall -W) # -W is now known as -Wextra
807 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wextra) # -W is now known as -Wextra
808 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdeclaration-after-statement, C)
809 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wendif-labels)
810 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wpointer-arith)
811 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-pointer-sign, C)
812 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Warray-bounds)
813 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wformat-security)
814 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fwrapv)
815 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fno-strict-overflow)
816 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fno-delete-null-pointer-checks)
817 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wold-style-definition, C)
818 # The Qt headers generate a ton of shortening errors on 64-bit systems
819 # so only enable this for C for now.
820 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wshorten-64-to-32, C)
821 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wstrict-prototypes, C)
822 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wjump-misses-init, C)
823 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wvla)
824 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Waddress)
825 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wattributes)
826 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdiv-by-zero)
827 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wignored-qualifiers)
828 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wpragmas)
829 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-overlength-strings)
830 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wwrite-strings)
831 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-long-long)
832 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wc++-compat, C)
833 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wheader-guard)
838 # Make sure -Wshadow doesn't complain about variables in function and
839 # function pointer declarations shadowing other variables; if not, don't
840 # turn it on, as some versions of GCC (including the one in at least
841 # some Xcode versions that came with Mac OS X 10.5) complain about
844 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wshadow, C,
846 extern int bar(int a);
852 int (*fptr)(int a) = bar;
857 [warns about variables in function declarations shadowing other variables])
859 # Unfortunately some versions of gcc generate logical-op warnings when strchr()
860 # is given a constant string.
861 # gcc versions 4.3.2 and 4.4.5 are known to have the problem.
862 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wlogical-op, C,
866 int foo(const char *, int);
870 foo(const char *sep, int c)
872 if (strchr (sep, c) != NULL)
881 return foo("<", 'a');
884 [generates warnings from strchr()])
888 # On OS X, suppress warnings about deprecated declarations, because
889 # they apparently think everything on OS X is Shiny Happy Apple-
890 # Framework-Based Apps and are deprecating some perfectly OK
891 # multi-platform open-source libraries that we use in our multi-platform
892 # open-source application in favor of various frameworks that are
897 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-deprecated-declarations)
902 # Use the faster pre gcc 4.5 floating point precision if available.
904 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fexcess-precision=fast)
906 CFLAGS_before_fvhidden="$CFLAGS"
907 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fvisibility=hidden)
908 if test "x$CFLAGS" = "x$CFLAGS_before_fvhidden"
910 # TODO add other ways of hiding symbols
911 AC_MSG_WARN(Compiler will export all symbols from shared libraries)
914 AC_WIRESHARK_LDFLAGS_CHECK([-Wl,--as-needed])
915 ###AC_WIRESHARK_LDFLAGS_CHECK([-Wl,-M])
916 ###AC_WIRESHARK_LDFLAGS_CHECK([-Wl,--cref])
917 # AC_WIRESHARK_LDFLAGS_CHECK([-flto])
918 # AC_WIRESHARK_LDFLAGS_CHECK([-fwhopr])
919 # AC_WIRESHARK_LDFLAGS_CHECK([-fwhole-program])
922 # Put -fPIE in PIE_CFLAGS and -pie in PIE_LDFLAGS if we can use them,
923 # so that we can build dumpcap PIE - it may run with elevated
924 # privileges, and using PIE means the OS can run it at random locations
925 # in the address space to make attacks more difficult.
927 CFLAGS_before_pie="$CFLAGS"
928 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fPIE)
929 if test "x$CFLAGS" != "x$CFLAGS_before_pie"
932 CFLAGS="$CFLAGS_before_pie"
934 LDFLAGS_before_pie="$LDFLAGS"
935 AC_WIRESHARK_LDFLAGS_CHECK([-fPIE -pie])
936 if test "x$LDFLAGS" != "x$LDFLAGS_before_pie"
943 LDFLAGS="$LDFLAGS_before_pie"
948 AC_SUBST(PIE_LDFLAGS)
950 CFLAGS_before_simd="$CFLAGS"
951 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-msse4.2, C)
952 if test "x$CFLAGS" != "x$CFLAGS_before_simd"
954 AC_MSG_CHECKING([whether there is nmmintrin.h header])
957 [#include <nmmintrin.h>],
961 AC_DEFINE(HAVE_SSE4_2, 1, [Support SSSE4.2 (Streaming SIMD Extensions 4.2) instructions])
962 CFLAGS_SSE42="-msse4.2"
972 CFLAGS="$CFLAGS_before_simd"
976 dnl build libwsutil_sse42 only if there is SSE4.2
977 AM_CONDITIONAL(SSE42_SUPPORTED, test "x$have_sse42" = "xyes")
978 AC_SUBST(CFLAGS_SSE42)
981 # If we're running GCC or clang define _U_ to be "__attribute__((unused))"
982 # so we can use _U_ to flag unused function parameters and not get warnings
983 # about them. Otherwise, define _U_ to be an empty string so that _U_ used
984 # to flag an unused function parameters will compile with other compilers.
986 # XXX - similar hints for other compilers?
988 if test "x$GCC" = "xyes" -o "x$CC" = "xclang" ; then
989 AC_DEFINE(_U_, __attribute__((unused)), [Hint to the compiler that a function parameters is not used])
991 AC_DEFINE(_U_, , [Hint to the compiler that a function parameters is not used])
994 # If we're running GCC or CLang, use FORTIFY_SOURCE=2
995 # (only if the GCC 'optimization level' > 0).
997 # See: http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html
998 # See: http://sourceware.org/bugzilla/show_bug.cgi?id=13979
1000 # Note: FORTIFY_SOURCE is only effective for gcc optimization level > 0 (-O1, etc)
1001 AC_WIRESHARK_GCC_FORTIFY_SOURCE_CHECK
1004 # If the compiler supports GCC-style flags, enable a barrier "stop on
1006 # This barrier is set for a very large part of the code. However, it is
1007 # typically not set for "generated" code (flex, ans2wrs, idl2wrs, ...)
1009 warnings_as_errors_default="yes"
1010 AC_MSG_CHECKING(whether we should treat compiler warnings as errors)
1011 AC_ARG_ENABLE(warnings-as-errors,
1012 AC_HELP_STRING( [--enable-warnings-as-errors],
1013 [treat warnings as errors (only for GCC or clang) @<:@default=yes, unless extra compiler warnings are enabled@:>@]),
1015 if test "x$ac_supports_gcc_flags" = "xyes" -a "x$enableval" = "xyes"; then
1016 with_warnings_as_errors="yes"
1019 with_warnings_as_errors="no"
1024 if test "x$ac_supports_gcc_flags" = "xyes" -a "x$wireshark_extra_flags" = "x" -a "x$warnings_as_errors_default" = "xyes"; then
1025 with_warnings_as_errors="yes"
1028 with_warnings_as_errors="no"
1033 AM_CONDITIONAL(HAVE_WARNINGS_AS_ERRORS, test "x$with_warnings_as_errors" = "xyes")
1036 # Add any platform-specific compiler flags needed.
1038 AC_MSG_CHECKING(for platform-specific compiler flags)
1039 if test "x$GCC" = "xyes" ; then
1041 # GCC - do any platform-specific tweaking necessary.
1045 # the X11 headers don't automatically include prototype info
1046 # and a lot don't include the return type
1047 CPPFLAGS="$CPPFLAGS -DFUNCPROTO=15"
1048 CFLAGS="$CFLAGS -Wno-return-type"
1049 CXXFLAGS="$CXXFLAGS -Wno-return-type"
1050 AC_MSG_RESULT(GCC on Solaris - added -Wno-return-type -DFUNCPROTO=15)
1053 AC_MSG_RESULT(none needed)
1058 # Not GCC - assume it's the vendor's compiler.
1063 # HP's ANSI C compiler; flags suggested by Jost Martin.
1064 # "-Ae" for ANSI C plus extensions such as "long long".
1065 # "+O2", for optimization. XXX - works with "-g"?
1067 # HP's ANSI C++ compiler doesn't support "-Ae", but
1068 # does support "+O2", at least according to the
1069 # documentation I can find online.
1071 CFLAGS="-Ae +O2 $CFLAGS"
1072 CFLAGS_FOR_BUILD="-Ae +O2 $CFLAGS"
1073 CXXFLAGS="+O2 $CFLAGS"
1074 AC_MSG_RESULT(HP ANSI C compiler - added -Ae +O2)
1077 AC_MSG_RESULT(none needed)
1083 # Add any platform-specific linker flags needed.
1085 AC_MSG_CHECKING(for platform-specific linker flags)
1089 # Add -Wl,-single_module to the LDFLAGS used with shared
1090 # libraries, to fix some error that show up in some cases;
1091 # some Apple documentation recommends it for most shared
1094 LDFLAGS_SHAREDLIB="-Wl,-single_module"
1096 # Add -Wl,-search_paths_first to make sure that if we search
1097 # directories A and B, in that order, for a given library, a
1098 # non-shared version in directory A, rather than a shared
1099 # version in directory B, is chosen (so we can use
1100 # --with-pcap=/usr/local to force all programs to be linked
1101 # with a static version installed in /usr/local/lib rather than
1102 # the system version in /usr/lib).
1104 # Also add -Wl,-rpath,@executable_path/../lib and
1105 # -Wl,-rpath,/usr/local/lib, so that, if we build an app
1106 # bundle, we can tweak all the executable images, shared
1107 # libraries, and plugins in the bundle to look for non-system
1108 # libraries in the rpath, rather than having a script tweak
1109 # DYLD_LIBRARY_PATH.
1111 LDFLAGS="-Wl,-search_paths_first -Wl,-rpath,@executable_path/../lib -Wl,-rpath,@executable_path/../Frameworks -Wl,-rpath,/usr/local/lib $LDFLAGS"
1112 AC_MSG_RESULT([Apple linker - added -Wl,-single_module and -Wl,-search_paths_first, and rpaths])
1116 # Shared libraries in cygwin/Win32 must never contain
1117 # undefined symbols.
1119 LDFLAGS="$LDFLAGS -no-undefined"
1120 AC_MSG_RESULT(CygWin GNU ld - added -no-undefined)
1123 AC_MSG_RESULT(none needed)
1126 AC_SUBST(LDFLAGS_SHAREDLIB)
1128 # Enable silent builds by default
1129 # Verbose builds can be enabled with "./configure
1130 # --enable-silent-rules ..." or "make V=1 ..."
1131 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
1132 [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
1135 # On "Darwin", which we assume to mean "OS X" rather than "iOS" or
1136 # "just Darwin" (as we don't currently support iOS, and as I don't
1137 # think you can build and run "just Darwin" as an OS for PCs), we
1138 # arrange to build some programs with Application Services so they
1139 # can launch Web browsers and Finder windows, arrange to build some
1140 # programs with System Configuration so they can get "friendly names"
1141 # and other information about interfaces, and build any programs that
1142 # use either of those frameworks or that report version information
1143 # with Core Foundation as the frameworks in question use it and as we
1144 # get version information from plists and thus need Core Foundation
1145 # to process those plists.
1150 AC_DEFINE(HAVE_OS_X_FRAMEWORKS, 1, [Define to 1 if you have OS X frameworks])
1151 APPLICATIONSERVICES_FRAMEWORKS="-framework ApplicationServices"
1152 SYSTEMCONFIGURATION_FRAMEWORKS="-framework SystemConfiguration"
1153 COREFOUNDATION_FRAMEWORKS="-framework CoreFoundation"
1156 # OK, so we have the OS X frameworks; do they include
1157 # CFPropertyListCreateWithStream, or do we have
1158 # to fall back on CFPropertyListCreateFromStream?
1159 # (They only differ in the error return, which we
1160 # don't care about. And, no, we shouldn't just
1161 # use CFPropertyListCreateFromStream, because it's
1162 # deprecated in newer releases.)
1164 ac_save_LIBS="$LIBS"
1165 LIBS="$LIBS $COREFOUNDATION_FRAMEWORKS"
1166 AC_CHECK_FUNCS(CFPropertyListCreateWithStream)
1167 LIBS="$ac_save_LIBS"
1170 AC_SUBST(APPLICATIONSERVICES_FRAMEWORKS)
1171 AC_SUBST(SYSTEMCONFIGURATION_FRAMEWORKS)
1172 AC_SUBST(COREFOUNDATION_FRAMEWORKS)
1175 # On Solaris, check whether we have getexecname().
1179 AC_CHECK_FUNC(getexecname)
1183 dnl Look in /usr/local for header files and libraries ?
1184 dnl XXX FIXME don't include /usr/local if it is already in the system
1185 dnl search path as this causes gcc 3.2 on Linux to complain about a change
1186 dnl of the system search order for includes
1187 AC_ARG_ENABLE(usr-local,
1188 AC_HELP_STRING( [--enable-usr-local],
1189 [look for headers and libs in /usr/local tree @<:@default=yes@:>@]),
1190 ac_cv_enable_usr_local=$enableval,ac_cv_enable_usr_local=yes)
1192 AC_MSG_CHECKING(whether to use /usr/local for headers and libraries)
1193 if test "x$ac_cv_enable_usr_local" = "xyes" ; then
1194 if test -d "/usr/local"; then
1197 # Arrange that we search for header files in the source directory
1198 # and in its "wiretap" subdirectory, as well as in "/usr/local/include",
1199 # as various packages we use ("libpcap", "zlib", "adns")
1200 # may have been installed under "/usr/local/include".
1202 CPPFLAGS="$CPPFLAGS -I/usr/local/include"
1205 # Arrange that we search for libraries in "/usr/local/lib".
1207 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, /usr/local/lib)
1216 # If we're running Solaris, and LD_LIBRARY_PATH is defined, add it as a
1221 AC_MSG_CHECKING(for LD_LIBRARY_PATH, since you appear to be running Solaris)
1222 if test x$LD_LIBRARY_PATH != x ; then
1223 LIBS="$LIBS -R$LD_LIBRARY_PATH"
1224 AC_MSG_RESULT(yes -- added LD_LIBRARY_PATH to run-time linker path)
1226 AC_MSG_RESULT(no -- this may be a problem in a few seconds)
1232 # Check for versions of "sed" inadequate to handle, in libtool, a list
1233 # of object files as large as the list in Wireshark.
1235 # On Solaris, we check for "/bin/sed", "/usr/bin/sed", and "/usr/ucb/sed",
1236 # as both "/usr/bin/sed" (which is also "/bin/sed", as "/bin" is just a
1237 # symlink to "/usr/bin", but people may have "/bin" before "/usr/bin" in
1238 # their search path) and "/usr/ucb/sed" are inadequate; "/usr/xpg4/bin/sed"
1239 # is the only "sed" that comes with Solaris that can handle Wireshark.
1241 # Add any checks here that are necessary for other OSes.
1243 AC_PATH_PROG(SED, sed)
1246 AC_MSG_ERROR(I couldn't find sed; make sure it's installed and in your path)
1248 AC_WIRESHARK_GNU_SED_CHECK
1249 if test "$HAVE_GNU_SED" = no ; then
1252 AC_MSG_CHECKING(whether one of /usr/bin/sed or /bin/sed or /usr/ucb/sed will be used)
1254 /bin/sed|/usr/bin/sed|/usr/ucb/sed)
1256 AC_MSG_ERROR([change your path to search /usr/xpg4/bin or directory containing GNU sed before /usr/bin (and /bin and /usr/ucb)])
1271 # Enable/disable wireshark
1272 AC_ARG_ENABLE(wireshark,
1273 AC_HELP_STRING( [--enable-wireshark],
1274 [build the Wireshark GUI (with Gtk+, Qt, or both) @<:@default=yes@:>@]),
1275 enable_wireshark=$enableval,enable_wireshark=yes)
1277 AC_ARG_ENABLE(packet-editor,
1278 AC_HELP_STRING( [--enable-packet-editor],
1279 [add support for packet editor in Wireshark @<:@default=yes@:>@]),
1280 enable_packet_editor=$enableval,enable_packet_editor=yes)
1281 if test x$enable_packet_editor = xyes; then
1282 AC_DEFINE(WANT_PACKET_EDITOR, 1, [Support for packet editor])
1285 AC_ARG_ENABLE(profile-build,
1286 AC_HELP_STRING( [--enable-profile-build],
1287 [build profile-ready binaries @<:@default=no@:>@]),
1288 enable_profile_build=$enableval,enable_profile_build=no)
1289 AM_CONDITIONAL(USE_PROFILE_BUILD, test x$enable_profile_build = xyes)
1290 AC_MSG_CHECKING(if profile builds must be generated)
1291 if test "x$enable_profile_build" = "xyes" ; then
1292 if test "x$GCC" = "xyes" -o "x$CLANG" = "xyes" ; then
1294 CFLAGS=" -pg $CFLAGS"
1295 CXXFLAGS=" -pg $CXXFLAGS"
1298 echo "Building profile binaries currently only supported for GCC and clang."
1304 # Create DATAFILE_DIR #define for config.h
1305 datafiledir=$datadir/wireshark
1307 test "x$prefix" = xNONE && prefix=$ac_default_prefix
1308 test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
1309 # Ugly hack, but I don't see how this problem can be solved
1310 # properly that DATAFILE_DIR had a value starting with
1311 # "${prefix}/" instead of e.g. "/usr/local/"
1312 eval eval echo "$datafiledir"
1314 AC_DEFINE_UNQUOTED(DATAFILE_DIR,"$datafiledir", [Directory for data])
1316 # Create DOC_DIR #define for config.h
1318 test "x$prefix" = xNONE && prefix=$ac_default_prefix
1319 test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
1320 # Ugly hack, but I don't see how this problem can be solved
1321 # properly that DOC_DIR had a value starting with
1322 # "${prefix}/" instead of e.g. "/usr/local/"
1323 eval eval echo "$docdir"
1325 AC_DEFINE_UNQUOTED(DOC_DIR, "$docdir", [Directory for docs])
1327 GTK2_MIN_VERSION=2.12.0
1328 AC_SUBST(GTK2_MIN_VERSION)
1329 GTK3_MIN_VERSION=3.0.0
1330 AC_SUBST(GTK3_MIN_VERSION)
1331 QT_MIN_VERSION=4.6.0
1332 AC_SUBST(QT_MIN_VERSION)
1333 # GTK+ and Qt checks; we require GTK+ $GTK2_MIN_VERSION or later or
1334 # GTK3_MIN_VERSION or later or Qt $QT_MIN_VERSION or later.
1336 # We only do those if we're going to be building Wireshark;
1337 # otherwise, we don't have any GUI to build, so we don't use
1340 # We don't add $GTK_LIBS or $Qt_LIBS to LIBS, because we don't want to
1341 # force all programs to be built with GTK+ or Qt.
1343 # Release dates for GTK+ versions:
1344 # http://en.wikipedia.org/wiki/GTK+#Releases
1345 # 2.12.0: 14 Sep 2007
1346 # 2.14.0: 04 Sep 2008
1347 # 2.16.0: 13 Mar 2009
1348 # 2.18.0: 23 Sep 2009
1349 # 2.20.0: 23 Mar 2010
1350 # 2.22.0: 23 Sep 2010
1351 # 2.24.0: 30 Jan 2011
1352 # 3.0.0: 10 Feb 2011
1353 # 3.2.0: 25 Sep 2011
1354 # 3.4.0: 26 Mar 2012
1355 # 3.6.0: 24 Sep 2012
1356 # 3.8.0: 25 Mar 2013
1357 # 3.10.0: 23 Sep 2013
1358 # 3.12.0: 25 Mar 2014
1360 # Release dates for Qt versions:
1361 # http://en.wikipedia.org/wiki/List_of_Qt_releases
1362 # 4.6.0: 01 Dec 2009
1363 # 4.7.0: 21 Sep 2010
1364 # 4.8.0: 15 Dec 2011
1365 # 5.0.0: 19 Dec 2012
1366 # 5.1.0: 03 Jul 2013
1367 # 5.2.0: 12 Dec 2013
1371 if test "x$enable_wireshark" = "xyes"; then
1372 if test "x$with_gtk2" = "xunspecified" -a \
1373 "x$with_gtk3" = "xunspecified" -a \
1374 "x$with_qt" = "xunspecified"; then
1376 # No GUI toolkit was explicitly specified; pick Qt and GTK+ 3.
1381 if test "x$with_qt" = "xyes"; then
1383 # Qt was specified; Make sure we have a C++ compiler.
1385 if test -z "$CXX"; then
1386 AC_MSG_ERROR(Need a working C++ compiler to build Wireshark with Qt)
1390 # Now make sure we have Qt and, if so, add the flags
1391 # for it to CFLAGS and CXXFLAGS.
1393 AC_WIRESHARK_QT_CHECK($QT_MIN_VERSION,
1395 CFLAGS="$CFLAGS $Qt_CFLAGS"
1396 CXXFLAGS="$CXXFLAGS $Qt_CFLAGS"
1398 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-qt"
1399 OSX_APP_FLAGS="$OSX_APP_FLAGS -qt"
1402 [AC_MSG_ERROR([Qt is not available])])
1405 # XXX - greasy hack to make ui/gtk/recent.c
1408 CPPFLAGS="-DQT_GUI_LIB"
1411 if test "x$with_gtk3" = "xyes"; then
1413 # GTK+ 3 was specified; make sure they didn't also
1414 # specify GTK+ 2, as we don't support building both
1415 # GTK+ 2 and GTK+ 3 versions at the same time.
1417 if test "x$with_gtk2" = "xyes"; then
1418 AC_MSG_ERROR([Both GTK+ 2 and GTK+ 3 were specified; choose one but not both])
1422 # Make sure we have GTK+ 3.
1424 AM_PATH_GTK_3_0(3.0.0,
1426 CFLAGS="$CFLAGS $GTK_CFLAGS"
1427 CXXFLAGS="$CXXFLAGS $GTK_CFLAGS"
1429 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-gtk3"
1431 [AC_MSG_ERROR([GTK+ 3 is not available])])
1432 elif test "x$with_gtk2" = "xyes"; then
1434 # GTK+ 3 wasn't specified, and GTK+ 2 was specified;
1435 # make sure we have GTK+ 2.
1437 AM_PATH_GTK_2_0($GTK2_MIN_VERSION,
1439 CFLAGS="$CFLAGS $GTK_CFLAGS"
1440 CXXFLAGS="$CXXFLAGS $GTK_CFLAGS"
1442 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-gtk2"
1444 [AC_MSG_ERROR([GTK+ 2 is not available])])
1447 AC_SUBST(GUI_CONFIGURE_FLAGS)
1449 GLIB_MIN_VERSION=2.16.0
1450 AC_SUBST(GLIB_MIN_VERSION)
1451 # GLib checks; we require GLib $GLIB_MIN_VERSION or later, and require gmodule
1452 # support, as we need that for dynamically loading plugins.
1453 # If we found GTK+, this doesn't add GLIB_CFLAGS to CFLAGS, because
1454 # AM_PATH_GTK will add GTK_CFLAGS to CFLAGS, and GTK_CFLAGS is a
1455 # superset of GLIB_CFLAGS. If we didn't find GTK+, it does add
1456 # GLIB_CFLAGS to CFLAGS.
1457 # However, this means that both @GLIB_LIBS@ and @GTK_LIBS@ will be
1458 # set when generating the Makefile, so we can make programs that require
1459 # only GLib link with @GLIB_LIBS@ and make programs that require GTK+
1460 # link with @GTK_LIBS@ (which includes @GLIB_LIBS@).
1461 # We don't add $GLIB_LIBS to LIBS, because we don't want to force all
1462 # programs to be built with GLib.
1464 # Release dates for GLib versions:
1465 # 2.14.0: 03 Aug 2007
1466 # 2.16.0: 10 Mar 2008
1467 # 2.18.0: 02 Sep 2008
1468 # 2.20.0: 13 Mar 2009
1469 # 2.22.0: 22 Sep 2009
1470 # 2.24.0: 28 Mar 2010
1471 # 2.26.0: 27 Sep 2010
1472 # 2.28.0: 08 Feb 2011
1473 # 2.30.0: 27 Sep 2011
1474 # 2.32.0: 24 Mar 2012
1475 # 2.34.0: 24 Sep 2012
1476 # 2.36.0: 25 Mar 2013
1477 # 2.38.0: 23 Sep 2013
1478 # 2.40.0: 24 Mar 2014
1480 use_glib_cflags="true"
1481 if test "$have_gtk" = "yes" -a "$have_qt" = "yes" ; then
1482 # We have both GTK and Qt and thus will be building both wireshark
1485 wireshark_bin="wireshark\$(EXEEXT) wireshark-qt\$(EXEEXT)"
1486 wireshark_man="wireshark.1"
1487 wireshark_SUBDIRS="codecs ui/qt ui/gtk"
1489 if test "$have_gtk" = "no" -a "$have_qt" = "yes" ; then
1490 # We don't have GTK+ but we have Qt.
1492 wireshark_bin="wireshark-qt\$(EXEEXT)"
1493 wireshark_man="wireshark.1"
1494 wireshark_SUBDIRS="codecs ui/qt"
1496 if test "$have_gtk" = "yes" -a "$have_qt" = "no" ; then
1497 # We have GTK+ but not Qt.
1499 wireshark_bin="wireshark\$(EXEEXT)"
1500 wireshark_man="wireshark.1"
1501 wireshark_SUBDIRS="codecs ui/gtk"
1502 use_glib_cflags="false"
1504 if test "$have_gtk" = "no" -a "$have_qt" = "no" ; then
1505 # We have neither GTK+ nor Qt.
1507 # If they didn't explicitly say "--disable-wireshark",
1508 # fail (so that, unless they explicitly indicated that
1509 # they don't want Wireshark, we stop so they know they
1510 # won't be getting Wireshark unless they fix the GTK+/Qt
1513 if test "x$enable_wireshark" = "xyes"; then
1514 if test "x$with_gtk3" = "xyes"; then
1515 AC_MSG_ERROR([Neither Qt nor GTK+ $GTK3_MIN_VERSION or later are available, so Wireshark can't be compiled])
1517 AC_MSG_ERROR([Neither Qt nor GTK+ $GTK2_MIN_VERSION or later are available, so Wireshark can't be compiled])
1524 if test "$have_gtk" = "yes" ; then
1525 # If we have GTK then add flags for it.
1527 CPPFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CPPFLAGS"
1528 CPPFLAGS="-DGDK_DISABLE_DEPRECATED $CPPFLAGS"
1529 if test \( $gtk_config_major_version -eq 3 -a $gtk_config_minor_version -ge 10 \) ; then
1530 ## Allow use of deprecated & disable deprecated warnings if Gtk >= 3.10;
1531 ## The deprecations in Gtk 3.10 will not be fixed ...
1532 CPPFLAGS="-DGDK_DISABLE_DEPRECATION_WARNINGS $CPPFLAGS"
1534 CPPFLAGS="-DGTK_DISABLE_DEPRECATED $CPPFLAGS"
1536 CPPFLAGS="-DGTK_DISABLE_SINGLE_INCLUDES $CPPFLAGS"
1537 if test ! \( $gtk_config_major_version -eq 2 -a $gtk_config_minor_version -lt 20 \) ; then
1538 # Enable GSEAL when building with GTK > 2.20
1539 # (Versions prior to 2.22 lacked some necessary accessors.)
1540 CPPFLAGS="-DGSEAL_ENABLE $CPPFLAGS"
1544 # XXX - Is this really necessary? When we build with both Gtk+ and Qt it works...
1545 if test "$use_glib_cflags" = "true"; then
1547 AM_PATH_GLIB_2_0($GLIB_MIN_VERSION,
1549 CFLAGS="$CFLAGS $GLIB_CFLAGS"
1550 CXXFLAGS="$CXXFLAGS $GLIB_CFLAGS"
1551 ], AC_MSG_ERROR(GLib $GLIB_MIN_VERSION or later distribution not found.), gthread gmodule)
1553 # Don't use GLIB_CFLAGS
1554 AM_PATH_GLIB_2_0($GLIB_MIN_VERSION, , AC_MSG_ERROR(GLib $GLIB_MIN_VERSION or later distribution not found.), gthread gmodule)
1558 # "make dist" requires that we have the Qt build tools.
1560 # Annoyingly, at least on Fedora 16, uic and moc are named XXX-qt4
1561 # rather than just XXX, perhaps to allow Qt 3 and Qt 4 tools to be
1562 # installed; if they're still doing that in current Fedora releases,
1563 # perhaps there will also be XXX-qt5 when they pick up Qt 5.
1565 AC_PATH_PROG(UIC, uic)
1568 AC_PATH_PROG(UIC, uic-qt4)
1571 if test "x$with_qt" = "xyes"; then
1573 # If you want to build with Qt, you'd better
1576 AC_MSG_ERROR(I couldn't find uic or uic-qt4; make sure it's installed and in your path)
1579 # We shouldn't fail here, as the user's not
1580 # building with Qt, and we shouldn't force them
1581 # to have Qt installed if they're not doing so.
1582 # "make dist" will fail if they do that, but
1583 # we don't know whether they'll be doing that,
1584 # so this is the best we can do.
1591 AC_PATH_PROG(MOC, moc)
1594 AC_PATH_PROG(MOC, moc-qt4)
1597 if test "x$with_qt" = "xyes"; then
1599 # If you want to build with Qt, you'd better
1602 AC_MSG_ERROR(I couldn't find moc or moc-qt4; make sure it's installed and in your path)
1605 # We shouldn't fail here, as the user's not
1606 # building with Qt, and we shouldn't force them
1607 # to have Qt installed if they're not doing so.
1608 # "make dist" will fail if they do that, but
1609 # we don't know whether they'll be doing that,
1610 # so this is the best we can do.
1618 # Error out if a glib header other than a "top level" header
1619 # (glib.h, glib-object.h, gio.h) or certain other headers( e.g.,gmodule.h)
1621 CPPFLAGS="-DG_DISABLE_SINGLE_INCLUDES $CPPFLAGS"
1623 # Error out on the usage of deprecated glib functions
1624 CPPFLAGS="-DG_DISABLE_DEPRECATED $CPPFLAGS"
1627 # Check whether GLib modules are supported, to determine whether we
1628 # can support plugins.
1630 AC_MSG_CHECKING(whether GLib supports loadable modules)
1631 ac_save_CFLAGS="$CFLAGS"
1632 ac_save_LIBS="$LIBS"
1633 CFLAGS="$CFLAGS $GLIB_CFLAGS"
1634 LIBS="$GLIB_LIBS $LIBS"
1637 #include <gmodule.h>
1644 if (g_module_supported())
1645 return 0; /* success */
1647 return 1; /* failure */
1649 ], ac_cv_glib_supports_modules=yes, ac_cv_glib_supports_modules=no,
1650 [echo $ac_n "cross compiling; assumed OK... $ac_c"
1651 ac_cv_glib_supports_modules=yes])
1652 CFLAGS="$ac_save_CFLAGS"
1653 LIBS="$ac_save_LIBS"
1654 if test "$ac_cv_glib_supports_modules" = yes ; then
1657 plugins_dir="plugins"
1663 AC_SUBST(plugins_dir)
1666 # If we have <dlfcn.h>, check whether we have dladdr.
1668 if test "$ac_cv_header_dlfcn_h" = "yes"
1671 # Use GLib compiler flags and linker flags; GLib's gmodule
1672 # stuff uses the dl APIs if available, so it might know
1673 # what flags are needed.
1675 ac_save_CFLAGS="$CFLAGS"
1676 ac_save_LIBS="$LIBS"
1677 CFLAGS="$CFLAGS $GLIB_CFLAGS"
1678 LIBS="$GLIB_LIBS $LIBS"
1679 AC_CHECK_FUNCS(dladdr)
1680 if test x$ac_cv_func_dladdr = xno
1683 # OK, try it with -ldl, in case you need that to get
1684 # dladdr(). For some reason, on Linux, that's not
1685 # part of the GLib flags; perhaps GLib itself is
1686 # linked with libdl, so that you can link with
1687 # Glib and it'll pull libdl in itself.
1690 AC_CHECK_FUNCS(dladdr)
1692 CFLAGS="$ac_save_CFLAGS"
1693 LIBS="$ac_save_LIBS"
1697 # Check whether GLib's printf supports thousands grouping. (This might
1698 # be different from the system's printf since GLib can optionally use
1699 # its own printf implementation.)
1701 AC_MSG_CHECKING(whether GLib supports POSIX/XSI thousands grouping)
1702 ac_save_CFLAGS="$CFLAGS"
1703 ac_save_LIBS="$LIBS"
1704 CFLAGS="$CFLAGS $GLIB_CFLAGS"
1705 LIBS="$GLIB_LIBS $LIBS"
1716 setlocale(LC_ALL, "en_US.UTF-8");
1717 str = g_strdup_printf("%'u", 123456);
1718 return (strcmp (str, "123,456") != 0);
1720 ], ac_cv_glib_supports_printf_grouping=yes, ac_cv_glib_supports_printf_grouping=no,
1721 [echo $ac_n "cross compiling; playing it safe... $ac_c"
1722 ac_cv_glib_supports_printf_grouping=no])
1723 CFLAGS="$ac_save_CFLAGS"
1724 LIBS="$ac_save_LIBS"
1725 if test "$ac_cv_glib_supports_printf_grouping" = yes ; then
1727 AC_DEFINE(HAVE_GLIB_PRINTF_GROUPING, 1, [Define if your printf() function supports thousands grouping.])
1732 if test "x$have_gtk" = "xyes"
1735 # We have GTK+; do we want the OS X integration functions and,
1736 # if so, do we have them and, if so, which versions do we have,
1737 # the old Carbon-based ones or the new Cocoa-based ones?
1739 AC_MSG_CHECKING(whether to use OS X integration functions)
1741 AC_ARG_WITH(osx-integration,
1742 AC_HELP_STRING( [--with-osx-integration],
1743 [use OS X integration functions @<:@default=yes, if available@:>@]),
1745 if test $withval = no
1747 want_osx_integration=no
1749 want_osx_integration=yes
1752 want_osx_integration=yes
1754 if test "x$want_osx_integration" = "xno"; then
1758 AC_WIRESHARK_OSX_INTEGRATION_CHECK
1762 AC_SUBST(wireshark_bin)
1763 AC_SUBST(wireshark_man)
1764 AM_CONDITIONAL(HAVE_Qt, test "$have_qt" = "yes")
1765 AM_CONDITIONAL(HAVE_GTK, test "$have_gtk" = "yes")
1766 AC_SUBST(OSX_APP_FLAGS)
1767 AC_SUBST(OSX_DMG_FLAGS)
1769 # Enable/disable tshark
1770 AC_ARG_ENABLE(tshark,
1771 AC_HELP_STRING( [--enable-tshark],
1772 [build TShark @<:@default=yes@:>@]),
1773 tshark=$enableval,enable_tshark=yes)
1775 if test "x$enable_tshark" = "xyes" ; then
1776 tshark_bin="tshark\$(EXEEXT)"
1777 tshark_man="tshark.1"
1778 wiresharkfilter_man="wireshark-filter.4"
1783 AC_SUBST(tshark_bin)
1784 AC_SUBST(tshark_man)
1786 # Enable/disable tfshark
1787 AC_ARG_ENABLE(tfshark,
1788 AC_HELP_STRING( [--enable-tfshark],
1789 [build TFShark @<:@default=no@:>@]),
1790 tfshark=$enableval,enable_tfshark=no)
1792 if test "x$enable_tfshark" = "xyes" ; then
1793 tfshark_bin="tfshark\$(EXEEXT)"
1794 tfshark_man="tfshark.1"
1795 wiresharkfilter_man="wireshark-filter.4"
1800 AC_SUBST(tfshark_bin)
1801 AC_SUBST(tfshark_man)
1803 # Enable/disable editcap
1805 AC_ARG_ENABLE(editcap,
1806 AC_HELP_STRING( [--enable-editcap],
1807 [build editcap @<:@default=yes@:>@]),
1808 enable_editcap=$enableval,enable_editcap=yes)
1810 if test "x$enable_editcap" = "xyes" ; then
1811 editcap_bin="editcap\$(EXEEXT)"
1812 editcap_man="editcap.1"
1817 AC_SUBST(editcap_bin)
1818 AC_SUBST(editcap_man)
1820 # Enable/disable echld
1822 AC_ARG_ENABLE(echld,
1823 AC_HELP_STRING( [--enable-echld],
1825 have_echld=$enableval,have_echld=no)
1827 AM_CONDITIONAL(HAVE_ECHLD, test "x$have_echld" = "xyes")
1828 if test "x$have_echld" = "xyes"
1830 AC_DEFINE(HAVE_ECHLD, 1, [Define if echld is enabled])
1831 echld_test_bin="echld_test\$(EXEEXT)"
1838 AC_SUBST(echld_test_bin)
1841 # Enabling/disabling of dumpcap is done later (after we know if we have PCAP
1844 # Enable/disable capinfos
1846 AC_ARG_ENABLE(capinfos,
1847 AC_HELP_STRING( [--enable-capinfos],
1848 [build capinfos @<:@default=yes@:>@]),
1849 enable_capinfos=$enableval,enable_capinfos=yes)
1851 if test "x$enable_capinfos" = "xyes" ; then
1852 capinfos_bin="capinfos\$(EXEEXT)"
1853 capinfos_man="capinfos.1"
1858 AC_SUBST(capinfos_bin)
1859 AC_SUBST(capinfos_man)
1861 # Enable/disable captype
1863 AC_ARG_ENABLE(captype,
1864 AC_HELP_STRING( [--enable-captype],
1865 [build captype @<:@default=yes@:>@]),
1866 enable_captype=$enableval,enable_captype=yes)
1868 if test "x$enable_captype" = "xyes" ; then
1869 captype_bin="captype\$(EXEEXT)"
1870 captype_man="captype.1"
1875 AC_SUBST(captype_bin)
1876 AC_SUBST(captype_man)
1878 # Enable/disable mergecap
1880 AC_ARG_ENABLE(mergecap,
1881 AC_HELP_STRING( [--enable-mergecap],
1882 [build mergecap @<:@default=yes@:>@]),
1883 enable_mergecap=$enableval,enable_mergecap=yes)
1885 if test "x$enable_mergecap" = "xyes" ; then
1886 mergecap_bin="mergecap\$(EXEEXT)"
1887 mergecap_man="mergecap.1"
1892 AC_SUBST(mergecap_bin)
1893 AC_SUBST(mergecap_man)
1895 # Enable/disable reordercap
1897 AC_ARG_ENABLE(reordercap,
1898 AC_HELP_STRING( [--enable-reordercap],
1899 [build reordercap @<:@default=yes@:>@]),
1900 enable_reordercap=$enableval,enable_reordercap=yes)
1902 if test "x$enable_reordercap" = "xyes" ; then
1903 reordercap_bin="reordercap\$(EXEEXT)"
1904 reordercap_man="reordercap.1"
1909 AC_SUBST(reordercap_bin)
1910 AC_SUBST(reordercap_man)
1912 # Enable/disable text2pcap
1914 AC_ARG_ENABLE(text2pcap,
1915 AC_HELP_STRING( [--enable-text2pcap],
1916 [build text2pcap @<:@default=yes@:>@]),
1917 text2pcap=$enableval,enable_text2pcap=yes)
1919 if test "x$enable_text2pcap" = "xyes" ; then
1920 text2pcap_bin="text2pcap\$(EXEEXT)"
1921 text2pcap_man="text2pcap.1"
1926 AC_SUBST(text2pcap_bin)
1927 AC_SUBST(text2pcap_man)
1929 # Enable/disable dftest
1931 AC_ARG_ENABLE(dftest,
1932 AC_HELP_STRING( [--enable-dftest],
1933 [build dftest @<:@default=yes@:>@]),
1934 enable_dftest=$enableval,enable_dftest=yes)
1936 if test "x$enable_dftest" = "xyes" ; then
1937 dftest_bin="dftest\$(EXEEXT)"
1938 dftest_man="dftest.1"
1943 AC_SUBST(dftest_bin)
1944 AC_SUBST(dftest_man)
1946 # Enable/disable randpkt
1948 AC_ARG_ENABLE(randpkt,
1949 AC_HELP_STRING( [--enable-randpkt],
1950 [build randpkt @<:@default=yes@:>@]),
1951 enable_randpkt=$enableval,enable_randpkt=yes)
1953 if test "x$enable_randpkt" = "xyes" ; then
1954 randpkt_bin="randpkt\$(EXEEXT)"
1955 randpkt_man="randpkt.1"
1960 AC_SUBST(randpkt_bin)
1961 AC_SUBST(randpkt_man)
1963 AC_SUBST(wiresharkfilter_man)
1965 dnl Checks for "gethostbyname()" - and "-lnsl", if we need it to get
1966 dnl "gethostbyname()".
1967 AC_WIRESHARK_GETHOSTBY_LIB_CHECK
1969 dnl Checks for "connect()", used as a proxy for "socket()" - and
1970 dnl "-lsocket", if we need it to get "connect()".
1971 AC_WIRESHARK_SOCKET_LIB_CHECK
1974 AC_MSG_CHECKING(whether to use libpcap for packet capture)
1977 AC_HELP_STRING( [--with-pcap@<:@=DIR@:>@],
1978 [use libpcap for packet capturing @<:@default=yes@:>@]),
1980 if test $withval = no
1983 elif test $withval = yes
1994 if test "x$want_pcap" = "xno" ; then
1998 AC_WIRESHARK_PCAP_CHECK
2002 dnl Check for airpcap
2003 AC_MSG_CHECKING(whether to include airpcap support)
2004 AC_ARG_ENABLE(airpcap,
2005 AC_HELP_STRING( [--enable-airpcap],
2006 [use AirPcap in Wireshark @<:@default=yes@:>@]),
2007 enable_airpcap=$enableval, enable_airpcap=yes)
2009 if test x$enable_airpcap = xyes; then
2010 if test "x$want_pcap" = "xno" ; then
2012 AC_MSG_RESULT(pcap not available - disabling airpcap)
2015 AC_DEFINE(HAVE_AIRPCAP, 1, [Enable AirPcap])
2023 AC_MSG_CHECKING(whether to build dumpcap)
2025 AC_ARG_ENABLE(dumpcap,
2026 AC_HELP_STRING( [--enable-dumpcap],
2027 [build dumpcap @<:@default=yes@:>@]),
2028 enable_dumpcap=$enableval,enable_dumpcap=yes)
2030 if test "x$enable_dumpcap" = "xyes" ; then
2031 if test "x$want_pcap" = "xno" ; then
2033 AC_MSG_RESULT(pcap not available - disabling dumpcap)
2041 if test "x$enable_dumpcap" = "xyes" ; then
2042 dumpcap_bin="dumpcap\$(EXEEXT)"
2043 dumpcap_man="dumpcap.1"
2048 AC_SUBST(dumpcap_bin)
2049 AC_SUBST(dumpcap_man)
2051 # Enable/disable rawshark
2054 AC_MSG_CHECKING(whether to build rawshark)
2056 AC_ARG_ENABLE(rawshark,
2057 AC_HELP_STRING( [--enable-rawshark],
2058 [build rawshark @<:@default=yes@:>@]),
2059 rawshark=$enableval,enable_rawshark=yes)
2061 if test "x$enable_rawshark" = "xyes" ; then
2062 if test "x$want_pcap" = "xno" ; then
2064 AC_MSG_RESULT(pcap not available - disabling rawshark)
2072 if test "x$enable_rawshark" = "xyes" ; then
2073 rawshark_bin="rawshark\$(EXEEXT)"
2074 rawshark_man="rawshark.1"
2079 AC_SUBST(rawshark_bin)
2080 AC_SUBST(rawshark_man)
2082 dnl Use pcap-ng by default
2083 AC_ARG_ENABLE(pcap-ng-default,
2084 AC_HELP_STRING( [--enable-pcap-ng-default],
2085 [use the pcap-ng file format by default instead of pcap @<:@default=yes@:>@]),
2086 enable_pcap_ng_default=$enableval,enable_pcap_ng_default=yes)
2087 if test x$enable_pcap_ng_default = xyes; then
2088 AC_DEFINE(PCAP_NG_DEFAULT, 1, [Support for pcap-ng])
2091 dnl pcap remote check
2092 AC_MSG_CHECKING(whether to use libpcap remote capturing feature)
2094 AC_ARG_WITH(pcap-remote,
2095 AC_HELP_STRING([--with-pcap-remote],
2096 [use libpcap remote capturing (requires libpcap)]),
2098 if test $withval = no
2102 want_pcap_remote=yes
2107 if test "x$want_pcap_remote" = "xno" -o "x$want_pcap" = "xno" ; then
2111 AC_WIRESHARK_PCAP_REMOTE_CHECK
2115 AC_MSG_CHECKING(whether to use zlib for gzip compression and decompression)
2118 AC_HELP_STRING([--with-zlib@<:@=DIR@:>@],
2119 [use zlib (located in directory DIR, if supplied) for gzip compression and decompression @<:@default=yes, if available@:>@]),
2121 if test "x$withval" = "xno"
2124 elif test "x$withval" = "xyes"
2133 # Use zlib if it's present, otherwise don't.
2135 want_zlib=ifavailable
2138 if test "x$want_zlib" = "xno" ; then
2142 AC_WIRESHARK_ZLIB_CHECK
2143 if test "x$want_zlib" = "xno" ; then
2144 AC_MSG_RESULT(zlib not found - disabling gzip compression and decompression)
2146 if test "x$ac_cv_func_inflatePrime" = "xno" ; then
2147 AC_MSG_RESULT(inflatePrime not found in zlib - disabling gzipped capture file support)
2153 AC_MSG_CHECKING(whether to use liblua for the Lua scripting plugin)
2156 AC_HELP_STRING( [--with-lua@<:@=DIR@:>@],
2157 [use liblua (located in directory DIR, if supplied) for the Lua scripting plugin @<:@default=yes, if available@:>@]),
2159 if test $withval = no
2162 elif test $withval = yes
2171 # Use liblua by default
2173 want_lua=ifavailable
2176 if test "x$want_lua" = "xno" ; then
2180 AC_WIRESHARK_LIBLUA_CHECK
2181 if test "x$want_lua" = "xno" ; then
2182 AC_MSG_RESULT(liblua not found - disabling support for the lua scripting plugin)
2185 AM_CONDITIONAL(HAVE_LIBLUA, test x$want_lua = xyes)
2189 AC_MSG_CHECKING(whether to use libportaudio for the rtp_player)
2191 AC_ARG_WITH(portaudio,
2192 AC_HELP_STRING( [--with-portaudio@<:@=DIR@:>@],
2193 [use libportaudio (located in directory DIR, if supplied) for the rtp_player @<:@default=yes, if available@:>@]),
2195 if test $withval = no
2198 elif test $withval = yes
2203 portaudio_dir=$withval
2207 # Use libportaudio by default
2209 want_portaudio=ifavailable
2212 if test "x$want_portaudio" = "xno" ; then
2216 AC_WIRESHARK_LIBPORTAUDIO_CHECK
2217 if test "x$want_portaudio" = "xno" ; then
2218 AC_MSG_RESULT(libportaudio not found - disabling support for the rtp_player)
2221 AM_CONDITIONAL(HAVE_LIBPORTAUDIO, test x$want_portaudio = xyes)
2226 AC_HELP_STRING( [--enable-ipv6],
2227 [use IPv6 name resolution, if available @<:@default=yes@:>@]),
2228 enable_ipv6=$enableval,enable_ipv6=yes)
2230 AC_MSG_CHECKING(whether to enable ipv6 name resolution if available)
2231 if test "x$enable_ipv6" = "xno" ; then
2235 AC_WIRESHARK_IPV6_STACK
2239 dnl Check if dumpcap should be installed with filesystem capabilities
2240 AC_PATH_PROG(SETCAP, setcap)
2241 AC_ARG_ENABLE(setcap-install,
2242 AC_HELP_STRING( [--enable-setcap-install],
2243 [install dumpcap with cap_net_admin and cap_net_raw @<:@default=no@:>@]),
2244 enable_setcap_install=$enableval,enable_setcap_install=no)
2246 AC_MSG_CHECKING(whether to install dumpcap with cap_net_admin and cap_net_raw capabilities)
2247 if test "x$enable_setcap_install" = "xno" ; then
2250 if test "x$SETCAP" = "x" ; then
2251 AC_MSG_RESULT(no. Setcap not found)
2252 elif test "x$enable_dumpcap" = "xno" ; then
2253 AC_MSG_ERROR(Setcap install works only with dumpcap but dumpcap is disabled)
2259 AM_CONDITIONAL(SETCAP_INSTALL, test x$enable_setcap_install = xyes)
2261 dnl Check if dumpcap should be installed setuid
2262 AC_ARG_ENABLE(setuid-install,
2263 AC_HELP_STRING( [--enable-setuid-install],
2264 [install dumpcap as setuid @<:@default=no@:>@]),
2265 enable_setuid_install=$enableval,enable_setuid_install=no)
2267 AC_MSG_CHECKING(whether to install dumpcap setuid)
2268 if test "x$enable_setuid_install" = "xno" ; then
2271 if test "x$enable_setcap_install" = "xyes" ; then
2272 enable_setuid_install=no
2273 AC_MSG_RESULT(no; using setcap instead)
2274 elif test "x$enable_dumpcap" = "xno" ; then
2275 AC_MSG_ERROR(Setuid install works only with dumpcap but dumpcap is disabled)
2281 AM_CONDITIONAL(SETUID_INSTALL, test x$enable_setuid_install = xyes)
2282 AC_CHECK_FUNCS(setresuid setresgid)
2284 dnl ...but our Network Operations group is named "no"!
2286 AC_ARG_WITH(dumpcap-group,
2287 AC_HELP_STRING( [--with-dumpcap-group=GROUP],
2288 [restrict dumpcap to GROUP]),
2290 if test "x$withval" = "xyes"; then
2291 AC_MSG_ERROR([No dumpcap group specified.])
2292 elif test "x$withval" != "xno"; then
2293 if test "x$enable_dumpcap" = "xno" ; then
2294 AC_MSG_ERROR(dumpcap group install works only with dumpcap but dumpcap is disabled)
2296 AC_MSG_RESULT($withval)
2297 DUMPCAP_GROUP="$withval"
2300 AC_SUBST(DUMPCAP_GROUP)
2301 AM_CONDITIONAL(HAVE_DUMPCAP_GROUP, test x$DUMPCAP_GROUP != x)
2303 dnl libcap (not libpcap) check
2305 AC_MSG_CHECKING(whether to use the libcap capabilities library)
2308 AC_HELP_STRING( [--with-libcap@<:@=DIR@:>@],
2309 [use libcap (located in directory DIR, if supplied) for POSIX.1e capabilities management @<:@default=yes, if present@:>@]),
2311 if test "x$withval" = "xno"; then
2313 elif test "x$withval" = "xyes"; then
2315 elif test -d "$withval"; then
2317 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2320 if test "x$with_libcap" = "xno" ; then
2324 AC_WIRESHARK_LIBCAP_CHECK
2326 AC_SUBST(LIBCAP_LIBS)
2328 dnl Checks for header files.
2329 dnl Some of these may not be needed: http://hacks.owlfolio.org/header-survey/
2330 AC_CHECK_HEADERS(direct.h dirent.h fcntl.h getopt.h grp.h inttypes.h netdb.h pwd.h stdarg.h stddef.h unistd.h)
2331 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)
2332 AC_CHECK_HEADERS(netinet/in.h)
2333 AC_CHECK_HEADERS(arpa/inet.h arpa/nameser.h)
2337 AC_MSG_CHECKING(whether to use SSL library)
2340 AC_HELP_STRING( [--with-ssl@<:@=DIR@:>@],
2341 [use SSL crypto library (located in directory DIR, if supplied) @<:@default=no@:>@]),
2343 if test "x$withval" = "xno"; then
2345 elif test "x$withval" = "xyes"; then
2347 elif test -d "$withval"; then
2349 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2354 if test "x$want_ssl" = "xyes"; then
2356 AC_CHECK_LIB(crypto,EVP_md5,
2361 AC_MSG_ERROR([SSL crypto library was requested, but is not available])
2369 AC_MSG_CHECKING(whether to use Kerberos library)
2372 AC_HELP_STRING( [--with-krb5@<:@=DIR@:>@],
2373 [use Kerberos library (located in directory DIR, if supplied) to use in Kerberos dissection @<:@default=yes@:>@]),
2375 if test $withval = no
2378 elif test $withval = yes
2387 # Use Kerberos library if available, otherwise don't.
2389 want_krb5=ifavailable
2392 if test "x$want_krb5" = "xno" ; then
2396 AC_WIRESHARK_KRB5_CHECK
2402 AC_MSG_CHECKING(whether to use the c-ares library if available)
2405 AC_HELP_STRING( [--with-c-ares@<:@=DIR@:>@],
2406 [use c-ares (located in directory DIR, if supplied) - supersedes --with-adns @<:@default=yes, if present@:>@]),
2408 if test "x$withval" = "xno"; then
2410 elif test "x$withval" = "xyes"; then
2412 elif test -d "$withval"; then
2414 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2417 if test "x$want_c_ares" = "xno" ; then
2421 AC_WIRESHARK_C_ARES_CHECK
2423 AC_SUBST(C_ARES_LIBS)
2427 AC_MSG_CHECKING(whether to use the GNU ADNS library if available)
2430 AC_HELP_STRING( [--with-adns@<:@=DIR@:>@],
2431 [use GNU ADNS (located in directory DIR, if supplied) @<:@default=yes, if present@:>@]),
2433 if test "x$withval" = "xno"; then
2435 elif test "x$withval" = "xyes"; then
2437 elif test -d "$withval"; then
2439 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2442 if test "x$want_adns" = "xno" -o "x$have_good_c_ares" = "xyes" ; then
2446 AC_WIRESHARK_ADNS_CHECK
2452 AC_MSG_CHECKING(whether to use the GeoIP IP address mapping library if available)
2455 AC_HELP_STRING( [--with-geoip@<:@=DIR@:>@],
2456 [use GeoIP (located in directory DIR, if supplied) @<:@default=yes, if present@:>@]),
2458 if test "x$withval" = "xno"; then
2460 elif test "x$withval" = "xyes"; then
2462 elif test -d "$withval"; then
2464 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2467 if test "x$want_geoip" = "xno"; then
2471 AC_WIRESHARK_GEOIP_CHECK
2473 AC_SUBST(GEOIP_LIBS)
2476 # Define WS_MSVC_NORETURN appropriately for declarations of routines that
2477 # never return (just like Charlie on the MTA).
2479 # Note that MSVC++ expects __declspec(noreturn) to precede the function
2480 # name and GCC, as far as I know, expects __attribute__((noreturn)) to
2481 # follow the function name, so we need two different flavors of
2484 AC_DEFINE(WS_MSVC_NORETURN,, [Define as the string to precede declarations of routines that never return])
2486 dnl Checks for typedefs, structures, and compiler characteristics.
2489 # Check how we can get the time zone abbreviation
2490 AC_WIRESHARK_TIMEZONE_ABBREV
2492 # We need to know whether "struct stat" has an "st_flags" member
2493 # for file_user_immutable().
2495 AC_WIRESHARK_STRUCT_ST_FLAGS
2497 # We need to know whether "struct sockaddr" has an "sa_len" member
2498 # for get_interface_list().
2500 AC_WIRESHARK_STRUCT_SA_LEN
2502 # We must know our byte order
2505 # Checks whether "-traditional" is needed when using "ioctl".
2506 # XXX - do we need this?
2507 AC_PROG_GCC_TRADITIONAL
2510 AC_CHECK_FUNC(getopt,
2512 AC_DEFINE(HAVE_GETOPT, 1, [Define to 1 if you have the getopt function.])
2514 GETOPT_LO="wsgetopt.lo"
2516 if test "$ac_cv_func_getopt" = no ; then
2517 GETOPT_LO="wsgetopt.lo"
2519 AM_CONDITIONAL(NEED_GETOPT_LO, test "x$ac_cv_func_getopt" = "xno")
2522 AC_CHECK_FUNC(strncasecmp, STRNCASECMP_LO="",
2523 STRNCASECMP_LO="strncasecmp.lo")
2524 if test "$ac_cv_func_strncasecmp" = no ; then
2525 STRNCASECMP_LO="strncasecmp.lo"
2527 AM_CONDITIONAL(NEED_STRNCASECMP_LO, test "x$ac_cv_func_strncasecmp" = "xno")
2528 AC_SUBST(STRNCASECMP_LO)
2530 AC_CHECK_FUNCS(mkstemp mkdtemp)
2532 AC_SEARCH_LIBS(inet_aton, [socket nsl], have_inet_aton=yes,
2534 if test "$have_inet_aton" = no; then
2535 INET_ATON_LO="inet_aton.lo"
2536 AC_DEFINE(HAVE_INET_ATON_H, 0, [Define unless inet/aton.h needs to be included])
2540 AM_CONDITIONAL(NEED_INET_ATON_LO, test "x$have_inet_aton" = "xno")
2541 AC_SUBST(INET_ATON_LO)
2543 AC_SEARCH_LIBS(inet_pton, [socket nsl], [
2544 dnl check for pre-BIND82 inet_pton() bug.
2545 AC_MSG_CHECKING(for broken inet_pton)
2546 AC_TRY_RUN([#include <sys/types.h>
2547 #include <sys/socket.h>
2548 #include <netinet/in.h>
2549 #include <arpa/inet.h>
2554 /* this should return 0 (error) */
2555 return inet_pton(AF_INET6, "0:1:2:3:4:5:6:7:", buf);
2559 }], [AC_MSG_RESULT(ok);
2560 have_inet_pton=yes], [AC_MSG_RESULT(broken);
2561 have_inet_pton=no], [AC_MSG_RESULT(cross compiling, assume it is broken);
2562 have_inet_pton=no])],
2564 if test "$have_inet_pton" = no; then
2565 INET_PTON_LO="inet_pton.lo"
2569 AM_CONDITIONAL(NEED_INET_PTON_LO, test "x$have_inet_pton" = "xno")
2570 AC_SUBST(INET_PTON_LO)
2572 AC_SEARCH_LIBS(inet_ntop, [socket nsl], [
2573 AC_MSG_CHECKING([for inet_ntop prototype])
2574 AC_TRY_COMPILE([#include <stdio.h>
2575 #include <sys/types.h>
2576 #include <sys/socket.h>
2577 #include <netinet/in.h>
2578 #include <arpa/inet.h>
2580 extern const char *inet_ntop(int, const void *, char *, size_t);],, [
2582 AC_DEFINE(HAVE_INET_NTOP_PROTO, 1,
2583 [Define if inet_ntop() prototype exists])], [
2584 AC_TRY_COMPILE([#include <stdio.h>
2585 #include <sys/types.h>
2586 #include <sys/socket.h>
2587 #include <netinet/in.h>
2588 #include <arpa/inet.h>
2590 extern const char *inet_ntop(int, const void *, char *, socklen_t);],, [
2592 AC_DEFINE(HAVE_INET_NTOP_PROTO, 1,
2593 [Define if inet_ntop() prototype exists])], [
2594 AC_MSG_RESULT(no)])])
2596 INET_NTOP_LO="inet_ntop.lo"
2597 AC_DEFINE(NEED_INET_V6DEFS_H, 1,
2598 [Define if inet/v6defs.h needs to be included])])
2599 AM_CONDITIONAL(NEED_INET_NTOP_LO, test "x$INET_NTOP_LO" != "x")
2600 AC_SUBST(INET_NTOP_LO)
2602 AC_CHECK_FUNC(strptime, STRPTIME_LO="",
2603 [STRPTIME_LO="strptime.lo"
2604 AC_DEFINE(NEED_STRPTIME_H, 1, [Define if strptime.h needs to be included])
2606 if test "$ac_cv_func_strptime" = no ; then
2607 STRPTIME_LO="strptime.lo"
2609 AC_SUBST(STRPTIME_C)
2610 AM_CONDITIONAL(NEED_STRPTIME_LO, test "x$ac_cv_func_strptime" = "no")
2611 AC_SUBST(STRPTIME_LO)
2613 AC_CHECK_FUNCS(getprotobynumber gethostbyname2)
2614 AC_CHECK_FUNCS(issetugid)
2615 AC_CHECK_FUNCS(mmap mprotect sysconf)
2617 dnl blank for now, but will be used in future
2618 AC_SUBST(wireshark_SUBDIRS)
2620 # Check Bluetooth SBC codec for RTP Player
2621 # git://git.kernel.org/pub/scm/bluetooth/sbc.git
2622 PKG_CHECK_MODULES(SBC, sbc >= 1.0, [have_sbc=yes], [have_sbc=no])
2623 if (test "${have_sbc}" = "yes"); then
2624 AC_DEFINE(HAVE_SBC, 1, [Define to support playing SBC by standalone BlueZ SBC library])
2625 CFLAGS="$CFLAGS $(pkg-config sbc --cflags)"
2626 LIBS="$LIBS $(pkg-config sbc --libs)"
2630 dnl check whether plugins should be enabled and, if they should be,
2631 dnl check for plugins directory - stolen from Amanda's configure.ac
2633 dnl we don't wish to expand ${libdir} yet
2634 plugindir='${libdir}/wireshark/plugins/${VERSION}'
2635 AC_ARG_WITH(plugins,
2636 AC_HELP_STRING( [--with-plugins@<:@=DIR@:>@],
2637 [support plugins (installed in DIR, if supplied) @<:@default=yes, if possible@:>@]),
2639 if test "x$withval" = "xno"; then
2641 elif test "x$have_plugins" = "xno"; then
2642 AC_MSG_ERROR([GLib on this platform doesn't support loadable modules, so you can't enable plugins.])
2643 elif test "x$withval" != "xyes"; then
2644 plugindir="$withval"
2647 AM_CONDITIONAL(HAVE_PLUGINS, test "x$have_plugins" = "xyes")
2648 if test x$have_plugins = xyes
2650 AC_DEFINE(HAVE_PLUGINS, 1, [Define if plugins are enabled])
2653 CPPFLAGS="$CPPFLAGS '-DPLUGIN_INSTALL_DIR=\"\$(plugindir)\"'"
2656 # The plugin dissectors reside in ./plugins/PROTO/
2659 AC_SUBST(PLUGIN_LIBS)
2662 # Check if (emem) memory allocations must be 8-byte aligned.
2663 # I haven't been able to write C code that reliably makes that determination
2664 # (different versions of GCC with or without optimization give different
2665 # results) so just assume everything except (32-bit) x86 needs 8-byte
2666 # alignment (64-bit platforms either require 8-byte alignment for pointers
2667 # and 64-bit integral data types or may get better performance from that;
2668 # 64-bit x86 will get 8-byte alignment from G_MEM_ALIGN anyway. 32-bit
2669 # platforms would only require it, or get better performance from it,
2670 # for 64-bit floating-point values.).
2672 AC_MSG_CHECKING(whether we need memory allocations to be 8-byte aligned)
2674 i386|i486|i586|i686)
2679 AC_DEFINE(NEED_8_BYTE_ALIGNMENT, 1, [Define if we need memory allocations to be 8-byte aligned])
2683 # Gather only the "--with*" arguments and also a list of --with arguments for rpmbuild
2684 for f in $CONFIG_ARGS
2688 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2689 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with gtk2"
2692 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2693 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --without gtk2"
2696 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2697 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with gtk3"
2700 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2701 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --without gtk3"
2704 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2705 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with qt"
2708 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2709 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --without qt"
2712 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2717 AC_SUBST(CONFIG_WITH_ARGS)
2718 AC_SUBST(RPMBUILD_WITH_ARGS)
2722 # Yes, AM_PROG_LIBTOOL is redundant with newer version(s) of some tool(s)
2723 # (autoconf? automake? libtool?) - with the newer version(s), it's
2724 # just an alias for AC_PROG_LIBTOOL, which is called earlier.
2726 # With older version(s) of those tool(s), however, it's not just an
2727 # alias, and the configure scripts don't work without it.
2730 AC_SUBST(LIBTOOL_DEPS)
2732 AM_CONDITIONAL(ENABLE_STATIC, test x$enable_static = xyes)
2733 if test x$enable_static = xyes -a x$have_plugins = xyes
2735 AC_DEFINE(ENABLE_STATIC, 1, [Link plugins statically into Wireshark])
2737 AC_SUBST(ENABLE_STATIC)
2739 dnl Save the cacheable configure results to config.cache before recursing
2742 sinclude(plugins/Custom.m4) dnl
2743 ifdef(_CUSTOM_AC_OUTPUT_,, define(_CUSTOM_AC_OUTPUT_, )) dnl
2745 sinclude(asn1/Custom.m4) dnl
2746 ifdef(_CUSTOM_ASN1_AC_OUTPUT_,, define(_CUSTOM_ASN1_AC_OUTPUT_, )) dnl
2748 AC_CONFIG_HEADERS(config.h)
2753 _CUSTOM_ASN1_AC_OUTPUT_
2754 asn1/acp133/Makefile
2756 asn1/ansi_map/Makefile
2757 asn1/ansi_tcap/Makefile
2758 asn1/atn-cm/Makefile
2759 asn1/atn-cpdlc/Makefile
2760 asn1/atn-ulcs/Makefile
2764 asn1/charging_ase/Makefile
2769 asn1/credssp/Makefile
2777 asn1/gprscdr/Makefile
2778 asn1/gsm_map/Makefile
2787 asn1/h450-ros/Makefile
2790 asn1/HI2Operations/Makefile
2795 asn1/isdn-sup/Makefile
2796 asn1/kerberos/Makefile
2799 asn1/logotypecertextn/Makefile
2803 asn1/lte-rrc/Makefile
2806 asn1/mpeg-audio/Makefile
2807 asn1/mpeg-pes/Makefile
2809 asn1/ns_cert_exts/Makefile
2810 asn1/novell_pkis/Makefile
2818 asn1/pkcs12/Makefile
2819 asn1/pkinit/Makefile
2820 asn1/pkixac/Makefile
2821 asn1/pkix1explicit/Makefile
2822 asn1/pkix1implicit/Makefile
2823 asn1/pkixproxy/Makefile
2824 asn1/pkixqualified/Makefile
2825 asn1/pkixtsp/Makefile
2828 asn1/q932-ros/Makefile
2839 asn1/sbc-ap/Makefile
2842 asn1/spnego/Makefile
2850 asn1/wlancertextn/Makefile
2852 asn1/x509af/Makefile
2853 asn1/x509ce/Makefile
2854 asn1/x509if/Makefile
2855 asn1/x509sat/Makefile
2858 capchild/doxygen.cfg
2864 epan/dfilter/Makefile
2865 epan/dissectors/Makefile
2866 epan/dissectors/dcerpc/Makefile
2867 epan/dissectors/pidl/Makefile
2868 epan/ftypes/Makefile
2882 packaging/macosx/Info.plist
2883 packaging/macosx/Makefile
2884 packaging/macosx/osx-dmg.sh
2885 packaging/macosx/Wireshark_package.pmdoc/index.xml
2886 packaging/nsis/Makefile
2887 packaging/rpm/Makefile
2888 packaging/rpm/SPECS/Makefile
2889 packaging/rpm/SPECS/wireshark.spec
2890 packaging/svr4/Makefile
2891 packaging/svr4/checkinstall
2892 packaging/svr4/pkginfo
2894 plugins/docsis/Makefile
2895 plugins/ethercat/Makefile
2896 plugins/gryphon/Makefile
2897 plugins/irda/Makefile
2898 plugins/m2m/Makefile
2899 plugins/mate/Makefile
2900 plugins/opcua/Makefile
2901 plugins/profinet/Makefile
2902 plugins/stats_tree/Makefile
2903 plugins/unistim/Makefile
2904 plugins/wimax/Makefile
2905 plugins/wimaxasncp/Makefile
2906 plugins/wimaxmacphy/Makefile
2908 tools/lemon/Makefile
2911 wsutil/nghttp2/Makefile
2915 dnl AC_CONFIG_FILES([tools/setuid-root.pl], [chmod +x tools/setuid-root.pl])
2920 if test "x$have_gtk" = "xyes"; then
2921 if test "x$with_gtk3" = "xyes"; then
2922 gtk_lib_message=" (with GTK+ 3"
2924 gtk_lib_message=" (with GTK+ 2"
2926 if test "x$have_ige_mac" = "xyes"; then
2927 gtk_lib_message="$gtk_lib_message and Mac OS X integration)"
2929 gtk_lib_message="$gtk_lib_message)"
2933 if test "x$have_qt" = "xyes" ; then
2934 enable_qtshark="yes"
2939 if test "x$enable_setcap_install" = "xyes" ; then
2940 setcap_message="yes"
2945 if test "x$enable_setuid_install" = "xyes" ; then
2946 setuid_message="yes"
2951 if test "x$DUMPCAP_GROUP" = "x" ; then
2952 dumpcap_group_message="(none)"
2954 dumpcap_group_message="$DUMPCAP_GROUP"
2957 if test "x$want_zlib" = "xno" ; then
2963 if test "x$want_lua" = "xyes" ; then
2969 if test "x$want_portaudio" = "xyes" ; then
2970 portaudio_message="yes"
2972 portaudio_message="no"
2975 if test "x$want_ssl" = "xno" ; then
2981 if test "x$want_krb5" = "xno" ; then
2984 krb5_message="yes ($ac_krb5_version)"
2987 if test "x$have_good_c_ares" = "xyes" ; then
2988 c_ares_message="yes"
2993 if test "x$have_good_adns" = "xyes" ; then
2996 if test "x$have_good_c_ares" = "xyes" ; then
2997 adns_message="no (using c-ares instead)"
3003 if test "x$have_good_libcap" = "xyes" ; then
3004 libcap_message="yes"
3009 if test "x$have_good_geoip" = "xyes" ; then
3016 echo "The Wireshark package has been configured with the following options."
3017 echo " Build wireshark (Gtk+) : $have_gtk""$gtk_lib_message"
3018 echo " Build wireshark-qt : $enable_qtshark"
3019 echo " Build tshark : $enable_tshark"
3020 echo " Build tfshark : $enable_tfshark"
3021 echo " Build capinfos : $enable_capinfos"
3022 echo " Build captype : $enable_captype"
3023 echo " Build editcap : $enable_editcap"
3024 echo " Build dumpcap : $enable_dumpcap"
3025 echo " Build mergecap : $enable_mergecap"
3026 echo " Build reordercap : $enable_reordercap"
3027 echo " Build text2pcap : $enable_text2pcap"
3028 echo " Build randpkt : $enable_randpkt"
3029 echo " Build dftest : $enable_dftest"
3030 echo " Build rawshark : $enable_rawshark"
3031 echo " Build echld : $have_echld"
3033 echo " Save files as pcap-ng by default : $enable_pcap_ng_default"
3034 echo " Install dumpcap with capabilities : $setcap_message"
3035 echo " Install dumpcap setuid : $setuid_message"
3036 echo " Use dumpcap group : $dumpcap_group_message"
3037 echo " Use plugins : $have_plugins"
3038 echo " Use Lua library : $lua_message"
3039 echo " Build rtp_player : $portaudio_message"
3040 echo " Build profile binaries : $enable_profile_build"
3041 echo " Use pcap library : $want_pcap"
3042 echo " Use zlib library : $zlib_message"
3043 echo " Use kerberos library : $krb5_message"
3044 echo " Use c-ares library : $c_ares_message"
3045 echo " Use GNU ADNS library : $adns_message"
3046 echo " Use SMI MIB library : $libsmi_message"
3047 echo " Use GNU crypto library : $gcrypt_message"
3048 echo " Use SSL crypto library : $ssl_message"
3049 echo " Use IPv6 name resolution : $enable_ipv6"
3050 echo " Use gnutls library : $tls_message"
3051 echo " Use POSIX capabilities library : $libcap_message"
3052 echo " Use GeoIP library : $geoip_message"
3053 echo " Use nl library : $libnl_message"
3054 echo " Use SBC codec library : $have_sbc"