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.
61 AC_WIRESHARK_CLANG_CHECK
63 # Find supported SIMD extensions by requesting cpuid. When an SIMD
64 # extension is found, the -m"simdextensionname" is added to SIMD_FLAGS
65 # (only if compilator support it) (ie : if "sse2" is available "-msse2" is
66 # added to SIMD_FLAGS)
69 dnl Work around libtool bug (fixed in the version 1.5a?)
70 AC_DEFUN([AC_PROVIDE_AC_LIBTOOL_DLOPEN], )
73 if test ! -z "$CXX"; then
75 # OK, we found something AC_LANG_CXX thinks is a C++ compiler,
78 # Some UN*Xes have, by default, a case-insensitive file
79 # system, and AC_PROG_CXX looks for, among other things,
80 # "CC" as a C++ compiler, and, if you have a case-insensitive
81 # file system and a C compiler named "cc" (both true, by
82 # default, on OS X), AC_PROG_CXX may end up thinking it's
85 # So we check by feeding the purported C++ compiler a
86 # program using C++ features (iostream).
88 # We do this after AC_PROG_LIBTOOL; if we did so before, and
89 # cleared CXX if what we had isn't a C++ compiler, that'd
90 # get undone by AC_PROG_LIBTOOL for some reason.
92 AC_MSG_CHECKING(whether $CXX is a C++ compiler)
94 AC_LINK_IFELSE([AC_LANG_PROGRAM(
99 std::cout << "Hello World! ";
102 [AC_MSG_RESULT(yes)],
109 AC_PATH_PROG(PERL, perl)
112 AC_PATH_PROG(PYTHON, python)
113 if test ! -z "$PYTHON"; then
115 # OK, we found Python; is it Python 2.5 or later?
116 # Note: we don't use named components for sys.version_info to get
117 # the major version number, as named components for version_info
118 # were apparently introduced in Python 2.7.
120 AC_MSG_CHECKING([whether $PYTHON is Python 2.5 or later])
121 python_major_version=`$PYTHON -c 'import sys; print (sys.version_info[[0]])'`
122 python_minor_version=`$PYTHON -c 'import sys; print (sys.version_info[[1]])'`
123 if test "$python_major_version" -eq 2 -a "$python_minor_version" -lt 5 ; then
125 AC_MSG_WARN([Building with Python $python_major_version.$python_minor_version may not work])
132 # XXX - should autogen.sh check for YACC/Bison and Flex? A user building
133 # from a distribution tarball shouldn't have to have YACC/Bison or Flex,
134 # as the tarball should contain the results of running YACC/Bison on .y
135 # files and running Flex on .l files, but a user building from SVN
136 # will have to run YACC/Bison and Flex to process those files.
138 # On the other hand, what about users who use a distribution tarball to
139 # do development? They *shouldn't* - that's what the SVN repository is
140 # for - but they might. They'd get errors if they modify a .y or .l
141 # file and try to do a build - but the error should tell them that they
142 # need to get YACC/Bison and/or Flex.
144 # Then again, getting them shouldn't be too big of a burden.
146 # XXX - is the same true of pod2man and pod2html, or are they needed
147 # even when building from a distribution tarball?
151 AC_PATH_PROG(YACCDUMMY, $YACC)
152 if test "x$YACCDUMMY" = x
154 AC_MSG_ERROR(I couldn't find yacc (or bison or ...); make sure it's installed and in your path)
157 AC_PATH_PROG(LEX, flex)
160 AC_MSG_ERROR(I couldn't find flex; make sure it's installed and in your path)
162 AC_PATH_PROG(POD2MAN, pod2man)
163 if test "x$POD2MAN" = x
166 # The alternative is not to build the man pages....
168 AC_MSG_ERROR(I couldn't find pod2man; make sure it's installed and in your path)
170 AC_PATH_PROG(POD2HTML, pod2html)
171 if test "x$POD2HTML" = x
174 # The alternative is not to build the HTML man pages....
176 AC_MSG_ERROR(I couldn't find pod2html; make sure it's installed and in your path)
180 # Checks for programs used by Wireshark/TShark/etc.
184 # XXX - this looks for various HTML viewers on the host, not the target;
185 # we really want to know what's available on the target, for cross-builds.
186 # That would probably require us to, at run time, look for xdg-open and,
187 # if we don't find it, look for mozilla, htmlview, etc.
189 AC_PATH_PROG(HTML_VIEWER, xdg-open)
190 if test "x$HTML_VIEWER" != x
193 # XXX - the HTML_VIEWER shell variable is the full path of xdg-open.
194 # Define some variable to be that, so we just run that?
196 AC_DEFINE(HAVE_XDG_OPEN, 1, [Define if we have xdg-open])
199 # XXX - we have to define HTML_VIEWER for the prefs.c code that
200 # sets the default value of the Web browser preference, even
201 # though that preference won't be offered.
203 AC_DEFINE_UNQUOTED(HTML_VIEWER, "xdg-open", [HTML viewer, e.g. mozilla])
205 AC_PATH_PROG(HTML_VIEWER, htmlview)
206 if test "x$HTML_VIEWER" = x
208 AC_DEFINE_UNQUOTED(HTML_VIEWER, "mozilla", [HTML viewer, e.g. mozilla])
210 AC_DEFINE_UNQUOTED(HTML_VIEWER, "htmlview", [HTML viewer, e.g. mozilla])
215 # Set "ac_supports_gcc_flags" if the compiler is known to support GCC-style
216 # flags such as -pedantic, -W warning flags and -f feature flags. Currently,
217 # we assume GCC and clang do; other compilers should be added here.
219 # This is done to avoid getting tripped up by compilers that support
220 # those flags but give them a different meaning.
222 if test "x$GCC" = "xyes" -o "x$CC" = "xclang" ; then
223 ac_supports_gcc_flags=yes
227 # Set "ac_supports_W_linker_passthrough" if the compiler is known to
228 # support "-Wl,{options}" to pass options through to the linker.
229 # Currently, we assume GCC, xlc, and clang do; other compilers should
232 if test "x$GCC" = "xyes" -o "x$CC" = "xxlc" -o "x$CC" = "xclang" ; then
233 ac_supports_W_linker_passthrough=yes
237 # Set "ac_supports_attribute_unused" if the compiler is known to
238 # support "__attribute__(unused)".
239 # Currently, we assume GCC and clang do; other compilers should
242 # XXX - do this with a compiler test?
244 if test "x$GCC" = "xyes" -o "x$CC" = "xclang" ; then
245 ac_supports_W_linker_passthrough=yes
248 if test "x$CC_FOR_BUILD" = x
252 AC_SUBST(CC_FOR_BUILD)
253 AC_SUBST(CFLAGS_FOR_BUILD)
256 AC_PATH_PROG(DOXYGEN, doxygen)
257 AC_CHECK_PROG(HAVE_DOXYGEN, doxygen, "yes", "no")
258 AM_CONDITIONAL(HAVE_DOXYGEN, test x$HAVE_DOXYGEN = xyes)
261 # Check for pkg-config and set PKG_CONFIG accordingly.
263 # This is referenced via AC_REQUIRE([PKG_PROG_PKG_CONFIG] in some macros
264 # like PKG_CHECK_MODULES. If the first call to such a macro is under an
265 # "if" statement, it's safer to call PKG_PROG_PKG_CONFIG directly, see
266 # the comments in acolocal.m4
270 AC_ARG_ENABLE(osx-deploy-target,
271 AC_HELP_STRING( [--enable-osx-deploy-target],
272 [choose an OS X deployment target @<:@default=major release on which you're building@:>@]),
282 # Let the user specify an OS X release to use as a
283 # deplayment target; if they specify that we should
284 # have a deployment target but don't specify the
285 # deployment target, then, if we have SDKs available,
286 # pick the OS version on which the build is being done.
287 # This also causes the build to be done against an SDK
288 # rather than against the headers and libraries in
289 # /usr/include and /usr/lib.
291 # Check for an OS X deployment target early, so that
292 # as many tests using the compiler are done using the
293 # flags that we'll be using when building.
295 if test $enableval = no
298 # The user explicitly said
299 # --disable-osx-deploy-target, so don't build
303 elif test $enableval = yes
306 # The user said --enable-osx-deploy-target, but
307 # didn't say what version to target; target the
308 # major version number of the version of OS X on
309 # which we're running.
311 # (We quote the command so that we can use
312 # autoconf's M4 quoting characters, [ and ], in
313 # the sed expression.)
315 [deploy_target=`sw_vers -productVersion | sed 's/\([0-9][0-9]*\)\.\([0-9][0-9]*\)\.[0-9]*/\1.\2/'`]
317 deploy_target="$enableval"
323 # No. Fail, because whatever the user intended for us to
324 # do, we can't do it.
326 AC_MSG_ERROR([--enable-osx-deploy-target specified on an OS other than OS X])
338 # If we have SDKs available, default to targeting the major
339 # version number of the version of OS X on which we're
342 # (We quote the command so that we can use autoconf's
343 # M4 quoting characters, [ and ], in the sed expression.)
345 for i in /Developer/SDKs \
346 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs \
347 /Library/Developer/CommandLineTools/SDKs
351 [deploy_target=`sw_vers -productVersion | sed 's/\([0-9][0-9]*\)\.\([0-9][0-9]*\)\.[0-9]*/\1.\2/'`]
359 # No. There's nothing to do.
365 if test ! -z "$deploy_target"
367 AC_MSG_CHECKING([whether we can build for OS X $deploy_target])
368 case $deploy_target in
372 # I'm not sure this would even work.
375 AC_ERROR([We don't support building for OS X $deploy_target])
380 # XXX - never tested.
383 SDKPATH="/Developer/SDKs/MacOSX10.3.9.sdk"
388 # XXX - for 10.4, do we need 10.4u? We're
389 # not currently doing fat builds (we'd need
390 # fat versions of the support libraries for
391 # that to be useful), but, if we do, we'd
394 for i in /Developer/SDKs \
395 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs \
396 /Library/Developer/CommandLineTools/SDKs
398 if test -d "$i"/"MacOSX$deploy_target.sdk"
400 SDKPATH="$i"/"MacOSX$deploy_target.sdk"
404 if test -z "$SDKPATH"
407 AC_MSG_ERROR([We couldn't find the SDK for OS X $deploy_target])
414 # Add a -mmacosx-version-min flag to force tests that
415 # use the compiler, as well as the build itself, not to,
416 # for example, use compiler or linker features not supported
417 # by the minimum targeted version of the OS.
419 # Add an -isysroot flag to use the SDK.
421 CFLAGS="-mmacosx-version-min=$deploy_target -isysroot $SDKPATH $CFLAGS"
422 CXXFLAGS="-mmacosx-version-min=$deploy_target -isysroot $SDKPATH $CXXFLAGS"
423 LDFLAGS="-mmacosx-version-min=$deploy_target -isysroot $SDKPATH $LDFLAGS"
426 # Add a -sdkroot flag to use with osx-app.sh.
428 OSX_APP_FLAGS="-sdkroot $SDKPATH"
431 # XXX - do we need this to build the Wireshark wrapper?
432 # XXX - is this still necessary with the -mmacosx-version-min
435 OSX_DEPLOY_TARGET="MACOSX_DEPLOYMENT_TARGET=$deploy_target"
438 # In the installer package XML file, give the deployment target
439 # as the minimum version.
441 OSX_MIN_VERSION="$deploy_target"
443 case $deploy_target in
447 # Only 32-bit builds are supported. 10.5
448 # (and 10.4?) had a bug that causes some BPF
449 # functions not to work with 64-bit userland
450 # code, so capturing won't work.
452 CFLAGS="-m32 $CFLAGS"
453 CXXFLAGS="-m32 $CXXFLAGS"
454 LDFLAGS="-m32 $LDFLAGS"
466 # In the installer package XML file, give the current OS
467 # version, minor version and all, as the minimum version.
468 # We can't guarantee that the resulting binary will work
469 # on older OS versions, not even older minor versions
470 # (original release or earlier software updates).
472 OSX_MIN_VERSION=`sw_vers -productVersion`
476 AC_SUBST(OSX_MIN_VERSION)
479 # Try to arrange for large file support.
484 # GUI toolkit options
487 AC_HELP_STRING( [--with-qt=@<:@yes/no@:>@],
488 [use Qt @<:@default=yes@:>@]),
489 with_qt="$withval", with_qt="unspecified")
492 AC_HELP_STRING( [--with-gtk2=@<:@yes/no@:>@],
493 [use GTK+ 2.0 @<:@default=no@:>@]),
494 with_gtk2="$withval", with_gtk2="unspecified")
497 AC_HELP_STRING( [--with-gtk3=@<:@yes/no@:>@],
498 [use GTK+ 3.0 instead of 2.0 @<:@default=yes@:>@]),
499 with_gtk3="$withval", with_gtk3="unspecified")
502 # Version 3.0 switched from LGPLv2.1+ to LGPLv3+, then switched back to
503 # LGPLv2.1+ in version 3.1.10.
504 # GnuTLS depends on GMP which switched from LGPLv2.1+ to LGPLv3+ in
505 # version 4.2.2, the switched to LGPLv3+ / GPLv2+ in version 6.0.0.
508 AC_ARG_WITH([gnutls],
509 AC_HELP_STRING( [--with-gnutls=@<:@yes/no@:>@],
510 [use GnuTLS library @<:@default=yes@:>@]),
511 with_gnutls="$withval", with_gnutls="yes")
512 if test "x$with_gnutls" = "xyes"; then
513 have_license_compatible_gnutls="no"
514 PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 3.1.10 ],
515 [ have_license_compatible_gnutls="yes" ], [ echo "GnuTLS >= 3.1.10 not found " ]
518 if test "x$have_license_compatible_gnutls" != "xyes"; then
519 PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 1.2.0 gnutls < 3],
520 [ have_license_compatible_gnutls="yes" ] , [ echo "GnuTLS >= 1.2.0, < 3.0 not found " ]
524 if test "x$have_license_compatible_gnutls" = "xyes"; then
525 echo "GnuTLS found, enabling SSL decryption"
526 AC_DEFINE(HAVE_LIBGNUTLS, 1, [Define to use GnuTLS library])
529 echo "GnuTLS with compatible license not found, disabling SSL decryption"
536 AC_ARG_WITH([gcrypt],
537 AC_HELP_STRING( [--with-gcrypt=@<:@yes/no@:>@],
538 [use gcrypt library @<:@default=yes@:>@]),
539 with_gcrypt="$withval", with_gcrypt="yes")
540 if test "x$with_gcrypt" = "xyes"; then
541 AM_PATH_LIBGCRYPT(1.1.92,
543 echo "libgcrypt found, enabling ipsec decryption"
544 AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define to use libgcrypt])
548 if test x$libgcrypt_config_prefix != x ; then
549 AC_MSG_ERROR([[libgcrypt not found; install libgcrypt-devel package for your system]])
551 echo "libgcrypt not found, disabling ipsec decryption"
559 AC_HELP_STRING([--with-libnl@<:@=VERSION@:>@],
560 [use libnl (force version VERSION, if supplied) @<:@default: yes, if available@:>@]),
562 if test "x$withval" = "xno"
565 elif test "x$withval" = "xyes"
569 elif test "x$withval" = "x1"
573 elif test "x$withval" = "x2"
577 elif test "x$withval" = "x3"
582 AC_MSG_ERROR(["$withval" is not a valid argument to --with-libnl])
586 # Use libnl if it's present, otherwise don't.
588 want_libnl=ifavailable
592 # Libnl is Linux-specific.
597 AC_MSG_CHECKING(whether to use libnl for various network interface purposes)
599 if test x$want_libnl = "xno"; then
604 # Test for specific libnl versions only if no version
605 # was specified by the user or if the version in question
606 # was requested by the user.
608 if test x$libnl_version = "xany" -o x$libnl_version = "x3"; then
609 PKG_CHECK_MODULES(LIBNL3, [libnl-route-3.0 >= 3.0 libnl-genl-3.0] >= 3.0, [have_libnl3=yes], [have_libnl3=no])
611 if test x$libnl_version = "xany" -o x$libnl_version = "x2"; then
612 PKG_CHECK_MODULES(LIBNL2, libnl-2.0 >= 2.0, [have_libnl2=yes], [have_libnl2=no])
614 if test x$libnl_version = "xany" -o x$libnl_version = "x1"; then
615 PKG_CHECK_MODULES(LIBNL1, libnl-1 >= 1.0, [have_libnl1=yes], [have_libnl1=no])
617 if (test "${have_libnl3}" = "yes"); then
618 CFLAGS="$CFLAGS $LIBNL3_CFLAGS"
619 LIBS="$LIBS $LIBNL3_LIBS"
620 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
621 AC_DEFINE(HAVE_LIBNL3, 1, [libnl version 3])
622 libnl_message="yes (v3)"
624 elif (test "${have_libnl2}" = "yes"); then
625 CFLAGS="$CFLAGS $LIBNL2_CFLAGS"
626 LIBS="$LIBS $LIBNL2_LIBS"
627 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
628 AC_DEFINE(HAVE_LIBNL2, 1, [libnl version 2])
629 libnl_message="yes (v2)"
631 elif (test "${have_libnl1}" = "yes"); then
632 CFLAGS="$CFLAGS $LIBNL1_CFLAGS"
633 LIBS="$LIBS $LIBNL1_LIBS"
634 AC_DEFINE(HAVE_LIBNL, 1, [Enable libnl support])
635 AC_DEFINE(HAVE_LIBNL1, 1, [libnl version 1])
636 libnl_message="yes (v1)"
639 if test x$want_libnl = "xyes"; then
640 case "$libnl_version" in
643 AC_MSG_ERROR("I couldn't find libnl even though you manually enabled it.")
647 AC_MSG_ERROR("I couldn't find libnl version $libnl_version even though you manually enabled it.")
654 AC_MSG_CHECKING([if nl80211.h is new enough])
655 AC_TRY_COMPILE([#include <linux/nl80211.h>],
656 [int x = NL80211_FREQUENCY_ATTR_MAX_TX_POWER;
657 x = NL80211_ATTR_SUPPORTED_IFTYPES;
658 x = NL80211_ATTR_SUPPORTED_COMMANDS;
659 x = NL80211_ATTR_WIPHY_FREQ;
660 x = NL80211_CHAN_NO_HT;],
661 [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NL80211, 1, [nl80211.h is new enough])],
664 AC_MSG_CHECKING([for NL80211_SET_CHANNEL])
665 AC_TRY_COMPILE([#include <linux/nl80211.h>],
666 [enum nl80211_commands x = NL80211_CMD_SET_CHANNEL;],
667 [AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NL80211_CMD_SET_CHANNEL, 1, [SET_CHANNEL is supported])],
672 if test x$want_libnl != "xno" -a x$want_libnl != "xifavailable"; then
673 AC_MSG_WARN([libnl is Linux-specific, ignoring --with-libnl])
678 # FIXME: currently the path argument to with-libsmi is being ignored
682 # Check for programs used when building DocBook documentation.
685 # Check for a2x (convert asciidoc to another format)
686 AC_PATH_PROG(A2X, a2x)
687 AC_CHECK_PROG(HAVE_A2X, a2x, "yes", "no")
688 AM_CONDITIONAL(HAVE_A2X, test x$HAVE_A2X = xyes)
690 # Want to control a tape drive? Use mt. Want to convert HTML to text?
691 # Uhhhhh... elinks? lynx? w3m? pandoc? html2text?
692 AC_PATH_PROG(ELINKS, elinks)
693 AC_CHECK_PROG(HAVE_ELINKS, elinks, "yes", "no")
694 AM_CONDITIONAL(HAVE_ELINKS, test x$HAVE_ELINKS = xyes)
696 # Check for fop (translate .fo to e.g. pdf)
697 AC_PATH_PROG(FOP, fop)
698 AC_CHECK_PROG(HAVE_FOP, fop, "yes", "no")
699 AM_CONDITIONAL(HAVE_FOP, test x$HAVE_FOP = xyes)
701 # Check for lynx (html -> text)
702 AC_PATH_PROG(LYNX, lynx)
703 AC_CHECK_PROG(HAVE_LYNX, lynx, "yes", "no")
704 AM_CONDITIONAL(HAVE_LYNX, test x$HAVE_LYNX = xyes)
706 # Check for w3m (html -> text)
707 AC_PATH_PROG(W3M, w3m)
708 AC_CHECK_PROG(HAVE_W3M, w3m, "yes", "no")
709 AM_CONDITIONAL(HAVE_W3M, test x$HAVE_W3M = xyes)
712 AC_PATH_PROG(XMLLINT, xmllint)
713 AC_CHECK_PROG(HAVE_XMLLINT, xmllint, "yes", "no")
714 AM_CONDITIONAL(HAVE_XMLLINT, test x$HAVE_XMLLINT = xyes)
717 AC_PATH_PROG(XSLTPROC, xsltproc)
718 AC_CHECK_PROG(HAVE_XSLTPROC, xsltproc, "yes", "no")
719 AM_CONDITIONAL(HAVE_XSLTPROC, test x$HAVE_XSLTPROC = xyes)
722 # Check for packaging utilities
723 # For now, we check to see if the various packaging utilites are in our
724 # path. I'm too lazy to write code to go hunt for them. - Gerald
728 # (Lets you install the desktop files.)
730 AC_PATH_PROG(DESKTOP_FILE_INSTALL, desktop-file-install)
733 AC_CHECK_PROG(HAVE_PKGPROTO, pkgproto, "yes", "no")
734 AC_CHECK_PROG(HAVE_PKGMK, pkgmk, "yes", "no")
735 AC_CHECK_PROG(HAVE_PKGTRANS, pkgtrans, "yes", "no")
737 if test x$HAVE_PKGPROTO = xyes -a x$HAVE_PKGMK = xyes \
738 -a x$HAVE_PKGTRANS = xyes ; then
739 HAVE_SVR4_PACKAGING=yes
741 HAVE_SVR4_PACKAGING=no
743 AC_SUBST(HAVE_SVR4_PACKAGING)
746 AC_WIRESHARK_RPM_CHECK
750 AC_CHECK_PROG(HAVE_DPKG_BUILDPACKAGE, dpkg-buildpackage, "yes", "no")
753 AC_CHECK_PROG(HAVE_XCODEBUILD, xcodebuild, "yes", "no")
754 AC_CHECK_PROG(HAVE_HDIUTIL, hdiutil, "yes", "no")
755 AC_CHECK_PROG(HAVE_BLESS, bless, "yes", "no")
757 if test x$HAVE_XCODEBUILD = xyes -a x$HAVE_HDIUTIL = xyes \
758 -a x$HAVE_BLESS = xyes ; then
759 HAVE_OSX_PACKAGING=yes
761 HAVE_OSX_PACKAGING=no
763 AC_SUBST(HAVE_OSX_PACKAGING)
766 # Some compilers have to be told to fail when passed an unknown -W flag;
767 # make sure we do that.
769 AC_WIRESHARK_CHECK_UNKNOWN_WARNING_OPTION_ERROR
772 # Some C++ compilers have to be told to fail when passed a -W flag that
773 # they don't think should apply to C++; make sure we do that.
775 AC_WIRESHARK_CHECK_NON_CXX_WARNING_OPTION_ERROR
778 # Try to add some additional checks to CFLAGS.
779 # These are not enabled by default, because the warnings they produce
780 # are very hard or impossible to eliminate.
782 AC_ARG_ENABLE(extra-compiler-warnings,
783 AC_HELP_STRING( [--enable-extra-compiler-warnings],
784 [do additional compiler warnings @<:@default=no@:>@]),
786 wireshark_extra_flags=$enableval
787 if test $enableval != no
789 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-pedantic)
791 # Various code blocks this one.
793 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Woverflow)
794 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fstrict-overflow -Wstrict-overflow=4)
796 # Due to various places where APIs we don't control
797 # require us to cast away constness, we can probably
798 # never enable these ones with -Werror.
800 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wcast-qual)
801 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wbad-function-cast, C)
803 # Some generated ASN.1 dissectors block this one;
804 # multiple function declarations for the same
805 # function are being generated.
807 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wredundant-decls)
809 # Some loops are safe, but it's hard to convince the
812 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wunsafe-loop-optimizations)
814 # All the registration functions block these for now.
816 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wmissing-prototypes)
817 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wmissing-declarations)
819 # A bunch of "that might not work on SPARC" code blocks
822 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wcast-align)
824 # Works only with Clang
826 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wunreachable-code)
828 # Works only with Clang but generates a lot of warnings
829 # (about glib library not using Doxygen)
831 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdocumentation)
835 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wall -W) # -W is now known as -Wextra
836 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wextra) # -W is now known as -Wextra
837 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdeclaration-after-statement, C)
838 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wendif-labels)
839 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wpointer-arith)
840 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-pointer-sign, C)
841 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Warray-bounds)
842 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wformat-security)
843 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fwrapv)
844 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fno-strict-overflow)
845 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fno-delete-null-pointer-checks)
846 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wold-style-definition, C)
847 # The Qt headers generate a ton of shortening errors on 64-bit systems
848 # so only enable this for C for now.
849 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wshorten-64-to-32, C)
850 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wstrict-prototypes, C)
851 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wjump-misses-init, C)
852 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wvla)
853 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Waddress)
854 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wattributes)
855 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wdiv-by-zero)
856 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wignored-qualifiers)
857 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wpragmas)
858 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-overlength-strings)
859 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wwrite-strings)
860 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-long-long)
861 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wc++-compat, C)
862 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wheader-guard)
867 # Make sure -Wshadow doesn't complain about variables in function and
868 # function pointer declarations shadowing other variables; if not, don't
869 # turn it on, as some versions of GCC (including the one in at least
870 # some Xcode versions that came with Mac OS X 10.5) complain about
873 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wshadow, C,
875 extern int bar(int a);
881 int (*fptr)(int a) = bar;
886 [warns about variables in function declarations shadowing other variables])
888 # Unfortunately some versions of gcc generate logical-op warnings when strchr()
889 # is given a constant string.
890 # gcc versions 4.3.2 and 4.4.5 are known to have the problem.
891 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wlogical-op, C,
895 int foo(const char *, int);
899 foo(const char *sep, int c)
901 if (strchr (sep, c) != NULL)
910 return foo("<", 'a');
913 [generates warnings from strchr()])
917 # On OS X, suppress warnings about deprecated declarations, because
918 # they apparently think everything on OS X is Shiny Happy Apple-
919 # Framework-Based Apps and are deprecating some perfectly OK
920 # multi-platform open-source libraries that we use in our multi-platform
921 # open-source application in favor of various frameworks that are
926 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-Wno-deprecated-declarations)
931 # Use the faster pre gcc 4.5 floating point precision if available.
933 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fexcess-precision=fast)
935 CFLAGS_before_fvhidden="$CFLAGS"
936 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fvisibility=hidden)
937 if test "x$CFLAGS" = "x$CFLAGS_before_fvhidden"
939 # TODO add other ways of hiding symbols
940 AC_MSG_WARN(Compiler will export all symbols from shared libraries)
943 AC_WIRESHARK_LDFLAGS_CHECK([-Wl,--as-needed])
944 ###AC_WIRESHARK_LDFLAGS_CHECK([-Wl,-M])
945 ###AC_WIRESHARK_LDFLAGS_CHECK([-Wl,--cref])
946 # AC_WIRESHARK_LDFLAGS_CHECK([-flto])
947 # AC_WIRESHARK_LDFLAGS_CHECK([-fwhopr])
948 # AC_WIRESHARK_LDFLAGS_CHECK([-fwhole-program])
951 # Put -fPIE in PIE_CFLAGS and -pie in PIE_LDFLAGS if we can use them,
952 # so that we can build dumpcap PIE - it may run with elevated
953 # privileges, and using PIE means the OS can run it at random locations
954 # in the address space to make attacks more difficult.
956 CFLAGS_before_pie="$CFLAGS"
957 AC_WIRESHARK_COMPILER_FLAGS_CHECK(-fPIE)
958 if test "x$CFLAGS" != "x$CFLAGS_before_pie"
961 CFLAGS="$CFLAGS_before_pie"
963 LDFLAGS_before_pie="$LDFLAGS"
964 AC_WIRESHARK_LDFLAGS_CHECK([-fPIE -pie])
965 if test "x$LDFLAGS" != "x$LDFLAGS_before_pie"
972 LDFLAGS="$LDFLAGS_before_pie"
977 AC_SUBST(PIE_LDFLAGS)
980 # If we're running GCC or clang define _U_ to be "__attribute__((unused))"
981 # so we can use _U_ to flag unused function parameters and not get warnings
982 # about them. Otherwise, define _U_ to be an empty string so that _U_ used
983 # to flag an unused function parameters will compile with other compilers.
985 # XXX - similar hints for other compilers?
987 if test "x$GCC" = "xyes" -o "x$CC" = "xclang" ; then
988 AC_DEFINE(_U_, __attribute__((unused)), [Hint to the compiler that a function parameters is not used])
990 AC_DEFINE(_U_, , [Hint to the compiler that a function parameters is not used])
993 # If we're running GCC or CLang, use FORTIFY_SOURCE=2
994 # (only if the GCC 'optimization level' > 0).
996 # See: http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html
997 # See: http://sourceware.org/bugzilla/show_bug.cgi?id=13979
999 # Note: FORTIFY_SOURCE is only effective for gcc optimization level > 0 (-O1, etc)
1000 AC_WIRESHARK_GCC_FORTIFY_SOURCE_CHECK
1003 # If the compiler supports GCC-style flags, enable a barrier "stop on
1005 # This barrier is set for a very large part of the code. However, it is
1006 # typically not set for "generated" code (flex, ans2wrs, idl2wrs, ...)
1008 warnings_as_errors_default="yes"
1009 AC_MSG_CHECKING(whether we should treat compiler warnings as errors)
1010 AC_ARG_ENABLE(warnings-as-errors,
1011 AC_HELP_STRING( [--enable-warnings-as-errors],
1012 [treat warnings as errors (only for GCC or clang) @<:@default=yes, unless extra compiler warnings are enabled@:>@]),
1014 if test "x$ac_supports_gcc_flags" = "xyes" -a "x$enableval" = "xyes"; then
1015 with_warnings_as_errors="yes"
1018 with_warnings_as_errors="no"
1023 if test "x$ac_supports_gcc_flags" = "xyes" -a "x$wireshark_extra_flags" = "x" -a "x$warnings_as_errors_default" = "xyes"; then
1024 with_warnings_as_errors="yes"
1027 with_warnings_as_errors="no"
1032 AM_CONDITIONAL(HAVE_WARNINGS_AS_ERRORS, test "x$with_warnings_as_errors" = "xyes")
1035 # Add any platform-specific compiler flags needed.
1037 AC_MSG_CHECKING(for platform-specific compiler flags)
1038 if test "x$GCC" = "xyes" ; then
1040 # GCC - do any platform-specific tweaking necessary.
1044 # the X11 headers don't automatically include prototype info
1045 # and a lot don't include the return type
1046 CPPFLAGS="$CPPFLAGS -DFUNCPROTO=15"
1047 CFLAGS="$CFLAGS -Wno-return-type"
1048 CXXFLAGS="$CXXFLAGS -Wno-return-type"
1049 AC_MSG_RESULT(GCC on Solaris - added -Wno-return-type -DFUNCPROTO=15)
1052 AC_MSG_RESULT(none needed)
1057 # Not GCC - assume it's the vendor's compiler.
1062 # HP's ANSI C compiler; flags suggested by Jost Martin.
1063 # "-Ae" for ANSI C plus extensions such as "long long".
1064 # "+O2", for optimization. XXX - works with "-g"?
1066 # HP's ANSI C++ compiler doesn't support "-Ae", but
1067 # does support "+O2", at least according to the
1068 # documentation I can find online.
1070 CFLAGS="-Ae +O2 $CFLAGS"
1071 CFLAGS_FOR_BUILD="-Ae +O2 $CFLAGS"
1072 CXXFLAGS="+O2 $CFLAGS"
1073 AC_MSG_RESULT(HP ANSI C compiler - added -Ae +O2)
1076 AC_MSG_RESULT(none needed)
1082 # Add any platform-specific linker flags needed.
1084 AC_MSG_CHECKING(for platform-specific linker flags)
1088 # Add -Wl,-single_module to the LDFLAGS used with shared
1089 # libraries, to fix some error that show up in some cases;
1090 # some Apple documentation recommends it for most shared
1093 LDFLAGS_SHAREDLIB="-Wl,-single_module"
1095 # Add -Wl,-search_paths_first to make sure that if we search
1096 # directories A and B, in that order, for a given library, a
1097 # non-shared version in directory A, rather than a shared
1098 # version in directory B, is chosen (so we can use
1099 # --with-pcap=/usr/local to force all programs to be linked
1100 # with a static version installed in /usr/local/lib rather than
1101 # the system version in /usr/lib).
1103 # Also add -Wl,-rpath,@executable_path/../lib and
1104 # -Wl,-rpath,/usr/local/lib, so that, if we build an app
1105 # bundle, we can tweak all the executable images, shared
1106 # libraries, and plugins in the bundle to look for non-system
1107 # libraries in the rpath, rather than having a script tweak
1108 # DYLD_LIBRARY_PATH.
1110 LDFLAGS="-Wl,-search_paths_first -Wl,-rpath,@executable_path/../lib -Wl,-rpath,@executable_path/../Frameworks -Wl,-rpath,/usr/local/lib $LDFLAGS"
1111 AC_MSG_RESULT([Apple linker - added -Wl,-single_module and -Wl,-search_paths_first, and rpaths])
1115 # Shared libraries in cygwin/Win32 must never contain
1116 # undefined symbols.
1118 LDFLAGS="$LDFLAGS -no-undefined"
1119 AC_MSG_RESULT(CygWin GNU ld - added -no-undefined)
1122 AC_MSG_RESULT(none needed)
1125 AC_SUBST(LDFLAGS_SHAREDLIB)
1127 # Enable silent builds by default
1128 # Verbose builds can be enabled with "./configure
1129 # --enable-silent-rules ..." or "make V=1 ..."
1130 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
1131 [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
1134 # On "Darwin", which we assume to mean "OS X" rather than "iOS" or
1135 # "just Darwin" (as we don't currently support iOS, and as I don't
1136 # think you can build and run "just Darwin" as an OS for PCs), we
1137 # arrange to build some programs with Application Services so they
1138 # can launch Web browsers and Finder windows, arrange to build some
1139 # programs with System Configuration so they can get "friendly names"
1140 # and other information about interfaces, and build any programs that
1141 # use either of those frameworks or that report version information
1142 # with Core Foundation as the frameworks in question use it and as we
1143 # get version information from plists and thus need Core Foundation
1144 # to process those plists.
1149 AC_DEFINE(HAVE_OS_X_FRAMEWORKS, 1, [Define to 1 if you have OS X frameworks])
1150 APPLICATIONSERVICES_FRAMEWORKS="-framework ApplicationServices"
1151 SYSTEMCONFIGURATION_FRAMEWORKS="-framework SystemConfiguration"
1152 COREFOUNDATION_FRAMEWORKS="-framework CoreFoundation"
1155 # OK, so we have the OS X frameworks; do they include
1156 # CFPropertyListCreateWithStream, or do we have
1157 # to fall back on CFPropertyListCreateFromStream?
1158 # (They only differ in the error return, which we
1159 # don't care about. And, no, we shouldn't just
1160 # use CFPropertyListCreateFromStream, because it's
1161 # deprecated in newer releases.)
1163 ac_save_LIBS="$LIBS"
1164 LIBS="$LIBS $COREFOUNDATION_FRAMEWORKS"
1165 AC_CHECK_FUNCS(CFPropertyListCreateWithStream)
1166 LIBS="$ac_save_LIBS"
1169 AC_SUBST(APPLICATIONSERVICES_FRAMEWORKS)
1170 AC_SUBST(SYSTEMCONFIGURATION_FRAMEWORKS)
1171 AC_SUBST(COREFOUNDATION_FRAMEWORKS)
1174 # On Solaris, check whether we have getexecname().
1178 AC_CHECK_FUNC(getexecname)
1182 dnl Look in /usr/local for header files and libraries ?
1183 dnl XXX FIXME don't include /usr/local if it is already in the system
1184 dnl search path as this causes gcc 3.2 on Linux to complain about a change
1185 dnl of the system search order for includes
1186 AC_ARG_ENABLE(usr-local,
1187 AC_HELP_STRING( [--enable-usr-local],
1188 [look for headers and libs in /usr/local tree @<:@default=yes@:>@]),
1189 ac_cv_enable_usr_local=$enableval,ac_cv_enable_usr_local=yes)
1191 AC_MSG_CHECKING(whether to use /usr/local for headers and libraries)
1192 if test "x$ac_cv_enable_usr_local" = "xyes" ; then
1193 if test -d "/usr/local"; then
1196 # Arrange that we search for header files in the source directory
1197 # and in its "wiretap" subdirectory, as well as in "/usr/local/include",
1198 # as various packages we use ("libpcap", "zlib", "adns")
1199 # may have been installed under "/usr/local/include".
1201 CPPFLAGS="$CPPFLAGS -I/usr/local/include"
1204 # Arrange that we search for libraries in "/usr/local/lib".
1206 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, /usr/local/lib)
1215 # If we're running Solaris, and LD_LIBRARY_PATH is defined, add it as a
1220 AC_MSG_CHECKING(for LD_LIBRARY_PATH, since you appear to be running Solaris)
1221 if test x$LD_LIBRARY_PATH != x ; then
1222 LIBS="$LIBS -R$LD_LIBRARY_PATH"
1223 AC_MSG_RESULT(yes -- added LD_LIBRARY_PATH to run-time linker path)
1225 AC_MSG_RESULT(no -- this may be a problem in a few seconds)
1231 # Check for versions of "sed" inadequate to handle, in libtool, a list
1232 # of object files as large as the list in Wireshark.
1234 # On Solaris, we check for "/bin/sed", "/usr/bin/sed", and "/usr/ucb/sed",
1235 # as both "/usr/bin/sed" (which is also "/bin/sed", as "/bin" is just a
1236 # symlink to "/usr/bin", but people may have "/bin" before "/usr/bin" in
1237 # their search path) and "/usr/ucb/sed" are inadequate; "/usr/xpg4/bin/sed"
1238 # is the only "sed" that comes with Solaris that can handle Wireshark.
1240 # Add any checks here that are necessary for other OSes.
1242 AC_PATH_PROG(SED, sed)
1245 AC_MSG_ERROR(I couldn't find sed; make sure it's installed and in your path)
1247 AC_WIRESHARK_GNU_SED_CHECK
1248 if test "$HAVE_GNU_SED" = no ; then
1251 AC_MSG_CHECKING(whether one of /usr/bin/sed or /bin/sed or /usr/ucb/sed will be used)
1253 /bin/sed|/usr/bin/sed|/usr/ucb/sed)
1255 AC_MSG_ERROR([change your path to search /usr/xpg4/bin or directory containing GNU sed before /usr/bin (and /bin and /usr/ucb)])
1270 # Enable/disable wireshark
1271 AC_ARG_ENABLE(wireshark,
1272 AC_HELP_STRING( [--enable-wireshark],
1273 [build the Wireshark GUI (with Gtk+, Qt, or both) @<:@default=yes@:>@]),
1274 enable_wireshark=$enableval,enable_wireshark=yes)
1276 AC_ARG_ENABLE(packet-editor,
1277 AC_HELP_STRING( [--enable-packet-editor],
1278 [add support for packet editor in Wireshark @<:@default=yes@:>@]),
1279 enable_packet_editor=$enableval,enable_packet_editor=yes)
1280 if test x$enable_packet_editor = xyes; then
1281 AC_DEFINE(WANT_PACKET_EDITOR, 1, [Support for packet editor])
1284 AC_ARG_ENABLE(profile-build,
1285 AC_HELP_STRING( [--enable-profile-build],
1286 [build profile-ready binaries @<:@default=no@:>@]),
1287 enable_profile_build=$enableval,enable_profile_build=no)
1288 AM_CONDITIONAL(USE_PROFILE_BUILD, test x$enable_profile_build = xyes)
1289 AC_MSG_CHECKING(if profile builds must be generated)
1290 if test "x$enable_profile_build" = "xyes" ; then
1291 if test "x$GCC" = "xyes" -o "x$CLANG" = "xyes" ; then
1293 CFLAGS=" -pg $CFLAGS"
1294 CXXFLAGS=" -pg $CXXFLAGS"
1297 echo "Building profile binaries currently only supported for GCC and clang."
1303 # Create DATAFILE_DIR #define for config.h
1304 datafiledir=$datadir/wireshark
1306 test "x$prefix" = xNONE && prefix=$ac_default_prefix
1307 test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
1308 # Ugly hack, but I don't see how this problem can be solved
1309 # properly that DATAFILE_DIR had a value starting with
1310 # "${prefix}/" instead of e.g. "/usr/local/"
1311 eval eval echo "$datafiledir"
1313 AC_DEFINE_UNQUOTED(DATAFILE_DIR,"$datafiledir", [Directory for data])
1315 # Create DOC_DIR #define for config.h
1317 test "x$prefix" = xNONE && prefix=$ac_default_prefix
1318 test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
1319 # Ugly hack, but I don't see how this problem can be solved
1320 # properly that DOC_DIR had a value starting with
1321 # "${prefix}/" instead of e.g. "/usr/local/"
1322 eval eval echo "$docdir"
1324 AC_DEFINE_UNQUOTED(DOC_DIR, "$docdir", [Directory for docs])
1326 GTK2_MIN_VERSION=2.12.0
1327 AC_SUBST(GTK2_MIN_VERSION)
1328 GTK3_MIN_VERSION=3.0.0
1329 AC_SUBST(GTK3_MIN_VERSION)
1330 QT_MIN_VERSION=4.6.0
1331 AC_SUBST(QT_MIN_VERSION)
1332 # GTK+ and Qt checks; we require GTK+ $GTK2_MIN_VERSION or later or
1333 # GTK3_MIN_VERSION or later or Qt $QT_MIN_VERSION or later.
1335 # We only do those if we're going to be building Wireshark;
1336 # otherwise, we don't have any GUI to build, so we don't use
1339 # We don't add $GTK_LIBS or $Qt_LIBS to LIBS, because we don't want to
1340 # force all programs to be built with GTK+ or Qt.
1342 # Release dates for GTK+ versions:
1343 # http://en.wikipedia.org/wiki/GTK+#Releases
1344 # 2.12.0: 14 Sep 2007
1345 # 2.14.0: 04 Sep 2008
1346 # 2.16.0: 13 Mar 2009
1347 # 2.18.0: 23 Sep 2009
1348 # 2.20.0: 23 Mar 2010
1349 # 2.22.0: 23 Sep 2010
1350 # 2.24.0: 30 Jan 2011
1351 # 3.0.0: 10 Feb 2011
1352 # 3.2.0: 25 Sep 2011
1353 # 3.4.0: 26 Mar 2012
1354 # 3.6.0: 24 Sep 2012
1355 # 3.8.0: 25 Mar 2013
1356 # 3.10.0: 23 Sep 2013
1357 # 3.12.0: 25 Mar 2014
1359 # Release dates for Qt versions:
1360 # http://en.wikipedia.org/wiki/List_of_Qt_releases
1361 # 4.6.0: 01 Dec 2009
1362 # 4.7.0: 21 Sep 2010
1363 # 4.8.0: 15 Dec 2011
1364 # 5.0.0: 19 Dec 2012
1365 # 5.1.0: 03 Jul 2013
1366 # 5.2.0: 12 Dec 2013
1370 if test "x$enable_wireshark" = "xyes"; then
1371 if test "x$with_gtk2" = "xunspecified" -a \
1372 "x$with_gtk3" = "xunspecified" -a \
1373 "x$with_qt" = "xunspecified"; then
1375 # No GUI toolkit was explicitly specified; pick Qt and GTK+ 3.
1380 if test "x$with_qt" = "xyes"; then
1382 # Qt was specified; Make sure we have a C++ compiler.
1384 if test -z "$CXX"; then
1385 AC_MSG_ERROR(Need a working C++ compiler to build Wireshark with Qt)
1389 # Now make sure we have Qt and, if so, add the flags
1390 # for it to CFLAGS and CXXFLAGS.
1392 AC_WIRESHARK_QT_CHECK($QT_MIN_VERSION,
1394 CFLAGS="$CFLAGS $Qt_CFLAGS"
1395 CXXFLAGS="$CXXFLAGS $Qt_CFLAGS"
1397 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-qt"
1398 OSX_APP_FLAGS="$OSX_APP_FLAGS -qt"
1401 [AC_MSG_ERROR([Qt is not available])])
1404 # XXX - greasy hack to make ui/gtk/recent.c
1407 CPPFLAGS="-DQT_GUI_LIB"
1410 if test "x$with_gtk3" = "xyes"; then
1412 # GTK+ 3 was specified; make sure they didn't also
1413 # specify GTK+ 2, as we don't support building both
1414 # GTK+ 2 and GTK+ 3 versions at the same time.
1416 if test "x$with_gtk2" = "xyes"; then
1417 AC_MSG_ERROR([Both GTK+ 2 and GTK+ 3 were specified; choose one but not both])
1421 # Make sure we have GTK+ 3.
1423 AM_PATH_GTK_3_0(3.0.0,
1425 CFLAGS="$CFLAGS $GTK_CFLAGS"
1426 CXXFLAGS="$CXXFLAGS $GTK_CFLAGS"
1428 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-gtk3"
1430 [AC_MSG_ERROR([GTK+ 3 is not available])])
1431 elif test "x$with_gtk2" = "xyes"; then
1433 # GTK+ 3 wasn't specified, and GTK+ 2 was specified;
1434 # make sure we have GTK+ 2.
1436 AM_PATH_GTK_2_0($GTK2_MIN_VERSION,
1438 CFLAGS="$CFLAGS $GTK_CFLAGS"
1439 CXXFLAGS="$CXXFLAGS $GTK_CFLAGS"
1441 GUI_CONFIGURE_FLAGS="$GUI_CONFIGURE_FLAGS --with-gtk2"
1443 [AC_MSG_ERROR([GTK+ 2 is not available])])
1446 AC_SUBST(GUI_CONFIGURE_FLAGS)
1448 GLIB_MIN_VERSION=2.16.0
1449 AC_SUBST(GLIB_MIN_VERSION)
1450 # GLib checks; we require GLib $GLIB_MIN_VERSION or later, and require gmodule
1451 # support, as we need that for dynamically loading plugins.
1452 # If we found GTK+, this doesn't add GLIB_CFLAGS to CFLAGS, because
1453 # AM_PATH_GTK will add GTK_CFLAGS to CFLAGS, and GTK_CFLAGS is a
1454 # superset of GLIB_CFLAGS. If we didn't find GTK+, it does add
1455 # GLIB_CFLAGS to CFLAGS.
1456 # However, this means that both @GLIB_LIBS@ and @GTK_LIBS@ will be
1457 # set when generating the Makefile, so we can make programs that require
1458 # only GLib link with @GLIB_LIBS@ and make programs that require GTK+
1459 # link with @GTK_LIBS@ (which includes @GLIB_LIBS@).
1460 # We don't add $GLIB_LIBS to LIBS, because we don't want to force all
1461 # programs to be built with GLib.
1463 # Release dates for GLib versions:
1464 # 2.14.0: 03 Aug 2007
1465 # 2.16.0: 10 Mar 2008
1466 # 2.18.0: 02 Sep 2008
1467 # 2.20.0: 13 Mar 2009
1468 # 2.22.0: 22 Sep 2009
1469 # 2.24.0: 28 Mar 2010
1470 # 2.26.0: 27 Sep 2010
1471 # 2.28.0: 08 Feb 2011
1472 # 2.30.0: 27 Sep 2011
1473 # 2.32.0: 24 Mar 2012
1474 # 2.34.0: 24 Sep 2012
1475 # 2.36.0: 25 Mar 2013
1476 # 2.38.0: 23 Sep 2013
1477 # 2.40.0: 24 Mar 2014
1479 use_glib_cflags="true"
1480 if test "$have_gtk" = "yes" -a "$have_qt" = "yes" ; then
1481 # We have both GTK and Qt and thus will be building both wireshark
1484 wireshark_bin="wireshark\$(EXEEXT) wireshark-qt\$(EXEEXT)"
1485 wireshark_man="wireshark.1"
1486 wireshark_SUBDIRS="codecs ui/qt ui/gtk"
1488 if test "$have_gtk" = "no" -a "$have_qt" = "yes" ; then
1489 # We don't have GTK+ but we have Qt.
1491 wireshark_bin="wireshark-qt\$(EXEEXT)"
1492 wireshark_man="wireshark.1"
1493 wireshark_SUBDIRS="codecs ui/qt"
1495 if test "$have_gtk" = "yes" -a "$have_qt" = "no" ; then
1496 # We have GTK+ but not Qt.
1498 wireshark_bin="wireshark\$(EXEEXT)"
1499 wireshark_man="wireshark.1"
1500 wireshark_SUBDIRS="codecs ui/gtk"
1501 use_glib_cflags="false"
1503 if test "$have_gtk" = "no" -a "$have_qt" = "no" ; then
1504 # We have neither GTK+ nor Qt.
1506 # If they didn't explicitly say "--disable-wireshark",
1507 # fail (so that, unless they explicitly indicated that
1508 # they don't want Wireshark, we stop so they know they
1509 # won't be getting Wireshark unless they fix the GTK+/Qt
1512 if test "x$enable_wireshark" = "xyes"; then
1513 if test "x$with_gtk3" = "xyes"; then
1514 AC_MSG_ERROR([Neither Qt nor GTK+ $GTK3_MIN_VERSION or later are available, so Wireshark can't be compiled])
1516 AC_MSG_ERROR([Neither Qt nor GTK+ $GTK2_MIN_VERSION or later are available, so Wireshark can't be compiled])
1523 if test "$have_gtk" = "yes" ; then
1524 # If we have GTK then add flags for it.
1526 CPPFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CPPFLAGS"
1527 CPPFLAGS="-DGDK_DISABLE_DEPRECATED $CPPFLAGS"
1528 if test \( $gtk_config_major_version -eq 3 -a $gtk_config_minor_version -ge 10 \) ; then
1529 ## Allow use of deprecated & disable deprecated warnings if Gtk >= 3.10;
1530 ## The deprecations in Gtk 3.10 will not be fixed ...
1531 CPPFLAGS="-DGDK_DISABLE_DEPRECATION_WARNINGS $CPPFLAGS"
1533 CPPFLAGS="-DGTK_DISABLE_DEPRECATED $CPPFLAGS"
1535 CPPFLAGS="-DGTK_DISABLE_SINGLE_INCLUDES $CPPFLAGS"
1536 if test ! \( $gtk_config_major_version -eq 2 -a $gtk_config_minor_version -lt 20 \) ; then
1537 # Enable GSEAL when building with GTK > 2.20
1538 # (Versions prior to 2.22 lacked some necessary accessors.)
1539 CPPFLAGS="-DGSEAL_ENABLE $CPPFLAGS"
1543 # XXX - Is this really necessary? When we build with both Gtk+ and Qt it works...
1544 if test "$use_glib_cflags" = "true"; then
1546 AM_PATH_GLIB_2_0($GLIB_MIN_VERSION,
1548 CFLAGS="$CFLAGS $GLIB_CFLAGS"
1549 CXXFLAGS="$CXXFLAGS $GLIB_CFLAGS"
1550 ], AC_MSG_ERROR(GLib $GLIB_MIN_VERSION or later distribution not found.), gthread gmodule)
1552 # Don't use GLIB_CFLAGS
1553 AM_PATH_GLIB_2_0($GLIB_MIN_VERSION, , AC_MSG_ERROR(GLib $GLIB_MIN_VERSION or later distribution not found.), gthread gmodule)
1557 # "make dist" requires that we have the Qt build tools.
1559 # Annoyingly, at least on Fedora 16, uic and moc are named XXX-qt4
1560 # rather than just XXX, perhaps to allow Qt 3 and Qt 4 tools to be
1561 # installed; if they're still doing that in current Fedora releases,
1562 # perhaps there will also be XXX-qt5 when they pick up Qt 5.
1564 AC_PATH_PROG(UIC, uic)
1567 AC_PATH_PROG(UIC, uic-qt4)
1570 if test "x$with_qt" = "xyes"; then
1572 # If you want to build with Qt, you'd better
1575 AC_MSG_ERROR(I couldn't find uic or uic-qt4; make sure it's installed and in your path)
1578 # We shouldn't fail here, as the user's not
1579 # building with Qt, and we shouldn't force them
1580 # to have Qt installed if they're not doing so.
1581 # "make dist" will fail if they do that, but
1582 # we don't know whether they'll be doing that,
1583 # so this is the best we can do.
1590 AC_PATH_PROG(MOC, moc)
1593 AC_PATH_PROG(MOC, moc-qt4)
1596 if test "x$with_qt" = "xyes"; then
1598 # If you want to build with Qt, you'd better
1601 AC_MSG_ERROR(I couldn't find moc or moc-qt4; make sure it's installed and in your path)
1604 # We shouldn't fail here, as the user's not
1605 # building with Qt, and we shouldn't force them
1606 # to have Qt installed if they're not doing so.
1607 # "make dist" will fail if they do that, but
1608 # we don't know whether they'll be doing that,
1609 # so this is the best we can do.
1617 # Error out if a glib header other than a "top level" header
1618 # (glib.h, glib-object.h, gio.h) or certain other headers( e.g.,gmodule.h)
1620 CPPFLAGS="-DG_DISABLE_SINGLE_INCLUDES $CPPFLAGS"
1622 # Error out on the usage of deprecated glib functions
1623 CPPFLAGS="-DG_DISABLE_DEPRECATED $CPPFLAGS"
1626 # Check whether GLib modules are supported, to determine whether we
1627 # can support plugins.
1629 AC_MSG_CHECKING(whether GLib supports loadable modules)
1630 ac_save_CFLAGS="$CFLAGS"
1631 ac_save_LIBS="$LIBS"
1632 CFLAGS="$CFLAGS $GLIB_CFLAGS"
1633 LIBS="$GLIB_LIBS $LIBS"
1636 #include <gmodule.h>
1643 if (g_module_supported())
1644 return 0; /* success */
1646 return 1; /* failure */
1648 ], ac_cv_glib_supports_modules=yes, ac_cv_glib_supports_modules=no,
1649 [echo $ac_n "cross compiling; assumed OK... $ac_c"
1650 ac_cv_glib_supports_modules=yes])
1651 CFLAGS="$ac_save_CFLAGS"
1652 LIBS="$ac_save_LIBS"
1653 if test "$ac_cv_glib_supports_modules" = yes ; then
1662 # If we have <dlfcn.h>, check whether we have dladdr.
1664 if test "$ac_cv_header_dlfcn_h" = "yes"
1667 # Use GLib compiler flags and linker flags; GLib's gmodule
1668 # stuff uses the dl APIs if available, so it might know
1669 # what flags are needed.
1671 ac_save_CFLAGS="$CFLAGS"
1672 ac_save_LIBS="$LIBS"
1673 CFLAGS="$CFLAGS $GLIB_CFLAGS"
1674 LIBS="$GLIB_LIBS $LIBS"
1675 AC_CHECK_FUNCS(dladdr)
1676 if test x$ac_cv_func_dladdr = xno
1679 # OK, try it with -ldl, in case you need that to get
1680 # dladdr(). For some reason, on Linux, that's not
1681 # part of the GLib flags; perhaps GLib itself is
1682 # linked with libdl, so that you can link with
1683 # Glib and it'll pull libdl in itself.
1686 AC_CHECK_FUNCS(dladdr)
1688 CFLAGS="$ac_save_CFLAGS"
1689 LIBS="$ac_save_LIBS"
1693 # Check whether GLib's printf supports thousands grouping. (This might
1694 # be different from the system's printf since GLib can optionally use
1695 # its own printf implementation.)
1697 AC_MSG_CHECKING(whether GLib supports POSIX/XSI thousands grouping)
1698 ac_save_CFLAGS="$CFLAGS"
1699 ac_save_LIBS="$LIBS"
1700 CFLAGS="$CFLAGS $GLIB_CFLAGS"
1701 LIBS="$GLIB_LIBS $LIBS"
1712 setlocale(LC_ALL, "en_US.UTF-8");
1713 str = g_strdup_printf("%'u", 123456);
1714 return (strcmp (str, "123,456") != 0);
1716 ], ac_cv_glib_supports_printf_grouping=yes, ac_cv_glib_supports_printf_grouping=no,
1717 [echo $ac_n "cross compiling; playing it safe... $ac_c"
1718 ac_cv_glib_supports_printf_grouping=no])
1719 CFLAGS="$ac_save_CFLAGS"
1720 LIBS="$ac_save_LIBS"
1721 if test "$ac_cv_glib_supports_printf_grouping" = yes ; then
1723 AC_DEFINE(HAVE_GLIB_PRINTF_GROUPING, 1, [Define if your printf() function supports thousands grouping.])
1728 if test "x$have_gtk" = "xyes"
1731 # We have GTK+; do we want the OS X integration functions and,
1732 # if so, do we have them and, if so, which versions do we have,
1733 # the old Carbon-based ones or the new Cocoa-based ones?
1735 AC_MSG_CHECKING(whether to use OS X integration functions)
1737 AC_ARG_WITH(osx-integration,
1738 AC_HELP_STRING( [--with-osx-integration],
1739 [use OS X integration functions @<:@default=yes, if available@:>@]),
1741 if test $withval = no
1743 want_osx_integration=no
1745 want_osx_integration=yes
1748 want_osx_integration=yes
1750 if test "x$want_osx_integration" = "xno"; then
1754 AC_WIRESHARK_OSX_INTEGRATION_CHECK
1758 AC_SUBST(wireshark_bin)
1759 AC_SUBST(wireshark_man)
1760 AM_CONDITIONAL(HAVE_Qt, test "$have_qt" = "yes")
1761 AM_CONDITIONAL(HAVE_GTK, test "$have_gtk" = "yes")
1762 AC_SUBST(OSX_APP_FLAGS)
1763 AC_SUBST(OSX_DMG_FLAGS)
1765 # Enable/disable tshark
1766 AC_ARG_ENABLE(tshark,
1767 AC_HELP_STRING( [--enable-tshark],
1768 [build TShark @<:@default=yes@:>@]),
1769 tshark=$enableval,enable_tshark=yes)
1771 if test "x$enable_tshark" = "xyes" ; then
1772 tshark_bin="tshark\$(EXEEXT)"
1773 tshark_man="tshark.1"
1774 wiresharkfilter_man="wireshark-filter.4"
1779 AC_SUBST(tshark_bin)
1780 AC_SUBST(tshark_man)
1782 # Enable/disable tfshark
1783 AC_ARG_ENABLE(tfshark,
1784 AC_HELP_STRING( [--enable-tfshark],
1785 [build TFShark @<:@default=no@:>@]),
1786 tfshark=$enableval,enable_tfshark=no)
1788 if test "x$enable_tfshark" = "xyes" ; then
1789 tfshark_bin="tfshark\$(EXEEXT)"
1790 tfshark_man="tfshark.1"
1791 wiresharkfilter_man="wireshark-filter.4"
1796 AC_SUBST(tfshark_bin)
1797 AC_SUBST(tfshark_man)
1799 # Enable/disable editcap
1801 AC_ARG_ENABLE(editcap,
1802 AC_HELP_STRING( [--enable-editcap],
1803 [build editcap @<:@default=yes@:>@]),
1804 enable_editcap=$enableval,enable_editcap=yes)
1806 if test "x$enable_editcap" = "xyes" ; then
1807 editcap_bin="editcap\$(EXEEXT)"
1808 editcap_man="editcap.1"
1813 AC_SUBST(editcap_bin)
1814 AC_SUBST(editcap_man)
1816 # Enable/disable echld
1818 AC_ARG_ENABLE(echld,
1819 AC_HELP_STRING( [--enable-echld],
1821 have_echld=$enableval,have_echld=no)
1823 AM_CONDITIONAL(HAVE_ECHLD, test "x$have_echld" = "xyes")
1824 if test "x$have_echld" = "xyes"
1826 AC_DEFINE(HAVE_ECHLD, 1, [Define if echld is enabled])
1827 echld_test_bin="echld_test\$(EXEEXT)"
1834 AC_SUBST(echld_test_bin)
1837 # Enabling/disabling of dumpcap is done later (after we know if we have PCAP
1840 # Enable/disable capinfos
1842 AC_ARG_ENABLE(capinfos,
1843 AC_HELP_STRING( [--enable-capinfos],
1844 [build capinfos @<:@default=yes@:>@]),
1845 enable_capinfos=$enableval,enable_capinfos=yes)
1847 if test "x$enable_capinfos" = "xyes" ; then
1848 capinfos_bin="capinfos\$(EXEEXT)"
1849 capinfos_man="capinfos.1"
1854 AC_SUBST(capinfos_bin)
1855 AC_SUBST(capinfos_man)
1857 # Enable/disable captype
1859 AC_ARG_ENABLE(captype,
1860 AC_HELP_STRING( [--enable-captype],
1861 [build captype @<:@default=yes@:>@]),
1862 enable_captype=$enableval,enable_captype=yes)
1864 if test "x$enable_captype" = "xyes" ; then
1865 captype_bin="captype\$(EXEEXT)"
1866 captype_man="captype.1"
1871 AC_SUBST(captype_bin)
1872 AC_SUBST(captype_man)
1874 # Enable/disable mergecap
1876 AC_ARG_ENABLE(mergecap,
1877 AC_HELP_STRING( [--enable-mergecap],
1878 [build mergecap @<:@default=yes@:>@]),
1879 enable_mergecap=$enableval,enable_mergecap=yes)
1881 if test "x$enable_mergecap" = "xyes" ; then
1882 mergecap_bin="mergecap\$(EXEEXT)"
1883 mergecap_man="mergecap.1"
1888 AC_SUBST(mergecap_bin)
1889 AC_SUBST(mergecap_man)
1891 # Enable/disable reordercap
1893 AC_ARG_ENABLE(reordercap,
1894 AC_HELP_STRING( [--enable-reordercap],
1895 [build reordercap @<:@default=yes@:>@]),
1896 enable_reordercap=$enableval,enable_reordercap=yes)
1898 if test "x$enable_reordercap" = "xyes" ; then
1899 reordercap_bin="reordercap\$(EXEEXT)"
1900 reordercap_man="reordercap.1"
1905 AC_SUBST(reordercap_bin)
1906 AC_SUBST(reordercap_man)
1908 # Enable/disable text2pcap
1910 AC_ARG_ENABLE(text2pcap,
1911 AC_HELP_STRING( [--enable-text2pcap],
1912 [build text2pcap @<:@default=yes@:>@]),
1913 text2pcap=$enableval,enable_text2pcap=yes)
1915 if test "x$enable_text2pcap" = "xyes" ; then
1916 text2pcap_bin="text2pcap\$(EXEEXT)"
1917 text2pcap_man="text2pcap.1"
1922 AC_SUBST(text2pcap_bin)
1923 AC_SUBST(text2pcap_man)
1925 # Enable/disable dftest
1927 AC_ARG_ENABLE(dftest,
1928 AC_HELP_STRING( [--enable-dftest],
1929 [build dftest @<:@default=yes@:>@]),
1930 enable_dftest=$enableval,enable_dftest=yes)
1932 if test "x$enable_dftest" = "xyes" ; then
1933 dftest_bin="dftest\$(EXEEXT)"
1934 dftest_man="dftest.1"
1939 AC_SUBST(dftest_bin)
1940 AC_SUBST(dftest_man)
1942 # Enable/disable randpkt
1944 AC_ARG_ENABLE(randpkt,
1945 AC_HELP_STRING( [--enable-randpkt],
1946 [build randpkt @<:@default=yes@:>@]),
1947 enable_randpkt=$enableval,enable_randpkt=yes)
1949 if test "x$enable_randpkt" = "xyes" ; then
1950 randpkt_bin="randpkt\$(EXEEXT)"
1951 randpkt_man="randpkt.1"
1956 AC_SUBST(randpkt_bin)
1957 AC_SUBST(randpkt_man)
1959 AC_SUBST(wiresharkfilter_man)
1961 dnl Checks for "gethostbyname()" - and "-lnsl", if we need it to get
1962 dnl "gethostbyname()".
1963 AC_WIRESHARK_GETHOSTBY_LIB_CHECK
1965 dnl Checks for "connect()", used as a proxy for "socket()" - and
1966 dnl "-lsocket", if we need it to get "connect()".
1967 AC_WIRESHARK_SOCKET_LIB_CHECK
1970 AC_MSG_CHECKING(whether to use libpcap for packet capture)
1973 AC_HELP_STRING( [--with-pcap@<:@=DIR@:>@],
1974 [use libpcap for packet capturing @<:@default=yes@:>@]),
1976 if test $withval = no
1979 elif test $withval = yes
1990 if test "x$want_pcap" = "xno" ; then
1994 AC_WIRESHARK_PCAP_CHECK
1998 dnl Check for airpcap
1999 AC_MSG_CHECKING(whether to include airpcap support)
2000 AC_ARG_ENABLE(airpcap,
2001 AC_HELP_STRING( [--enable-airpcap],
2002 [use AirPcap in Wireshark @<:@default=yes@:>@]),
2003 enable_airpcap=$enableval, enable_airpcap=yes)
2005 if test x$enable_airpcap = xyes; then
2006 if test "x$want_pcap" = "xno" ; then
2008 AC_MSG_RESULT(pcap not available - disabling airpcap)
2011 AC_DEFINE(HAVE_AIRPCAP, 1, [Enable AirPcap])
2019 AC_MSG_CHECKING(whether to build dumpcap)
2021 AC_ARG_ENABLE(dumpcap,
2022 AC_HELP_STRING( [--enable-dumpcap],
2023 [build dumpcap @<:@default=yes@:>@]),
2024 enable_dumpcap=$enableval,enable_dumpcap=yes)
2026 if test "x$enable_dumpcap" = "xyes" ; then
2027 if test "x$want_pcap" = "xno" ; then
2029 AC_MSG_RESULT(pcap not available - disabling dumpcap)
2037 if test "x$enable_dumpcap" = "xyes" ; then
2038 dumpcap_bin="dumpcap\$(EXEEXT)"
2039 dumpcap_man="dumpcap.1"
2044 AC_SUBST(dumpcap_bin)
2045 AC_SUBST(dumpcap_man)
2047 # Enable/disable rawshark
2050 AC_MSG_CHECKING(whether to build rawshark)
2052 AC_ARG_ENABLE(rawshark,
2053 AC_HELP_STRING( [--enable-rawshark],
2054 [build rawshark @<:@default=yes@:>@]),
2055 rawshark=$enableval,enable_rawshark=yes)
2057 if test "x$enable_rawshark" = "xyes" ; then
2058 if test "x$want_pcap" = "xno" ; then
2060 AC_MSG_RESULT(pcap not available - disabling rawshark)
2068 if test "x$enable_rawshark" = "xyes" ; then
2069 rawshark_bin="rawshark\$(EXEEXT)"
2070 rawshark_man="rawshark.1"
2075 AC_SUBST(rawshark_bin)
2076 AC_SUBST(rawshark_man)
2078 dnl Use pcap-ng by default
2079 AC_ARG_ENABLE(pcap-ng-default,
2080 AC_HELP_STRING( [--enable-pcap-ng-default],
2081 [use the pcap-ng file format by default instead of pcap @<:@default=yes@:>@]),
2082 enable_pcap_ng_default=$enableval,enable_pcap_ng_default=yes)
2083 if test x$enable_pcap_ng_default = xyes; then
2084 AC_DEFINE(PCAP_NG_DEFAULT, 1, [Support for pcap-ng])
2087 dnl pcap remote check
2088 AC_MSG_CHECKING(whether to use libpcap remote capturing feature)
2090 AC_ARG_WITH(pcap-remote,
2091 AC_HELP_STRING([--with-pcap-remote],
2092 [use libpcap remote capturing (requires libpcap)]),
2094 if test $withval = no
2098 want_pcap_remote=yes
2103 if test "x$want_pcap_remote" = "xno" -o "x$want_pcap" = "xno" ; then
2107 AC_WIRESHARK_PCAP_REMOTE_CHECK
2111 AC_MSG_CHECKING(whether to use zlib for gzip compression and decompression)
2114 AC_HELP_STRING([--with-zlib@<:@=DIR@:>@],
2115 [use zlib (located in directory DIR, if supplied) for gzip compression and decompression @<:@default=yes, if available@:>@]),
2117 if test "x$withval" = "xno"
2120 elif test "x$withval" = "xyes"
2129 # Use zlib if it's present, otherwise don't.
2131 want_zlib=ifavailable
2134 if test "x$want_zlib" = "xno" ; then
2138 AC_WIRESHARK_ZLIB_CHECK
2139 if test "x$want_zlib" = "xno" ; then
2140 AC_MSG_RESULT(zlib not found - disabling gzip compression and decompression)
2142 if test "x$ac_cv_func_inflatePrime" = "xno" ; then
2143 AC_MSG_RESULT(inflatePrime not found in zlib - disabling gzipped capture file support)
2149 AC_MSG_CHECKING(whether to use liblua for the Lua scripting plugin)
2152 AC_HELP_STRING( [--with-lua@<:@=DIR@:>@],
2153 [use liblua (located in directory DIR, if supplied) for the Lua scripting plugin @<:@default=yes, if available@:>@]),
2155 if test $withval = no
2158 elif test $withval = yes
2167 # Use liblua by default
2169 want_lua=ifavailable
2172 if test "x$want_lua" = "xno" ; then
2176 AC_WIRESHARK_LIBLUA_CHECK
2177 if test "x$want_lua" = "xno" ; then
2178 AC_MSG_RESULT(liblua not found - disabling support for the lua scripting plugin)
2181 AM_CONDITIONAL(HAVE_LIBLUA, test x$want_lua = xyes)
2185 AC_MSG_CHECKING(whether to use libportaudio for the rtp_player)
2187 AC_ARG_WITH(portaudio,
2188 AC_HELP_STRING( [--with-portaudio@<:@=DIR@:>@],
2189 [use libportaudio (located in directory DIR, if supplied) for the rtp_player @<:@default=yes, if available@:>@]),
2191 if test $withval = no
2194 elif test $withval = yes
2199 portaudio_dir=$withval
2203 # Use libportaudio by default
2205 want_portaudio=ifavailable
2208 if test "x$want_portaudio" = "xno" ; then
2212 AC_WIRESHARK_LIBPORTAUDIO_CHECK
2213 if test "x$want_portaudio" = "xno" ; then
2214 AC_MSG_RESULT(libportaudio not found - disabling support for the rtp_player)
2217 AM_CONDITIONAL(HAVE_LIBPORTAUDIO, test x$want_portaudio = xyes)
2222 AC_HELP_STRING( [--enable-ipv6],
2223 [use IPv6 name resolution, if available @<:@default=yes@:>@]),
2224 enable_ipv6=$enableval,enable_ipv6=yes)
2226 AC_MSG_CHECKING(whether to enable ipv6 name resolution if available)
2227 if test "x$enable_ipv6" = "xno" ; then
2231 AC_WIRESHARK_IPV6_STACK
2235 dnl Check if dumpcap should be installed with filesystem capabilities
2236 AC_PATH_PROG(SETCAP, setcap)
2237 AC_ARG_ENABLE(setcap-install,
2238 AC_HELP_STRING( [--enable-setcap-install],
2239 [install dumpcap with cap_net_admin and cap_net_raw @<:@default=no@:>@]),
2240 enable_setcap_install=$enableval,enable_setcap_install=no)
2242 AC_MSG_CHECKING(whether to install dumpcap with cap_net_admin and cap_net_raw capabilities)
2243 if test "x$enable_setcap_install" = "xno" ; then
2246 if test "x$SETCAP" = "x" ; then
2247 AC_MSG_RESULT(no. Setcap not found)
2248 elif test "x$enable_dumpcap" = "xno" ; then
2249 AC_MSG_ERROR(Setcap install works only with dumpcap but dumpcap is disabled)
2255 AM_CONDITIONAL(SETCAP_INSTALL, test x$enable_setcap_install = xyes)
2257 dnl Check if dumpcap should be installed setuid
2258 AC_ARG_ENABLE(setuid-install,
2259 AC_HELP_STRING( [--enable-setuid-install],
2260 [install dumpcap as setuid @<:@default=no@:>@]),
2261 enable_setuid_install=$enableval,enable_setuid_install=no)
2263 AC_MSG_CHECKING(whether to install dumpcap setuid)
2264 if test "x$enable_setuid_install" = "xno" ; then
2267 if test "x$enable_setcap_install" = "xyes" ; then
2268 enable_setuid_install=no
2269 AC_MSG_RESULT(no; using setcap instead)
2270 elif test "x$enable_dumpcap" = "xno" ; then
2271 AC_MSG_ERROR(Setuid install works only with dumpcap but dumpcap is disabled)
2277 AM_CONDITIONAL(SETUID_INSTALL, test x$enable_setuid_install = xyes)
2278 AC_CHECK_FUNCS(setresuid setresgid)
2280 dnl ...but our Network Operations group is named "no"!
2282 AC_ARG_WITH(dumpcap-group,
2283 AC_HELP_STRING( [--with-dumpcap-group=GROUP],
2284 [restrict dumpcap to GROUP]),
2286 if test "x$withval" = "xyes"; then
2287 AC_MSG_ERROR([No dumpcap group specified.])
2288 elif test "x$withval" != "xno"; then
2289 if test "x$enable_dumpcap" = "xno" ; then
2290 AC_MSG_ERROR(dumpcap group install works only with dumpcap but dumpcap is disabled)
2292 AC_MSG_RESULT($withval)
2293 DUMPCAP_GROUP="$withval"
2296 AC_SUBST(DUMPCAP_GROUP)
2297 AM_CONDITIONAL(HAVE_DUMPCAP_GROUP, test x$DUMPCAP_GROUP != x)
2299 dnl libcap (not libpcap) check
2301 AC_MSG_CHECKING(whether to use the libcap capabilities library)
2304 AC_HELP_STRING( [--with-libcap@<:@=DIR@:>@],
2305 [use libcap (located in directory DIR, if supplied) for POSIX.1e capabilities management @<:@default=yes, if present@:>@]),
2307 if test "x$withval" = "xno"; then
2309 elif test "x$withval" = "xyes"; then
2311 elif test -d "$withval"; then
2313 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2316 if test "x$with_libcap" = "xno" ; then
2320 AC_WIRESHARK_LIBCAP_CHECK
2322 AC_SUBST(LIBCAP_LIBS)
2324 dnl Checks for header files.
2325 dnl Some of these may not be needed: http://hacks.owlfolio.org/header-survey/
2326 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)
2327 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)
2328 AC_CHECK_HEADERS(netinet/in.h)
2329 AC_CHECK_HEADERS(arpa/inet.h arpa/nameser.h)
2333 AC_MSG_CHECKING(whether to use SSL library)
2336 AC_HELP_STRING( [--with-ssl@<:@=DIR@:>@],
2337 [use SSL crypto library (located in directory DIR, if supplied) @<:@default=no@:>@]),
2339 if test "x$withval" = "xno"; then
2341 elif test "x$withval" = "xyes"; then
2343 elif test -d "$withval"; then
2345 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2350 if test "x$want_ssl" = "xyes"; then
2352 AC_CHECK_LIB(crypto,EVP_md5,
2357 AC_MSG_ERROR([SSL crypto library was requested, but is not available])
2365 AC_MSG_CHECKING(whether to use Kerberos library)
2368 AC_HELP_STRING( [--with-krb5@<:@=DIR@:>@],
2369 [use Kerberos library (located in directory DIR, if supplied) to use in Kerberos dissection @<:@default=yes@:>@]),
2371 if test $withval = no
2374 elif test $withval = yes
2383 # Use Kerberos library if available, otherwise don't.
2385 want_krb5=ifavailable
2388 if test "x$want_krb5" = "xno" ; then
2392 AC_WIRESHARK_KRB5_CHECK
2398 AC_MSG_CHECKING(whether to use the c-ares library if available)
2401 AC_HELP_STRING( [--with-c-ares@<:@=DIR@:>@],
2402 [use c-ares (located in directory DIR, if supplied) - supersedes --with-adns @<:@default=yes, if present@:>@]),
2404 if test "x$withval" = "xno"; then
2406 elif test "x$withval" = "xyes"; then
2408 elif test -d "$withval"; then
2410 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2413 if test "x$want_c_ares" = "xno" ; then
2417 AC_WIRESHARK_C_ARES_CHECK
2419 AC_SUBST(C_ARES_LIBS)
2423 AC_MSG_CHECKING(whether to use the GNU ADNS library if available)
2426 AC_HELP_STRING( [--with-adns@<:@=DIR@:>@],
2427 [use GNU ADNS (located in directory DIR, if supplied) @<:@default=yes, if present@:>@]),
2429 if test "x$withval" = "xno"; then
2431 elif test "x$withval" = "xyes"; then
2433 elif test -d "$withval"; then
2435 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2438 if test "x$want_adns" = "xno" -o "x$have_good_c_ares" = "xyes" ; then
2442 AC_WIRESHARK_ADNS_CHECK
2448 AC_MSG_CHECKING(whether to use the GeoIP IP address mapping library if available)
2451 AC_HELP_STRING( [--with-geoip@<:@=DIR@:>@],
2452 [use GeoIP (located in directory DIR, if supplied) @<:@default=yes, if present@:>@]),
2454 if test "x$withval" = "xno"; then
2456 elif test "x$withval" = "xyes"; then
2458 elif test -d "$withval"; then
2460 AC_WIRESHARK_ADD_DASH_L(LDFLAGS, ${withval}/lib)
2463 if test "x$want_geoip" = "xno"; then
2467 AC_WIRESHARK_GEOIP_CHECK
2469 AC_SUBST(GEOIP_LIBS)
2471 # Warning: this Python scripting appears to be broken (does not work at all).
2472 # Running it also causes Valgrind to complain about all sorts of memory errors.
2473 # Suggestion: do not enable it unless you are working on fixing it.
2475 # An alternative might be https://code.google.com/p/pyreshark/
2477 dnl Python devel Check
2478 AC_MSG_CHECKING(whether to use the Python interpreter for scripting)
2480 AC_ARG_WITH(broken-python,
2481 AC_HELP_STRING( [--with-broken-python@<:@=DIR@:>@],
2482 [use the (BROKEN) Python interpreter (installed in DIR, if supplied) @<:@default=no@:>@]),
2484 pythondir='${libdir}/wireshark/python/${VERSION}'
2485 if test "x$withval" = "xno"
2488 elif test "x$withval" = "xyes"
2493 pythondir="$withval"
2496 # By default (user didn't explicitly enable Python), don't enable
2500 #pythondir='${libdir}/wireshark/python/${VERSION}'
2502 if test "x$want_python" = "xno" ; then
2506 AC_WIRESHARK_PYTHON_CHECK
2508 AM_CONDITIONAL(HAVE_LIBPY, test x$want_python != xno)
2512 # Define WS_MSVC_NORETURN appropriately for declarations of routines that
2513 # never return (just like Charlie on the MTA).
2515 # Note that MSVC++ expects __declspec(noreturn) to precede the function
2516 # name and GCC, as far as I know, expects __attribute__((noreturn)) to
2517 # follow the function name, so we need two different flavors of
2520 AC_DEFINE(WS_MSVC_NORETURN,, [Define as the string to precede declarations of routines that never return])
2522 dnl Checks for typedefs, structures, and compiler characteristics.
2525 # Check how we can get the time zone abbreviation
2526 AC_WIRESHARK_TIMEZONE_ABBREV
2528 # We need to know whether "struct stat" has an "st_flags" member
2529 # for file_user_immutable().
2531 AC_WIRESHARK_STRUCT_ST_FLAGS
2533 # We need to know whether "struct sockaddr" has an "sa_len" member
2534 # for get_interface_list().
2536 AC_WIRESHARK_STRUCT_SA_LEN
2538 # We must know our byte order
2541 # Checks whether "-traditional" is needed when using "ioctl".
2542 # XXX - do we need this?
2543 AC_PROG_GCC_TRADITIONAL
2546 AC_CHECK_FUNC(getopt,
2548 AC_DEFINE(HAVE_GETOPT, 1, [Define to 1 if you have the getopt function.])
2550 GETOPT_LO="wsgetopt.lo"
2552 if test "$ac_cv_func_getopt" = no ; then
2553 GETOPT_LO="wsgetopt.lo"
2555 AM_CONDITIONAL(NEED_GETOPT_LO, test "x$ac_cv_func_getopt" = "xno")
2558 AC_CHECK_FUNC(strncasecmp, STRNCASECMP_LO="",
2559 STRNCASECMP_LO="strncasecmp.lo")
2560 if test "$ac_cv_func_strncasecmp" = no ; then
2561 STRNCASECMP_LO="strncasecmp.lo"
2563 AM_CONDITIONAL(NEED_STRNCASECMP_LO, test "x$ac_cv_func_strncasecmp" = "xno")
2564 AC_SUBST(STRNCASECMP_LO)
2566 AC_CHECK_FUNCS(mkstemp mkdtemp)
2568 AC_SEARCH_LIBS(inet_aton, [socket nsl], have_inet_aton=yes,
2570 if test "$have_inet_aton" = no; then
2571 INET_ATON_LO="inet_aton.lo"
2572 AC_DEFINE(HAVE_INET_ATON_H, 0, [Define unless inet/aton.h needs to be included])
2576 AM_CONDITIONAL(NEED_INET_ATON_LO, test "x$have_inet_aton" = "xno")
2577 AC_SUBST(INET_ATON_LO)
2579 AC_SEARCH_LIBS(inet_pton, [socket nsl], [
2580 dnl check for pre-BIND82 inet_pton() bug.
2581 AC_MSG_CHECKING(for broken inet_pton)
2582 AC_TRY_RUN([#include <sys/types.h>
2583 #include <sys/socket.h>
2584 #include <netinet/in.h>
2585 #include <arpa/inet.h>
2590 /* this should return 0 (error) */
2591 return inet_pton(AF_INET6, "0:1:2:3:4:5:6:7:", buf);
2595 }], [AC_MSG_RESULT(ok);
2596 have_inet_pton=yes], [AC_MSG_RESULT(broken);
2597 have_inet_pton=no], [AC_MSG_RESULT(cross compiling, assume it is broken);
2598 have_inet_pton=no])],
2600 if test "$have_inet_pton" = no; then
2601 INET_PTON_LO="inet_pton.lo"
2605 AM_CONDITIONAL(NEED_INET_PTON_LO, test "x$have_inet_pton" = "xno")
2606 AC_SUBST(INET_PTON_LO)
2608 AC_SEARCH_LIBS(inet_ntop, [socket nsl], [
2609 AC_MSG_CHECKING([for inet_ntop prototype])
2610 AC_TRY_COMPILE([#include <stdio.h>
2611 #include <sys/types.h>
2612 #include <sys/socket.h>
2613 #include <netinet/in.h>
2614 #include <arpa/inet.h>
2616 extern const char *inet_ntop(int, const void *, char *, size_t);],, [
2618 AC_DEFINE(HAVE_INET_NTOP_PROTO, 1,
2619 [Define if inet_ntop() prototype exists])], [
2620 AC_TRY_COMPILE([#include <stdio.h>
2621 #include <sys/types.h>
2622 #include <sys/socket.h>
2623 #include <netinet/in.h>
2624 #include <arpa/inet.h>
2626 extern const char *inet_ntop(int, const void *, char *, socklen_t);],, [
2628 AC_DEFINE(HAVE_INET_NTOP_PROTO, 1,
2629 [Define if inet_ntop() prototype exists])], [
2630 AC_MSG_RESULT(no)])])
2632 INET_NTOP_LO="inet_ntop.lo"
2633 AC_DEFINE(NEED_INET_V6DEFS_H, 1,
2634 [Define if inet/v6defs.h needs to be included])])
2635 AM_CONDITIONAL(NEED_INET_NTOP_LO, test "x$INET_NTOP_LO" != "x")
2636 AC_SUBST(INET_NTOP_LO)
2638 AC_CHECK_FUNC(strptime, STRPTIME_LO="",
2639 [STRPTIME_LO="strptime.lo"
2640 AC_DEFINE(NEED_STRPTIME_H, 1, [Define if strptime.h needs to be included])
2642 if test "$ac_cv_func_strptime" = no ; then
2643 STRPTIME_LO="strptime.lo"
2645 AC_SUBST(STRPTIME_C)
2646 AM_CONDITIONAL(NEED_STRPTIME_LO, test "x$ac_cv_func_strptime" = "no")
2647 AC_SUBST(STRPTIME_LO)
2649 AC_CHECK_FUNCS(getprotobynumber gethostbyname2)
2650 AC_CHECK_FUNCS(issetugid)
2651 AC_CHECK_FUNCS(mmap mprotect sysconf)
2653 dnl blank for now, but will be used in future
2654 AC_SUBST(wireshark_SUBDIRS)
2656 # Check Bluetooth SBC codec for RTP Player
2657 # git://git.kernel.org/pub/scm/bluetooth/sbc.git
2658 PKG_CHECK_MODULES(SBC, sbc >= 1.0, [have_sbc=yes], [have_sbc=no])
2659 if (test "${have_sbc}" = "yes"); then
2660 AC_DEFINE(HAVE_SBC, 1, [Define to support playing SBC by standalone BlueZ SBC library])
2661 CFLAGS="$CFLAGS $(pkg-config sbc --cflags)"
2662 LIBS="$LIBS $(pkg-config sbc --libs)"
2666 dnl check whether plugins should be enabled and, if they should be,
2667 dnl check for plugins directory - stolen from Amanda's configure.ac
2669 dnl we don't wish to expand ${libdir} yet
2670 plugindir='${libdir}/wireshark/plugins/${VERSION}'
2671 AC_ARG_WITH(plugins,
2672 AC_HELP_STRING( [--with-plugins@<:@=DIR@:>@],
2673 [support plugins (installed in DIR, if supplied) @<:@default=yes, if possible@:>@]),
2675 if test "x$withval" = "xno"; then
2677 elif test "x$have_plugins" = "xno"; then
2678 AC_MSG_ERROR([GLib on this platform doesn't support loadable modules, so you can't enable plugins.])
2679 elif test "x$withval" != "xyes"; then
2680 plugindir="$withval"
2683 AM_CONDITIONAL(HAVE_PLUGINS, test "x$have_plugins" = "xyes")
2684 if test x$have_plugins = xyes
2686 AC_DEFINE(HAVE_PLUGINS, 1, [Define if plugins are enabled])
2689 CPPFLAGS="$CPPFLAGS '-DPLUGIN_INSTALL_DIR=\"\$(plugindir)\"'"
2692 # The plugin dissectors reside in ./plugins/PROTO/
2695 AC_SUBST(PLUGIN_LIBS)
2698 # Check if (emem) memory allocations must be 8-byte aligned.
2699 # I haven't been able to write C code that reliably makes that determination
2700 # (different versions of GCC with or without optimization give different
2701 # results) so just assume everything except (32-bit) x86 needs 8-byte
2702 # alignment (64-bit platforms either require 8-byte alignment for pointers
2703 # and 64-bit integral data types or may get better performance from that;
2704 # 64-bit x86 will get 8-byte alignment from G_MEM_ALIGN anyway. 32-bit
2705 # platforms would only require it, or get better performance from it,
2706 # for 64-bit floating-point values.).
2708 AC_MSG_CHECKING(whether we need memory allocations to be 8-byte aligned)
2710 i386|i486|i586|i686)
2715 AC_DEFINE(NEED_8_BYTE_ALIGNMENT, 1, [Define if we need memory allocations to be 8-byte aligned])
2719 # Gather only the "--with*" arguments and also a list of --with arguments for rpmbuild
2720 for f in $CONFIG_ARGS
2724 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2725 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with gtk2"
2728 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2729 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --without gtk2"
2732 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2733 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with gtk3"
2736 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2737 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --without gtk3"
2740 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2741 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --with qt"
2744 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2745 RPMBUILD_WITH_ARGS="$RPMBUILD_WITH_ARGS --without qt"
2748 CONFIG_WITH_ARGS="$CONFIG_WITH_ARGS $f"
2753 AC_SUBST(CONFIG_WITH_ARGS)
2754 AC_SUBST(RPMBUILD_WITH_ARGS)
2758 # Yes, AM_PROG_LIBTOOL is redundant with newer version(s) of some tool(s)
2759 # (autoconf? automake? libtool?) - with the newer version(s), it's
2760 # just an alias for AC_PROG_LIBTOOL, which is called earlier.
2762 # With older version(s) of those tool(s), however, it's not just an
2763 # alias, and the configure scripts don't work without it.
2766 AC_SUBST(LIBTOOL_DEPS)
2768 AM_CONDITIONAL(ENABLE_STATIC, test x$enable_static = xyes)
2769 if test x$enable_static = xyes -a x$have_plugins = xyes
2771 AC_DEFINE(ENABLE_STATIC, 1, [Link plugins statically into Wireshark])
2773 AC_SUBST(ENABLE_STATIC)
2775 dnl Save the cacheable configure results to config.cache before recursing
2778 sinclude(plugins/Custom.m4) dnl
2779 ifdef(_CUSTOM_AC_OUTPUT_,, define(_CUSTOM_AC_OUTPUT_, )) dnl
2781 sinclude(asn1/Custom.m4) dnl
2782 ifdef(_CUSTOM_ASN1_AC_OUTPUT_,, define(_CUSTOM_ASN1_AC_OUTPUT_, )) dnl
2784 AC_CONFIG_HEADERS(config.h)
2789 _CUSTOM_ASN1_AC_OUTPUT_
2790 asn1/acp133/Makefile
2792 asn1/ansi_map/Makefile
2793 asn1/ansi_tcap/Makefile
2794 asn1/atn-cm/Makefile
2795 asn1/atn-cpdlc/Makefile
2796 asn1/atn-ulcs/Makefile
2800 asn1/charging_ase/Makefile
2805 asn1/credssp/Makefile
2813 asn1/gprscdr/Makefile
2814 asn1/gsm_map/Makefile
2823 asn1/h450-ros/Makefile
2826 asn1/HI2Operations/Makefile
2831 asn1/isdn-sup/Makefile
2832 asn1/kerberos/Makefile
2835 asn1/logotypecertextn/Makefile
2839 asn1/lte-rrc/Makefile
2842 asn1/mpeg-audio/Makefile
2843 asn1/mpeg-pes/Makefile
2845 asn1/ns_cert_exts/Makefile
2846 asn1/novell_pkis/Makefile
2854 asn1/pkcs12/Makefile
2855 asn1/pkinit/Makefile
2856 asn1/pkixac/Makefile
2857 asn1/pkix1explicit/Makefile
2858 asn1/pkix1implicit/Makefile
2859 asn1/pkixproxy/Makefile
2860 asn1/pkixqualified/Makefile
2861 asn1/pkixtsp/Makefile
2864 asn1/q932-ros/Makefile
2875 asn1/sbc-ap/Makefile
2878 asn1/spnego/Makefile
2886 asn1/wlancertextn/Makefile
2888 asn1/x509af/Makefile
2889 asn1/x509ce/Makefile
2890 asn1/x509if/Makefile
2891 asn1/x509sat/Makefile
2898 epan/dfilter/Makefile
2899 epan/dissectors/Makefile
2900 epan/dissectors/dcerpc/Makefile
2901 epan/dissectors/pidl/Makefile
2902 epan/ftypes/Makefile
2916 packaging/macosx/Info.plist
2917 packaging/macosx/Makefile
2918 packaging/macosx/osx-dmg.sh
2919 packaging/macosx/Wireshark_package.pmdoc/index.xml
2920 packaging/nsis/Makefile
2921 packaging/rpm/Makefile
2922 packaging/rpm/SPECS/Makefile
2923 packaging/rpm/SPECS/wireshark.spec
2924 packaging/svr4/Makefile
2925 packaging/svr4/checkinstall
2926 packaging/svr4/pkginfo
2928 plugins/docsis/Makefile
2929 plugins/ethercat/Makefile
2930 plugins/gryphon/Makefile
2931 plugins/irda/Makefile
2932 plugins/m2m/Makefile
2933 plugins/mate/Makefile
2934 plugins/opcua/Makefile
2935 plugins/profinet/Makefile
2936 plugins/stats_tree/Makefile
2937 plugins/unistim/Makefile
2938 plugins/wimax/Makefile
2939 plugins/wimaxasncp/Makefile
2940 plugins/wimaxmacphy/Makefile
2942 tools/lemon/Makefile
2945 wsutil/nghttp2/Makefile
2949 dnl AC_CONFIG_FILES([tools/setuid-root.pl], [chmod +x tools/setuid-root.pl])
2954 if test "x$have_gtk" = "xyes"; then
2955 if test "x$with_gtk3" = "xyes"; then
2956 gtk_lib_message=" (with GTK+ 3"
2958 gtk_lib_message=" (with GTK+ 2"
2960 if test "x$have_ige_mac" = "xyes"; then
2961 gtk_lib_message="$gtk_lib_message and Mac OS X integration)"
2963 gtk_lib_message="$gtk_lib_message)"
2967 if test "x$have_qt" = "xyes" ; then
2968 enable_qtshark="yes"
2973 if test "x$enable_setcap_install" = "xyes" ; then
2974 setcap_message="yes"
2979 if test "x$enable_setuid_install" = "xyes" ; then
2980 setuid_message="yes"
2985 if test "x$DUMPCAP_GROUP" = "x" ; then
2986 dumpcap_group_message="(none)"
2988 dumpcap_group_message="$DUMPCAP_GROUP"
2991 if test "x$want_zlib" = "xno" ; then
2997 if test "x$want_lua" = "xyes" ; then
3003 if test "x$want_python" = "xno"; then
3006 python_message="yes"
3009 if test "x$want_portaudio" = "xyes" ; then
3010 portaudio_message="yes"
3012 portaudio_message="no"
3015 if test "x$want_ssl" = "xno" ; then
3021 if test "x$want_krb5" = "xno" ; then
3024 krb5_message="yes ($ac_krb5_version)"
3027 if test "x$have_good_c_ares" = "xyes" ; then
3028 c_ares_message="yes"
3033 if test "x$have_good_adns" = "xyes" ; then
3036 if test "x$have_good_c_ares" = "xyes" ; then
3037 adns_message="no (using c-ares instead)"
3043 if test "x$have_good_libcap" = "xyes" ; then
3044 libcap_message="yes"
3049 if test "x$have_good_geoip" = "xyes" ; then
3056 echo "The Wireshark package has been configured with the following options."
3057 echo " Build wireshark (Gtk+) : $have_gtk""$gtk_lib_message"
3058 echo " Build wireshark-qt : $enable_qtshark"
3059 echo " Build tshark : $enable_tshark"
3060 echo " Build tfshark : $enable_tfshark"
3061 echo " Build capinfos : $enable_capinfos"
3062 echo " Build captype : $enable_captype"
3063 echo " Build editcap : $enable_editcap"
3064 echo " Build dumpcap : $enable_dumpcap"
3065 echo " Build mergecap : $enable_mergecap"
3066 echo " Build reordercap : $enable_reordercap"
3067 echo " Build text2pcap : $enable_text2pcap"
3068 echo " Build randpkt : $enable_randpkt"
3069 echo " Build dftest : $enable_dftest"
3070 echo " Build rawshark : $enable_rawshark"
3071 echo " Build echld : $have_echld"
3073 echo " Save files as pcap-ng by default : $enable_pcap_ng_default"
3074 echo " Install dumpcap with capabilities : $setcap_message"
3075 echo " Install dumpcap setuid : $setuid_message"
3076 echo " Use dumpcap group : $dumpcap_group_message"
3077 echo " Use plugins : $have_plugins"
3078 echo " Use Lua library : $lua_message"
3079 echo " Use Python binding : $python_message"
3080 echo " Build rtp_player : $portaudio_message"
3081 echo " Build profile binaries : $enable_profile_build"
3082 echo " Use pcap library : $want_pcap"
3083 echo " Use zlib library : $zlib_message"
3084 echo " Use kerberos library : $krb5_message"
3085 echo " Use c-ares library : $c_ares_message"
3086 echo " Use GNU ADNS library : $adns_message"
3087 echo " Use SMI MIB library : $libsmi_message"
3088 echo " Use GNU crypto library : $gcrypt_message"
3089 echo " Use SSL crypto library : $ssl_message"
3090 echo " Use IPv6 name resolution : $enable_ipv6"
3091 echo " Use gnutls library : $tls_message"
3092 echo " Use POSIX capabilities library : $libcap_message"
3093 echo " Use GeoIP library : $geoip_message"
3094 echo " Use nl library : $libnl_message"
3095 echo " Use SBC codec library : $have_sbc"