Use pkg-config if a zlib.pc file is available.
Remove the now redundant AC_TRY_LINK_FUNC test (there are no linker flags
for GTK+ here).
Change-Id: I7de744749eba7231ae0097b975144b76ffcf1bdb
Reviewed-on: https://code.wireshark.org/review/14263
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Use PKG_WIRESHARK_CHECK_SYSTEM_MODULES for consistency with other
system dependencies.
Give slightly more informative configure messages other than multiple
'checking for LUA'.
Check for headers using pkg-config to avoid undefined symbols in
config.h.
Change-Id: I8d3df9ccf6f718d7d055da4f713af60d46d89e33
Reviewed-on: https://code.wireshark.org/review/14173
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
GNU coding standards recommend against it and automake is designed
around it.
This allows overriding the global build flags using AM_CFLAGS, etc.,
or per object flags, something that is difficult or impossible currently
because of automake precedence rules.
Change-Id: I3f1ea12e560af5a46b2f04b342b1882bbf123f12
Reviewed-on: https://code.wireshark.org/review/13455
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
This reverts commit 67c5849744.
It's not *guaranteed* to be there in *every* UN*X, but it's in at least
the Single UNIX Specification V3, as well as in shells commonly used in
non-UNIX UN*Xes :-), so it'll be there in the UN*Xes we'll be run on.
Change-Id: I541f7607055a24d6933d10244f85eea60052a3d8
Reviewed-on: https://code.wireshark.org/review/13325
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Fixes false "-Wvariadic-macros" because "-Wpedantic" came after
"-Wno-variadic-macros". While at it, avoid (unintentionally?) adding
-fPIE to all C++ programs (via CXXFLAGS).
Availability of flags is checked by appending a flag (in case the user
has something like CFLAGS=-Wno-error).
This removes a -fPIE check for CXXFLAGS and removes 5
-Woverlength-strings and 9 -Wvariadic-macros warnings from make with
Clang 3.7.0. configure and compile times were equal. (A diff between the
configure outputs showed no other changes.)
This reverts commit cf0d762d73 and applies
a different approach.
Ping-Bug: 10791
Change-Id: Ic7b4137e2d98b06bc7625091be9bc7dd69182586
Reviewed-on: https://code.wireshark.org/review/12175
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
If we didn't find a C++ compiler, we can't check whether the
non-existent C++ compiler supports a flag, so don't do so.
Change-Id: I3d3232acae2dfc40deb0b01f35656ef53c4f1640
Reviewed-on: https://code.wireshark.org/review/12132
Reviewed-by: Guy Harris <guy@alum.mit.edu>
It's an ancient obsolete option with a confusing name.
Change-Id: Ib10330cf859cdea18fed2077c6539e56350ef380
Reviewed-on: https://code.wireshark.org/review/11967
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Quick fix for OSX build, AS_ECHO_N is not available for that autoconf
version.
Change-Id: I24a93622d15388ef84c0f099d1209052bb35856d
Reviewed-on: https://code.wireshark.org/review/12013
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Use -isystem instead of -I for external headers with GCC/clang to squash
all the noise.
cmake already uses -isystem by default for supported platforms/compilers.
Change-Id: Ia6c9d1eb9b894fda6f48c531094d792e16fd39fc
Reviewed-on: https://code.wireshark.org/review/11947
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
sshdump is an extcap module that allows dumping from a remote host using an ssh connection.
It goes with the existing extcap plugin interface.
Change-Id: I8987614fdd817b8173a50130812bc643a4833bca
Reviewed-on: https://code.wireshark.org/review/11402
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Note the "initial". This is woefully incomplete. See the "to do" lists
below and in the code.
This differs a bit from the GTK+ version in that you specify one or more
streams to be decoded.
Instead of showing waveforms in individual widgets, add them all to a
single QCustomPlot. This conserves screen real estate and lets us more
easily take advantage of the QCP API. It also looks better IMHO.
Change a bunch of checks for QtMultimediaWidgets to QtMultimedia. We
probably won't use the widgets until we make 5.0 our minimum Qt
version and plain old QtMultimedia lets us support Qt 4 more easily
(in theory at least).
Add resampling code from libspeex. I initially used this to resample
each packet to match the preferred rate of our output device, but this
resulted in poorer audio quality than expected. Leave it in and use to
create visual samples for QCP and to match rates any time the rate
changes. The latter is currently untested.
Add some debugging macros.
Note that both the RTP player and RTP analysis dialogs decode audio data
using different code.
Note that voip_calls_packet and voip_calls_init_tap appear to be dead
code.
To do:
- Add silence frames where needed.
- Implement the jitter buffer.
- Implement the playback timing controls.
- Tapping / scanning streams might be too slow.
Change-Id: I20dd3b66d3df53c9b1f3501262dc01458849f6b4
Bug: 9007
Reviewed-on: https://code.wireshark.org/review/10458
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Bug: 10791
Change-Id: I58c35c757039e69111a39100f5ccb306e098d591
Reviewed-on: https://code.wireshark.org/review/10519
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Reviewed-by: Michael Mann <mmann78@netscape.net>
On many systems, Qt5 requires that code compiled against it must compile
with -fPIC. The preferred place to determine whether this is necessary
is at configure time. This change adds the auto-tool code to make that
happen and removes the hack put in place as an interim solution.
Bug: 11230
Change-Id: I6e583c67bb67d168a30c0af05a8cd0a070522ba0
Reviewed-on: https://code.wireshark.org/review/10281
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
That's one of the mechanisms the autotools documentation suggests using
to handle generated header files.
Using it means that "make dist" will no longer try to build those files
(they're not part of the distribution - and they can't be, as the files
would be different for Qt 4 and Qt 5, and need to be generated by the
uic from the same version of Qt as the one against which Wireshark is
being built).
This means we don't need to try to find uic, moc, or rcc if we're not
building with Qt, so don't do so.
Change-Id: Id2aadb8289598b82e14e4ed402ff8cdc15fdef74
Reviewed-on: https://code.wireshark.org/review/9583
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
For example, Qt 4's uic produces .h files that don't compile with Qt 5,
as they use header #include paths that work with Qt 4's headers but not
Qt 5's headers.
Change-Id: I50c7bd15fca05475180a933a6c77955dc686c0c5
Reviewed-on: https://code.wireshark.org/review/9567
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
If you don't specify --with-qt or --without-qt, we build with Qt iff we
find it; we don't fail if we don't find it.
If you specify --with-qt, we build with Qt if we find it and fail if we
don't find it.
If you specify --without-qt, we don't look for Qt and don't build with
it.
This is all independent of --with-gtk2 or --with-gtk3.
Change-Id: I508d3281192bda9168fc46aba6011687c83ef818
Reviewed-on: https://code.wireshark.org/review/8861
Reviewed-by: Guy Harris <guy@alum.mit.edu>
First, search for packages with the version number without the period (bug
11219).
Second, don't look for Lua 5.3 because we don't work with it. If what we find
(without pkg-config's help) is Lua 5.3, disable Lua support (bug 10881).
Cmake support by Peter Wu (originally Ie73e5b53640f10432881a9671c0a605f7f027ed8):
Note the check for "lua<=5.2.99" instead of "lua<5.3" since cmake does not
support the latter syntax. Tested with lua5.2, lua5.1 and lua (5.3) installed.
Bug: 11219
Ping-Bug: 10881
Change-Id: I382d07ca00eafc6111cd4e9faa2b66f6b8f95b6e
Reviewed-on: https://code.wireshark.org/review/8783
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
The TOOL variant will automatically search for host prefixed scripts
(e.g. armv7a-unknown-linux-gnueabi-pcap-config) before falling back
to the default (i.e. pcap-config). This makes cross-compiling a bit
simpler.
Change-Id: Ia450839693b5550f798634a7e8b82c2a661b088c
Reviewed-on: https://code.wireshark.org/review/8481
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Without a major version number, it behaves as before, picking whatever
version it finds, and preferring Qt 5 to Qt 4. With a major version
number, it looks only for the version in question.
Bug: 10793
Change-Id: Idf6c2c61e84bb87f7b601d8f09c33f31b67bf46d
Reviewed-on: https://code.wireshark.org/review/8052
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Otherwise, just because a flag is appropriate for $CC, that doesn't
necessarily mean it's appropriate for $CFLAGS_FOR_BUILD.
(We don't use CFLAGS_FOR_BUILD for many things, so it's probably not
worth making a lot of effort to throw all the warning flags into it if
we're cross-compiling; we *do* throw them in for native compilation,
which is what most developers use and test with, so that should be
sufficient to let the warnings catch problems with the build tools we're
building.)
Change-Id: Iad9d611b4687e9e154f9871f741f3c8f3b307c88
Reviewed-on: https://code.wireshark.org/review/8026
Reviewed-by: Guy Harris <guy@alum.mit.edu>
It can be set if either 1) this is Windows (where we're assumed to be
using WinPcap, which includes calls to set the buffer size) or 2) we
have pcap_create() (in which case we also have pcap_set_buffer_size(),
at least in a normal libpcap release).
Use that rather than testing "defined(_WIN32) ||
defined(HAVE_PCAP_CREATE)"; that makes it a bit more obvious what's
being tested.
Change-Id: Id9f8455019d19206b04dd6820a748cb97ae5ad12
Reviewed-on: https://code.wireshark.org/review/7816
Reviewed-by: Guy Harris <guy@alum.mit.edu>
configure if we can't find any name resolver (autotools only).
This puts back the gethostbyname()/gethostbyname2() code removed in
I3348179626e97daaddfbc89e3ed21e39915e3de4 and
If59ce8a038776eadd6cd1794ed0e2dad8bf8a22c but as a last-resort option (only
if we don't have a better or more modern name resolver).
As suggested/requested by Guy in https://code.wireshark.org/review/#/c/7423/
Change-Id: I706dbbd65135f47c67d3d8d88a61ad7273914c47
Reviewed-on: https://code.wireshark.org/review/7447
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
AC_CHECK_FUNC() doesn't define HAVE_XXX but AC_CHECK_FUNCS() does. And
AC_CHECK_LIBS() certainly doesn't define HAVE_<function>.
Also remove some ancient comments.
Change-Id: I49d701bb96d3bd3c55c4beb99d532e397ec554ad
Reviewed-on: https://code.wireshark.org/review/7400
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
They've been deprecated for a very long time. Replace them with
getaddrinfo. Note that we might not want to do synchronous name
resolution at all.
Add HAVE_GETADDRINFO to the KfW win-mac.h collision list.
Change-Id: If59ce8a038776eadd6cd1794ed0e2dad8bf8a22c
Reviewed-on: https://code.wireshark.org/review/6958
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
First, it appears some packagers actually ship a pkg-config file for Lua.
Try to use it. (Unfortunately the package name varies so we have to try
several package names.)
If that fails, try to find Lua directly, accounting for the various naming
conventions we've seen.
Bug: 10475
Bug: 10572
Change-Id: I82e789c466a488dc12431cdd90c49b4c1052414a
Reviewed-on: https://code.wireshark.org/review/6756
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
WinPcap 3.0 introduced pcap_open(); it also introduced
pcap_findalldevs_ex() and pcap_createsrcstr(). If you're going to put
pcap_open() in libpcap, there's not much point to doing so but not also
putting pcap_findalldevs_ex() and pcap_createsrcstr() there.
(And, in the future, there'll be support for remote capturing with
pcap_create() and pcap_activate(), with no need for pcap_createsrcstr(),
and a replacement for pcap_findalldevs() and pcap_findalldevs_ex(),
which we'll also check for.)
So there's no need to check for pcap_findalldevs_ex() or
pcap_createsrcstr().
Change-Id: I9323aad20136684d05d1e909326792a2f1408887
Reviewed-on: https://code.wireshark.org/review/6311
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Add Telephony menu items for VoIP Calls and SIP Flows. Put VoIP Calls at
the top, since that seems to be the primary item.
Add configure-time checks for QtMultimediaWidgets in anticipation of
adding a VoIP playback dialog.
Add an icon for the playback button. (Yes, I've been avoiding
GNOME-level gratuitous icons so far but this is one of the rare
occiasions where it makes sense.)
Add a help link define for the VoIP calls dialog.
Change-Id: I5d0799685c598ad9af76fe9667f8ea7d14b66050
Reviewed-on: https://code.wireshark.org/review/5674
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
If we have pcap_set_tstamp_precision(), use it to request nanosecond
time stamp resolution *if* we're writing a pcap-ng file; any code that
reads those files and can't handle nanosecond time stamp resolution is
broken and needs to be fixed.
If we're writing a pcap file, don't ask for nanosecond resolution time
stamps, as that requires a different magic number for pcap files, and
not all code that reads pcap files can handle that. (Unlike pcap-ng,
where the ability to have non-microsecond time stamp resolution was
present from Day One, it's a relatively recent addition to pcap.) We
could add a command-line option/GUI option for that, like the option
recent versions of tcpdump have, if it matters.
Change-Id: I8fa464eb929feecb9a70be70712502c9f0cc5270
Reviewed-on: https://code.wireshark.org/review/4355
Reviewed-by: Guy Harris <guy@alum.mit.edu>
The line "Massachusetts Institute of Technology" now appears
across two lines in the header file.
Change-Id: I618b520d6c15f51180b47d93c75e29a6f43b868b
Reviewed-on: https://code.wireshark.org/review/3790
Reviewed-by: Evan Huus <eapache@gmail.com>
Petri-Dish: Evan Huus <eapache@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
That's what we do with nmake and CMake; this makes it uniform, so it's
easier to compare compiler commands.
Change-Id: Ice2c4bd796e921fa3089e8a45a32ad14d9b0e0a4
Reviewed-on: https://code.wireshark.org/review/3387
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Not all AC_WIRESHARK_LDFLAGS_CHECK flags are -Wl,{option} flags, so
don't check for that first. If we want to check for specific compilers
and linkers, we should do that, not for -Wl,{option} support.
Change-Id: Ib9581d4a1573a1ffa2493ce08e6d5845d2601352
Reviewed-on: https://code.wireshark.org/review/2755
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This caues a bunch of bogus "no"s to be printed when testing for
various compiler options when the compiler isn't GCC-like enough to
accept GCC-style -W, -f, and -m flags.
Change-Id: I16cf45729c61d166644cbddccfbaeb9b7770b045
Reviewed-on: https://code.wireshark.org/review/2365
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Adding -Qunused-arguments to CXXFLAGS causes the checks for -f and -m
flags not to fail with clang++, causing the configure script to warn
about -f flags supported by clang but not clang++ indicating that the
compilers are a mismatched pair.
The checks we do for flags should eliminate "unused" -f/-m flags,
suppressing the warnings that way.
Change-Id: I749d6f499a3d34300518cc0ba539f355377359af
Reviewed-on: https://code.wireshark.org/review/2362
Reviewed-by: Guy Harris <guy@alum.mit.edu>
As with -f flags, some compilers need -Werror to force the compiler to
fail when passed an unknown -m flag.
Also, if it's not a -W or -f or -m flag, don't forget to add it to
CFLAGS and/or CXXFLAGS.
And propagate a comment to the C++ flag testing.
Change-Id: I53e0e59b34b10b9477c60ddd4f2e047b3b8be77f
Reviewed-on: https://code.wireshark.org/review/2361
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Bereft of life, it rests in peace.
Change-Id: I8b9bc8c6cef0635d5526aa6b389aa33bc41fbc66
Reviewed-on: https://code.wireshark.org/review/2284
Reviewed-by: Guy Harris <guy@alum.mit.edu>
We test whether a given compiler supports a given -W flag, so we don't
need to separate them and check them only for particular compilers.
To make that even clearer, rename the --enable option from
--enable-extra-gcc-checks to --enable-extra-compiler-checks, and
document it as just "do additional -W checks", and rename the
WIRESHARK_EXTRA_GCC_ CMake variables to WIRESHARK_EXTRA_COMPILER_.
Sync up the lists of warning flags in CMake with the lists in autoconf.
Uncomment -Wdocumentation while we're at it. If it doesn't work *at
all*, comment it out until it's fixed, or, better yet, fix it; if it
still produces warnings, we just leave it among the "extra" flags.
Change-Id: I4042affdade612e4025e2881d08f1ca69d759626
Reviewed-on: https://code.wireshark.org/review/1226
Reviewed-by: Guy Harris <guy@alum.mit.edu>
At least one person didn't realize that it meant that you have to
specify --with-ssl when configuring, so try saying that a bit more
explicitly.
Change-Id: If15a9cfaeaf7d4aca2c570602fc09ff3ae489d35
Reviewed-on: https://code.wireshark.org/review/575
Reviewed-by: Guy Harris <guy@alum.mit.edu>
build 5658) (LLVM build 2336.11.00)" likes -Wmissing-prototypes but not
-Wmissing-declarations and G++ 4.8.2 likes -Wmissing-declarations but
not -Wmissing-prototypes, so check whether *either* of them requires
-Werror in order to be detected as NSFC++.
Fix a copy-and-pasteo while we're at it.
Don't treat a different willingness to accept
-Wmissing-{prototypes,declarations} as an indication that you have
mismatched C and C++ compilers.
svn path=/trunk/; revision=54468