Commit Graph

369 Commits

Author SHA1 Message Date
Gerald Combs 8576e1c103 Qt: Add stock icons.
The new icons are patterned after the existing capture icons. They could
probably benefit from some adjustments here and there.

Start moving toward icon names and a directory layout compliant with
freedesktop.org's Icon Naming Specification and Icon Theme
Specification. We aren't fully compliant and might never be but anyone
with exposure to FDO icon themes should at least know where everything
is.

Make Capture Start (x-capture-start) the first icon in the toolbar.

Define the Colorize Packets, Auto Scroll, and zoom icons even though the
Qt UI doesn't use them yet.

Leave the Capture Filter, Display Filter, Coloring Rules, Preferences,
and Help icons off for now. The GTK+ toolbar is overly cluttered and I'm
not sure they're necessary.

Try not to break ui/gtk/toolbar_icons.h.

Remove welcome.qrc. I initially added it in case we needed to overlay
the welcome screen with translucent .pngs but that never happened.

To do:

- Move the old GTK+ icons to their own directory.

- Find a better name for the "toolbar" directory. "stock"?

- Make the toolbar configurable.

Change-Id: Ie07592113d307b8db786aedace672312a870fe38
Reviewed-on: https://code.wireshark.org/review/4182
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-09-20 19:54:04 +00:00
AndersBroman 07b003a98f Remove obsolete dissectors.
Change-Id: Icd480491670de9d8495a95861b18a8a5cb9724b4
Reviewed-on: https://code.wireshark.org/review/4006
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-09-06 09:52:01 +00:00
Jeff Morriss 1a446079d1 Simplify ./configure logic for telling rpmbuild which GUI(s) we're building.
Rather than checking for all the "--with" arguments just use the "$have_xxx"
variables.

Don't allow rpmbuild's ./configure to decide to build a GUI just because it's
available: make it build only what was ./configure'd.

Change-Id: I68582b4c13da7b52d56591dce68ac426e9f607f1
Reviewed-on: https://code.wireshark.org/review/3958
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-09-02 16:34:00 +00:00
Gerald Combs b7fb1167e3 Qt → wireshark. GTK+ → wireshark-gtk.
Make sure the Qt UI is named "Wireshark" and its executable is named
"wireshark" or "wireshark.exe". Make sure the GTK+ UI is named
"Wireshark 1" or "Wireshark (GTK+)" depending on how much the target
audience is likely to care about UI toolkits. Make sure the GTK+
executable is named "wireshark-gtk" or "wireshark-gtk.exe".

It looks like moving to Qt 5.3 (g978faf3) broke the PortableApps
package. It's likely even more broken now.

Autotools out-of-tree builds also broke on Ubuntu 12.02 (automake
1.11.3) at some point. The first attempt to compile in ui/qt returns
"error: source_file.cpp: No such file or directory". The second attempt
works. Out-of-tree builds work fine on Ubuntu 14.04 (automake 1.14.1).

Tested:

- Nmake builds

- NSIS packaging

- CMake builds (Windows, OS X)

- Autotools build and distcheck

- RPM packaging

To do:

- Test Debian packaging

- Fix PortableApps

Change-Id: I66429870e05fd2d6fc901942477959ed6164fce2
Reviewed-on: https://code.wireshark.org/review/3919
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-09-02 15:39:17 +00:00
Roland Knall bed29af46d Extcap Capture Interface
Extcap is a plugin interface, which allows for the usage
 of external capture interfaces via pipes using a predefined
 configuration language which results in a graphical gui.

 This implementation seeks for a generic implementation,
 which results in a seamless integration with the current
 system, and does add all external interfaces as simple
 interfaces.

 Windows Note: Due to limitations with GTK and Windows,
 a gspawn-winXX-helper.exe, respective gspawn-winXX-helper-console.exe
 is needed, which is part of any GTK windows installation.

 The default installation directory from the build is an extcap
 subdirectory underneath the run directory. The folder used by
 extcap may be viewed in the folders tab of the about dialog.

 The default installation directory for extcap plugins with
 a pre-build or installer version of wireshark is the extcap
 subdirectory underneath the main wireshark directory.

 For more information see:

  http://youtu.be/Nn84T506SwU
  bug #9009

 Also take a look in doc/extcap_example.py for a Python-example
 and in extcap.pod for the arguments grammer.

 Todo:
   - Integrate with Qt - currently no GUI is generated, but
     the interfaces are still usable

Change-Id: I4f1239b2f1ebd8b2969f73af137915f5be1ce50f
Signed-off-by: Mike Ryan <mikeryan+wireshark@lacklustre.net>
Signed-off-by: Mike Kershaw <dragorn@kismetwireless.net>
Signed-off-by: Roland Knall <rknall@gmail.com>
Reviewed-on: https://code.wireshark.org/review/359
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-08-21 03:34:02 +00:00
Jeff Morriss 61b01c37a9 If the user explicitly requested gnutls or libgcrypt generate an error if they
are not found.

Accurately describe the default behavior: Wireshark will use the libraries if
they are available.

May help avoid problems like that described in:
https://ask.wireshark.org/questions/35600/not-able-to-configure-wireshark-with-gnutls

Change-Id: I5f0b2ce87cb7c6b337de93609f13d8027e662263
Reviewed-on: https://code.wireshark.org/review/3750
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-08-20 19:11:42 +00:00
Jeff Morriss 7ee2d6b697 Mark echld and tfshark as experimental in the ./configure help.
Move them to the end of the list of optional programs.
Make it clear that echld is not built by default.
Change capitalization of tshark and tfshark.

Change-Id: Ib702ed72eb2469968e06a16c73a4009ba4cf68ad
Ping-Bug: 10380
Reviewed-on: https://code.wireshark.org/review/3596
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-08-15 13:57:32 +00:00
Joerg Mayer 65ac652a07 Remove make-dissector-reg and require python for autotool builds as well
Change-Id: I6239063a08ba37199a4e95302a3650a80544c750
Reviewed-on: https://code.wireshark.org/review/3562
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-08-12 21:31:34 +00:00
Evan Huus 37b5b095b9 Rip out the filetap code
We decided at sharkfest that this wasn't the right design for file dissection;
we have more-or-less settled on way forward, but nobody's shown interest in
implementing it. Whether or not that ever happens, this code is effectively
dead and should be removed.

Change-Id: I14d6086df3204fffb6485228db39d9f407661417
Reviewed-on: https://code.wireshark.org/review/3400
Petri-Dish: Evan Huus <eapache@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-08-04 14:31:37 +00:00
Guy Harris 7df03a7c3e Get rid of debugging output, and get CMake to produce verbose makefiles.
On the 32-bit OS X buildbot, automake is old enough that autotools
builds are verbose, printing the command line for each compile step; if
we cause CMake to produce verbose makefiles, they will also print the
command line, so we can see what differences there are.

This means the other debugging output we added isn't necessary; remove
it.

Sort the extra warning options in configure.ac based on whether they're
for C and C++ or just C, just as is the case in CMake, to make it easier
to keep the lists in sync; add comments to configure.ac to mirror the
ones in CMakeLists.txt.

Get rid of -Wno-deprecated-declarations; the CMake build doesn't use it,
and it doesn't appear to be necessary - if we ever have problems with OS
X complaining about using OpenSSL, for example, we should do as tcpdump
does and wrap uses of the "deprecated"-but-cross-platform APIs in
the appropriate pragmas.

Change-Id: I0b8b45f00481ac2b67da5c7dd028a029b130dcc4
Reviewed-on: https://code.wireshark.org/review/3377
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-03 10:41:19 +00:00
Guy Harris 5234d4c2d0 OK, try sorting the compiler options.
Also, comment out the addition of -Wno-deprecated-declarations, as the
CMake build doesn't use it.

If this succeeds in making the autotools and CMake builds compile C code
with the same -W and -f flags in the same order, that should eliminate
at least one reason why the CMake build produces compiler warnings that
the autotools build doesn't.

Change-Id: I0eaeae91b8e3c39c53f502daef86c2d103c8bdab
Reviewed-on: https://code.wireshark.org/review/3374
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-03 00:47:00 +00:00
Guy Harris 81f5d71ff3 Get rid of trailing blank line.
Change-Id: Ibcdacbad865478ee682995170937cedd575389ec
Reviewed-on: https://code.wireshark.org/review/3368
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-02 21:19:00 +00:00
Guy Harris 50b67345b7 Dump additional debugging information.
For autotools, dump CC, CFLAGS, CXX, and CXXFLAGS.

For CMake, dump CMAKE_C_COMPILER_ID and CMAKE_CXX_COMPILER_ID.

Hopefully this will help figure out why CMake builds catch different
warnings from autotools builds.

Change-Id: I26955ad955f60e8bad248562fa87963a3a1bb42f
Reviewed-on: https://code.wireshark.org/review/3365
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-02 21:01:49 +00:00
Jeff Morriss e7df09b82f Add the easy_codec plugin to the source distribution.
It doesn't build on Linux but cmake looks for it (won't build without it) and
Windows users might want it.

Change-Id: I978f0de0a2895a82f4f3b8c1e9e0ecec6a93e6f4
Reviewed-on: https://code.wireshark.org/review/3325
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-08-01 16:17:38 +00:00
Guy Harris 4d90d6e38d Add some files under asn1 to the distribution.
Include CMakeLists.txt files and the gnm subdirectory, along with the
top-level Makefile.inc and Makefile.preinc files.  Don't explicitly
include Custom.make, as automake does that automatically given that it's
included by asn1/Makefile.am.

Add some files to EXTRA_DIST lists.

Move some .asn files to EXTRA_DIST; they don't need to be in SRC_FILES,
as SRC_FILES always includes EXTRA_DIST, and they *do* need to be in
EXTRA_DIST so that they're in the distribution.

Change-Id: Id91df577260fa57028d40fe098be1d79c59398e6
Reviewed-on: https://code.wireshark.org/review/3273
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-30 23:42:55 +00:00
Guy Harris f724cae763 Only ABI-check strncasecmp.h if strncasecmp() is part of the API/ABI.
Some routines Wireshark uses are present in some, but not all,
platforms; for routines that would be used on all platforms, libwsutil
provides its own implementations on platforms that lack them.

On platforms that provide a routine, that routine will not be part of
the API and ABI, and, if we do an API or ABI check using the header
libwsutil provides to declare the function on platforms that lack it, we
may have a collision between the declaration in our header and the
declaration in a system header.

There's no guarantee that we can make them match, as the declaration
might differ from platform to platform and from platform version to
platform version, so we simply leave the header file out of the check if
we have the function on the platform on which we're checking the API or
ABI.

Change-Id: I8a23e63d9e17e5c1f5a83304dbe14d1e7df22e7e
Reviewed-on: https://code.wireshark.org/review/3115
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-19 07:24:01 +00:00
Graham Bloice 4b5967f683 Moved nghttp2 to epan
Cleaned up nghttp2 build

Change-Id: I9f7adc12936155e0ffc01ec825b5aff95279f97d
Reviewed-on: https://code.wireshark.org/review/2937
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-07-09 05:31:31 +00:00
Guy Harris 5bfc21cf9e Clean up handling of missing functions.
With autotools, CMake, and nmake, if we have a function, #define
HAVE_{function_name_in_all_caps}, otherwise don't #define it.

If we provide our own version of a function in libwsutil, make sure we
have a header that declares it, and *ONLY* include that header if
HAVE_{function_name_in_all_caps} is *NOT* defined, so that we don't have
the system declaration and our declaration colliding.

Check for inet_aton, strncasecmp, and strptime with CMake, just as we do
with autotools.

Simplify the addition of {function_name_in_all_caps}_LO to libwsutil in
autotools.

Change-Id: Id5be5c73f79f81919a3a865324e400eca7b88889
Reviewed-on: https://code.wireshark.org/review/2903
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-06 21:03:09 +00:00
Guy Harris 318205e699 Fix an error caught by enum-conversion warnings.
(Strong typing is for weak minds.

Human minds are weak.

Therefore, strong typing is for human minds.)

Change-Id: I099b85e98f3b9742b1addd8d260b3e94ca7add31
Reviewed-on: https://code.wireshark.org/review/2866
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-05 22:22:44 +00:00
Guy Harris 9e6487f247 Move utility routines for capturing into a libcaputils static library.
Some of those routines are used only in dumpcap; others are used in
TShark and Wireshark as well.

Change-Id: I9d92483f2fcff57a7d8b6bf6bdf2870505d19fb7
Reviewed-on: https://code.wireshark.org/review/2841
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-04 07:25:26 +00:00
Guy Harris 096aca67de Make some inconsistent configuration options errors.
This way, if you ask for both setuid and setcap installation of dumpcap,
it will fail, rather than silently (other than a message you might miss)
ignoring the request for setuid installation.  See bug 10246.

Also:

	if you ask for setuid or setcap installation of dumpcap, but
	dumpcap isn't built, it'll let you know that there's nothing to
	make setuid/setcap, and fail;

	if you ask for setcap installation of dumpcap, but setcap wasn't
	found, it'll let you know that it can't install it setcap, and
	fail;

so that it won't silently (other than a message you might miss) ignore
those requests, either.

Change-Id: Ibc01593e59fd1cd1be8c68d8cdacbfdca863efa0
Reviewed-on: https://code.wireshark.org/review/2771
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-02 00:48:28 +00:00
Guy Harris ae26b12f3e If -fvisibility=hidden isn't supported, try -xldscope=hidden.
That's the option for newer versions of Sun^WOracle C.

Change-Id: I62c12d5870d84587f81a8789732675021523e9ed
Reviewed-on: https://code.wireshark.org/review/2769
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-02 00:20:46 +00:00
Guy Harris aa0f80981a Don't check for -Wl,{option} support.
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>
2014-07-01 19:47:07 +00:00
Guy Harris b378f72545 Fix comments to reflect reality.
Change-Id: Id56f5844932371a89785f4ddce87eb66789acdc8
Reviewed-on: https://code.wireshark.org/review/2754
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-01 19:27:01 +00:00
Guy Harris b671551625 Another file to generate in the configure script.
Change-Id: I6dafc9ab9fafd465cb2ad83e5e56e4d22b36d41b
Reviewed-on: https://code.wireshark.org/review/2609
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-24 03:35:47 +00:00
Guy Harris 213189ef9e Move the routines to talk to dumpcap into a static libcapchild.
This pulls some stuff out of the top-level directory, and means we don't
have to build them once for every program using them.

Change-Id: I37b31fed20f2d5c3563ecd2bae9fd86af70afff5
Reviewed-on: https://code.wireshark.org/review/2591
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-23 23:58:29 +00:00
Guy Harris 421d817d70 Don't compile anything with -msse4.2 unless the compiler supports it.
This includes ws_mempbrk_sse42.c; if the compiler doesn't support
-msse4.2, HAS_SSE4_2 isn't defined, so all the stuff in
ws_mempbrk_sse42.c that uses SSE 4.2 will be #ifdeffed out.

Not all compilers with which we're built will support -msse4.2; in
particular, the ones that aren't compiling for x86 won't....

Change-Id: I69566ca06f602104b40c78b3b06fcb7dfeb054b2
Reviewed-on: https://code.wireshark.org/review/2373
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-18 09:50:43 +00:00
Jakub Zawadzki 7bae85acb8 Fix x86 buildbots, revert sse4.2 AM_CONDITIONAL logic
Change-Id: I0b594089753980b58f702e86293028c8dc7e4e54
Reviewed-on: https://code.wireshark.org/review/2363
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-18 05:39:20 +00:00
Guy Harris 20accf341c Don't do the check for clang/clang++.
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>
2014-06-18 04:58:42 +00:00
Guy Harris a61ebef1a5 Set the conditional SSE42_SUPPORTED in all circumstances.
This might fix the Solaris/SPARC build error

	configure: error: conditional "SSE42_SUPPORTED" was never defined.
	Usually this means the macro was only invoked conditionally.

(not all the world's a VAX^Wx86).

Change-Id: Ib189ce70b203875188cee3266b8652c02ca34237
Reviewed-on: https://code.wireshark.org/review/2358
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-18 01:23:43 +00:00
Jakub Zawadzki 6664030571 Rewrite check for ws_mempbrk_sse42.c compilation
- check only for -msse4.2
- check if there's nmmintrin.h header
- don't check if current CPU support -msse4.2 (fix cross compilation)

Change-Id: Iba8d291fdf5602937ab540a69b7608a81427ad25
Reviewed-on: https://code.wireshark.org/review/2189
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-17 23:58:52 +00:00
Jeff Morriss aeb1888a50 Remove the (old, broken) Python bindings option to ./configure (and a few other references).
Change-Id: I470502bfae6617a798d0c2538f0f04ff7d36fee5
Reviewed-on: https://code.wireshark.org/review/2277
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-06-16 21:19:28 +00:00
Gerald Combs a82c8d1cff More wspython removal.
Change-Id: I09b7bac7906f0e134459c4a81a7ef626e6590d5b
Reviewed-on: https://code.wireshark.org/review/2276
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-06-16 21:09:48 +00:00
AndersBroman fcb019acb8 Change HAVE_SSE42 to HAVE_SSE4_2 add $(SIMD_FLAGS)
Add autotools macros to distribution
Call AX_EXT to define HAVE_SSE4_2

Change-Id: I9ff085d923dfafb32510cdd14290e74a2aaea302
Reviewed-on: https://code.wireshark.org/review/2110
Tested-by: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-10 14:51:26 +00:00
Alexis La Goutte 62fd14cbd7 Add nghttp2 lib (HPACK)
Change-Id: I2a361951924045035a2a5d38f943e6b97c170f36
Reviewed-on: https://code.wireshark.org/review/1623
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-05-31 13:11:05 +00:00
Balint Reczey 7bf49b31ac Set PLUGIN_INSTALL_DIR properly for wireshark.pc
Change-Id: I64c04095ce780ce2cc44a54a68695506d27e5747
Reviewed-on: https://code.wireshark.org/review/1861
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-05-30 12:48:08 +00:00
Gerald Combs 285405a0d7 1.11.4 → 1.99.0.
Change-Id: I5b0f713fdbc63e78f4f52177317c0e536aca3044
Reviewed-on: https://code.wireshark.org/review/1761
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-05-23 20:57:42 +00:00
Alexis La Goutte ca97ba0fcb Update comment about -Wunreachable-code and -Wdocumentation
Change-Id: I5b942bdacc5f4a9ecfa084dbff479eba6582b0df
Reviewed-on: https://code.wireshark.org/review/1726
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-23 07:23:42 +00:00
Guy Harris 4fdd528f89 "extra *compiler* warnings", not just "extra warnings".
Rename --enable-extra-warnings to --enable-extra-compiler-warnings, and
have the message talking about "extra warnings" talk about "extra
compiler warnings", to make it more uniform (the documentation for the
--enable flag speaks of "additional compiler warnings") and to clarify
that these are warnings from the compiler, not from *shark.

Change-Id: Ic1a045670144f8d9eda2e3427142027e2a339156
Reviewed-on: https://code.wireshark.org/review/1230
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-20 23:50:04 +00:00
Guy Harris 0bdd9a7d7a Rename --enable-extra-compiler-checks to --enable-extra-warnings.
That makes it clearer that what we're enabling are extra warnings, and
fits better with the description for --enable-warnings-as-errors, which
says the default is "yes, unless extra warnings are enabled".

Change-Id: If21f778df0dfdb98acbe02cb6a763ed27f2a7f91
Reviewed-on: https://code.wireshark.org/review/1227
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-20 22:53:18 +00:00
Guy Harris 68f9811b1b Don't distinguish between "GCC" and "Clang" extra -W flags.
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>
2014-04-20 22:47:18 +00:00
Gerald Combs 3f0bc55ed0 Add license compatibility information for GMP (used by GnuTLS).
Update GLib and GTK+ release dates and add Qt release dates while we're
here.

Change-Id: Ia0da8f6e118e5737d19d321ce3fae6de75477b08
Reviewed-on: https://code.wireshark.org/review/1157
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-04-15 19:01:24 +00:00
Gerald Combs d73d1f14b3 1.11.3 → 1.11.4.
Change-Id: I0bf8792b9b524ae4d8e1022b234e2510972c7019
Reviewed-on: https://code.wireshark.org/review/1154
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-04-15 17:29:19 +00:00
Alexis La Goutte 280c2958f2 Add --enable-extra-clang-checks for autotools and CMakeList
With -Wunreachable-code flags (and disable for the moment -Wdocumentation)

Change-Id: I126c962b32e650a63b78092e95896736ae7335c9
Reviewed-on: https://code.wireshark.org/review/678
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-03-31 08:29:58 +00:00
Alexis La Goutte d43f7d134b Remove -Wunreachable-code it is removed from GCC
http://gcc.gnu.org/ml/gcc-help/2011-05/msg00360.html

Change-Id: I3f016611d0dc5e7cc6d53965f9b5d2b1ee88fe1c
Reviewed-on: https://code.wireshark.org/review/677
Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-03-17 14:32:44 +00:00
Guy Harris 907d24db89 Get rid of $Id$, add some comments.
Change-Id: I3f34484f18fba45b23b5acc924b56e5b62291114
Reviewed-on: https://code.wireshark.org/review/627
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-03-12 23:12:14 +00:00
Michal Labedzki 10084c344c RTP: Add support for SBC codec in RTP Player
Add optional dependancy to libsbc to play Bluetooth SBC in
A2DP payload. Also simplify RTP Player and extent codec interface.

Change-Id: I52e1fce9c82e2885736354fe73c6c37168a4fda3
Reviewed-on: https://code.wireshark.org/review/19
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-02-12 01:36:02 +00:00
Jörg Mayer 5783452ab2 -Warray-bounds was listed twice
svn path=/trunk/; revision=54839
2014-01-18 22:52:56 +00:00
Guy Harris 035526af10 tfshark.c doesn't build without warnings, so default to "don't build it"
for now.

svn path=/trunk/; revision=54651
2014-01-08 05:36:36 +00:00
Guy Harris cd7909ebdf Handle tfshark.
svn path=/trunk/; revision=54650
2014-01-08 05:34:02 +00:00
Michael Mann bf284da2ee TFShark (Terminal Fileshark) v.001. Bug 9607 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9607)
This is a VERY PRELIMINARY version of tfshark.  It's an attempt to jumpstart FileShark and its architecture.  Right now it's mostly just a very stripped down version of tshark with all of the necessary build modifications (including now building filetap library since tfshark depends on it)

This code has helped me identify what I believe to be all of the necessary layers for a complete fileshark architecture.  And those layers will slowly be added in time (patches always welcome!).

svn path=/trunk/; revision=54646
2014-01-08 04:35:28 +00:00
Jeff Morriss ef5e9fd6b4 Don't try to build asn1/asn1/Makefile either (see r54561).
svn path=/trunk/; revision=54571
2014-01-02 20:48:33 +00:00
Jeff Morriss d91261a53b Don't try to build asn1/gnm/Makefile (see r54561).
svn path=/trunk/; revision=54567
2014-01-02 19:48:26 +00:00
Martin Kaiser 43e892e985 From Dirk
dissector for Novell's PKIS certificate extensions

from me
clean up the $Id$ tags
remove packet-pkis(-template).h
remove ASN.1 definitions that cause compiler warnings
   (OID, SecurityLabelType2)
move the dissector to the clean ASN.1 dissectors
support CMake build
change the name to novell_pkis

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9597

svn path=/trunk/; revision=54508
2013-12-31 14:20:08 +00:00
Guy Harris cc74708a79 Fix some typoes, quote $CFLAGS and $LDFLAGS when using them in
assignments (not sure that's necessary, but...).

svn path=/trunk/; revision=54474
2013-12-27 11:08:41 +00:00
Guy Harris 8713e0457b Some warning options are, for reasons not entirely obvious to me, not
supported by some versions of g++ even though the corresponding version
of gcc supports them.  Other versions of g++, and clang, support them.

Check, before adding a -W option for C++, whether the compiler supports
it; that check must be done with -Werror, at least with g++, in order to
get a non-zero exit status from the compiler.

svn path=/trunk/; revision=54447
2013-12-24 18:43:42 +00:00
Bill Meier 6ec4ba58a1 If Gtk >= 3.10, allow use of deprecated Gtk features (and prevent 'deprecated' warnings);
Given that Wireshark is moving to QT, the Wireshark changes required to
fix the features deprecated in Gtk 3.10 will not be done.

svn path=/trunk/; revision=54337
2013-12-21 18:16:07 +00:00
Jakub Zawadzki 53f438b4ed Allow -Wmissing-prototypes only for C
It should fix:
	cc1plus: warning: command line option `-Wmissing-prototypes' is valid for Ada/C/ObjC but not for C++ [enabled by default]

(only g++ complains, clang is OK with -Wmissing-prototypes)

svn path=/trunk/; revision=54086
2013-12-14 10:43:29 +00:00
Guy Harris e21fd7c0ce Add a "captype" file that just reports the type of a capture file, based
on what libwiretap thinks it is.

Update some comments to reflect the death of the hack used to include
(libwiretap) plugin support in programs not built with libwireshark.

svn path=/trunk/; revision=54015
2013-12-13 02:59:16 +00:00
Jeff Morriss 69017ac3bd Overhaul rpm-building options a bit: as suggested by Anders, have the RPM follow
./configure's options for gtk2 vs gtk3 vs qt.

Make it possible to not build the GNOME package (now both UIs' packages are
optional).  I think Chris requested this a while ago.

If this works out it may make sense to control the rest of the options via
./configure .

svn path=/trunk/; revision=53607
2013-11-26 23:43:18 +00:00
Guy Harris 4dbed5fbd0 According to
http://gcc.gnu.org/onlinedocs/gcc-4.8.2/gcc/Code-Gen-Options.html#Code-Gen-Options

-ftrapv "generates traps for signed overflow on addition, subtraction,
multiplication operations." and -fwrapv "instructs the compiler to
assume that signed arithmetic overflow of addition, subtraction and
multiplication wraps around using twos-complement representation."

Those seem mutually-exclusive to me, and we probably want wrapping, not
traps, as there's probably a fair bit of code out there that explicitly
or implicitly assumes wrapping.  (Actually, we really want to avoid
signed arithmetic for the cases that most matter, such as offsets and
lengths, but, unfortunately, we currently have API conventions that
allow negative values for lengths, either with -1 meaning "to the end"
or with negative values meaning "relative to the end".)  In addition,
there seem to be some bugs complaining that -ftrapv doesn't always cause
traps on signed integer overflow.

We seem to be seeing crashes in Lemon on the Solaris buildbot subsequent
to adding -ftrapv; I don't know whether that's an overflow being
detected, a bug in the compiler, or something unrelated, especially
given that we're using Sun C, not GCC, on the Solaris buildbot. 
However, we'll try removing -ftrapv, to see if it fixes the problem; the
MIT CSAIL paper in question wasn't really recommending all the GCC
options it mentioned (which, as noted, wouldn't make sense, as -ftrapv
and -fwrapv appear to be mutually-exclusive).

svn path=/trunk/; revision=53556
2013-11-24 22:51:44 +00:00
Balint Reczey ee147994b7 Use GCC flags to avoid optimization problems due to undefined behaviour
Adding flags suggested by article at:
http://pdos.csail.mit.edu/~xi/papers/stack-sosp13.pdf

svn path=/trunk/; revision=53551
2013-11-24 20:28:25 +00:00
Alexis La Goutte 001d79cac3 Add -Wheader-guard to Autotools and CMake
svn path=/trunk/; revision=53507
2013-11-22 14:51:31 +00:00
Alexis La Goutte d28d1a8240 Fix compilation with Clang (Remove limitation to -fPIE to only C)
/usr/include/qt5/QtCore/qglobal.h:1079:4: error:
"You must build your code with position independent code if Qt was built with -reduce-relocations. " "Compile your code with -fPIC or -fPIE."

svn path=/trunk/; revision=53432
2013-11-19 12:27:09 +00:00
Gerald Combs 16e27047d0 1.11.2 → 1.11.3.
svn path=/trunk/; revision=53412
2013-11-18 17:41:00 +00:00
Gerald Combs f772a268db 1.11.1 → 1.11.2.
svn path=/trunk/; revision=53346
2013-11-15 22:34:31 +00:00
Alexis La Goutte 4bff9d32a0 Enable Packet Editor by default
svn path=/trunk/; revision=53132
2013-11-07 07:42:35 +00:00
Jörg Mayer 0dc80637da Fix autoconf broken by last commit.
svn path=/trunk/; revision=53060
2013-11-03 12:39:50 +00:00
Jörg Mayer 117a59d7a2 Pass the name of the sed executable as an explicit argurment to
runlex.sh (like it is done with LEX already). May fix a problem
on Windows with cmake.

svn path=/trunk/; revision=53059
2013-11-03 12:22:39 +00:00
Jeff Morriss 250641f5de From Thomas Dreibholz via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9368 :
Call AC_PROG_MKDIR_P so MKDIR_P is sure to be set.

svn path=/trunk/; revision=53026
2013-11-01 20:06:22 +00:00
Pascal Quantin 7f3d07b9fd From e.yimjia via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9289 :
Add dissection of OMA-ILP

svn path=/trunk/; revision=52721
2013-10-20 18:43:00 +00:00
Jeff Morriss d69a93f70e Simplify a bit (in a way which will hopefully actually work): just don't add -Wshorten-64-to-32 to CXXFLAGS. Also, add AM_CLEAN_FLAGS to AM_CXXFLAGS, not AM_CPPFLAGS.
svn path=/trunk/; revision=52676
2013-10-18 18:28:57 +00:00
Jeff Morriss 2ac63d7a44 Add -Wno-shorten-64-to-32 (if we can) when compiling the Qt UI.
svn path=/trunk/; revision=52674
2013-10-18 17:42:32 +00:00
Gerald Combs f6884b5945 Add checks to see if CC and/or CXX are Clang. Add "-Qunused-arguments"
to CFLAGS and/or CXXFLAGS as needed.

svn path=/trunk/; revision=52654
2013-10-16 22:39:44 +00:00
Gerald Combs fe55299806 Don't bother checking for clang, just add -Qunused-arguments to the
compiler flags checks.

svn path=/trunk/; revision=52649
2013-10-16 18:40:13 +00:00
Pascal Quantin 7c2219f301 1.11.0 -> 1.11.1
svn path=/trunk/; revision=52647
2013-10-16 17:32:45 +00:00
Gerald Combs 5fba0c2474 If we're using Clang add -Qunused-arguments in order to avoid a bunch
of warnings described at
http://petereisentraut.blogspot.com/2011/05/ccache-and-clang.html

svn path=/trunk/; revision=52646
2013-10-16 17:22:58 +00:00
Gerald Combs d643779b9b Build with Qt by default.
svn path=/trunk/; revision=52548
2013-10-11 18:42:34 +00:00
Guy Harris 878186be3d We use g_ascii_strtoll(), not strtoll(), so we no longer need to check
for strtoll() (if we ever did check for it).

svn path=/trunk/; revision=52519
2013-10-10 23:33:21 +00:00
Jörg Mayer 07a5c7442f Invert NEED_INET_ATON_H to HAVE_INET_ATON_H
Remove unused NEED_G_ASCII_STRTOULL_H

svn path=/trunk/; revision=52385
2013-10-05 21:56:23 +00:00
Gerald Combs 99f457bd03 Use separate "Read me first" files for Qt and GTK+.
svn path=/trunk/; revision=52321
2013-10-01 21:04:13 +00:00
Gerald Combs 2211ab0fba Use macdeployqt to add the Qt bits to our bundle. Put our libraries in
Contents/Frameworks since that's what macdeployqt expects. Have
osx-dmg.sh look at the correct executable.

svn path=/trunk/; revision=52295
2013-09-30 13:12:28 +00:00
Gerald Combs 2468b33cce More Qt app bundle migration. Still doesn't work quite right.
svn path=/trunk/; revision=52293
2013-09-30 11:29:58 +00:00
Gerald Combs 0a75c9d872 Start migrating the OS X app bundle to Qt. This will likely break the
installers.

svn path=/trunk/; revision=52292
2013-09-30 10:20:43 +00:00
Guy Harris d5909d38a1 Use -m32, instead, as per Michael Tuexen's suggestion.
svn path=/trunk/; revision=51923
2013-09-10 10:28:30 +00:00
Guy Harris 2891a58aa8 When building for 10.4 or 10.5, force 32-bit x86 on x86 and 32-bit PPC
on PPC.

svn path=/trunk/; revision=51921
2013-09-10 10:24:00 +00:00
Guy Harris e45f35d623 Can't use [ as an alias for "test" in configure scripts, as [ and ] are
quoting characters; use test instead.

svn path=/trunk/; revision=51503
2013-08-24 01:01:04 +00:00
Guy Harris 98db1cefbb To handle the hypothetical case of an OS X release offering a choice of
installing command-line developer tools with no SDKs but with a standard
UN*Xy /usr/include or of installing Full Frontal Xcode, if the user
didn't specify building against an SDK, check to see whether we *have*
any SDKs and, if not, don't set the deployment target.

svn path=/trunk/; revision=51501
2013-08-23 23:57:09 +00:00
Guy Harris d9ebff02be Arrange that "make distcheck" use the GUI configure flags used to
configure Wireshark, so we don't, for example, do "make distcheck" with
no options, and thus default to GTK+ 3, on a system without GTK+ 3 where
Wireshark was configured with --with-gtk2.  (This also means that if
we're configuring only with Qt, or with GTK+ *and* Qt, "make distcheck"
will check with those.)

svn path=/trunk/; revision=51456
2013-08-21 18:39:39 +00:00
Guy Harris cfa2dc5f6e Add in more comments on the whole "get the path of the executable from
the kernel" thing, and add the NetBSD and DragonFly BSD /proc links (if
they don't mount /proc, that doesn't work, but it doesn't get in the
way).

On Solaris, check for getexecname, just in case somebody tries to build
on an old Solaris that doesn't support it (that could well end up being
the least of their problems, but at least they won't ask us to diagnose
that one).

svn path=/trunk/; revision=51343
2013-08-13 23:37:32 +00:00
Guy Harris 50eb826406 If we're looking for some version of GTK+, and don't find it, fail.
That way, if somebody specifies --with-gtk[23] and that version of GTK+
isn't found, we fail with an indication that the version of GTK+ they
asked for isn't there, and if no GUI toolkit was specified, and they
didn't explicitly say "don't build Wireshark", we look for GTK+ 3 and,
if it's not found, let the user know explicitly.

svn path=/trunk/; revision=51323
2013-08-12 20:24:59 +00:00
Guy Harris bebe1200de Just check whether dladdr() is available; we check in the code whether
it succeeds, so there's no point in checking whether it succeeds in a
sample program.

svn path=/trunk/; revision=51322
2013-08-12 20:01:30 +00:00
Guy Harris 70523b5014 On some platforms, to get dladdr() you need to link with -ldl. First
try it without -ldl (in case the OS doesn't have it - not a good idea,
as it complicates the build process for cross-platform tools that might
require it on other platforms, but "not a good idea" never stopped UN*X
vendors in the past) and, if that fails, try it with -ldl.

svn path=/trunk/; revision=51309
2013-08-12 09:09:32 +00:00
Anders Broman 77f4bef154 From Mathias Guettler:
New dissector for Air/Ground Datalink ICAO doc 9705 Ed2: ULCS, CM, CPDLC.

Add the files to the distribution.

svn path=/trunk/; revision=51212
2013-08-08 05:34:22 +00:00
Gerald Combs f22f8cc841 Fix the Python version check. Hopefully no one is running 1.5 or 1.6.
svn path=/trunk/; revision=51161
2013-08-05 20:08:11 +00:00
Gerald Combs d3af98bb91 Don't force the use of Python 2.x, similar (but not identical to)
r51128. Print a warning if we're building with Python < 2.5.

svn path=/trunk/; revision=51158
2013-08-05 18:57:00 +00:00
Guy Harris b7cf00c657 Check the Python major version number in a way that works in Python 2
and Python 3.

svn path=/trunk/; revision=51077
2013-07-31 21:10:50 +00:00
Guy Harris 3ba7057528 Get rid of extra comment line.
svn path=/trunk/; revision=51075
2013-07-31 20:41:56 +00:00
Guy Harris 7bad1f75da Only use sw_vers if we're on OS X.
svn path=/trunk/; revision=51074
2013-07-31 20:40:19 +00:00
Guy Harris b8bc01c74f Set the minimum OS X version in the installer package based on the
deployment target; if --disable-osx-deploy-target was specified, set it
to the OS version on which we're building - minor/dot-dot version and
all - as there's no guarantee that it'll work on *any* version earlier
than that.

svn path=/trunk/; revision=51060
2013-07-31 07:39:11 +00:00
Guy Harris 5593058825 If you use --enable-osx-deploy-target or --disable-osx-deploy-target on
anything other than OS X, fail; whatever it is you're trying to do won't
work (unless and until there exists a platform that fully supports
cross-development for OS X, *including* building against SDKs and
building with -mmacosx-version-min).

If you use neither on OS X, default to the OS major version on which
you're building.  If you use --disable-osx-deploy-target, don't build
against an SDK and don't use -mmacosx-version-min.

svn path=/trunk/; revision=51057
2013-07-31 07:17:45 +00:00
Guy Harris f317c7821d The files in aclocal-fallback are copies of .m4 files from various
packages, providing macros that we use in our configure script in case
somebody building from SVN doesn't happen to have the package installed
and thus doesn't happen to have those macros defined.

In the case of Qt, there *isn't* such a .m4 file, so we had to create
the macro.  Move it to acinclude.m4, and rename it to
AC_WIRESHARK_QT_CHECK to indicate that it's our own check.

svn path=/trunk/; revision=50881
2013-07-24 22:34:44 +00:00
Guy Harris 8fa093daa5 Add a comment.
svn path=/trunk/; revision=50879
2013-07-24 22:08:42 +00:00
Guy Harris 1cd5695ebd If none of --with-gtk2, --with-gtk3, or --with-qt are specified, and
--disable-wireshark was not specified, build with GTK+ 3.

If any of --with-gtk2 or --with-qt are specified, and --with-gtk3 wasn't
specified, *don't* look for GTK+ 3 and don't build with it.

If *both* --with-gtk2 and --with-gtk3, fail.

svn path=/trunk/; revision=50872
2013-07-24 18:36:02 +00:00
Jörg Mayer 18155bd148 Change default gtk build from version 2 to version 3 for
autotool, cmake and nmake.
No idea what it takes to change the visual project stuff

svn path=/trunk/; revision=50863
2013-07-24 11:51:10 +00:00
Martin Kaiser cc82d38c8b set HAVE_GETOPT_H and HAVE_GETOPT variables
for both autotools and cmake builds

(in order to use getopt_long(), we have to check if we
 can include getopt.h)

svn path=/trunk/; revision=50680
2013-07-16 21:12:12 +00:00
Evan Huus 66f7521a17 Revert r50150. I suspect the problem was Ubuntu's transition to qt5 as default,
since now the defaults work as they should.

svn path=/trunk/; revision=50644
2013-07-15 23:47:11 +00:00
Guy Harris bc239a7286 On OS X, set the rpath for executables to include
@executable_path/../lib as well as /usr/local/lib, so we can use @rpath
in the install names in the executables and libraries in the application
bundle.

Have the osx-app.sh script tweak all references to libraries from
/usr/local/lib in all executables, libraries, and plugins in the app
bundle to use @rpath.  (The "all" is important; it fixes the GTK+ crash
mentioned in the comment in osx-app.sh.  The notion of doing all of them
came from the osx-app.sh script in a newer version of Inkscape.)

This renders the setting of DYLD_LIBRARY_PATH in the wrapper scripts in
the bundle unnecessary; remove it.  (Ideally, we should try to get rid
of the wrapper scripts entirely, but that might have to wait for us to
switch to using Qt.)

svn path=/trunk/; revision=50560
2013-07-13 22:43:35 +00:00
Guy Harris 5967dc6820 CPPFLAGS contains the flags for the C preprocessor; CXXFLAGS contains
the flags for the C++ compiler.

If we're building for 10.5, force a 32-bit build.

svn path=/trunk/; revision=50459
2013-07-09 08:48:07 +00:00
Guy Harris 2cc0fb0917 Clean up comments.
svn path=/trunk/; revision=50440
2013-07-07 21:38:04 +00:00
Guy Harris a39004e4aa Check for an OS X deployment target early, so that as many
tests using the compiler are done using the flags that
we'll be using when building.

Add a -mmacosx-version-min flag to CFLAGS/CPPFLAGS/LDFLAGS so that the
compiler tests use them.  This may, or may not, obviate the need to set
MACOSX_DEPLOYMENT_TARGET in OSX_DEPLOY_TARGET.

svn path=/trunk/; revision=50426
2013-07-06 23:29:50 +00:00
Guy Harris 519c5affa2 Add a --enable-osx-deploy-target option to set the deployment target
when building for OS X; that causes the MACOSX_DEPLOYMENT_TARGET
environment variable to be set when building (so that, for example, we
don't use linker features available on the version on which we're
building but not on the minimum OS version for which we're building),
and causes the SDK for that version to be used (so that, for example, we
don't link with libraries with later version numbers than the ones
provided with the OS version for which we're building).

svn path=/trunk/; revision=50410
2013-07-06 16:42:30 +00:00
Guy Harris 70075fa70f Rename AC_WIRESHARK_GCC_CFLAGS_CHECK to
AC_WIRESHARK_COMPILER_FLAGS_CHECK, because it doesn't just affect CFLAGS
and it doesn't just affect the flags for GCC.

svn path=/trunk/; revision=50222
2013-06-28 22:00:52 +00:00
Guy Harris c0fa736323 Do the "is $CXX actually a C++ compiler" test as early as possible, so
that it doesn't fail due to the C++ compiler not supporting -W options
that the C compiler does.

(We should fix that, too, by having separate checks for whether the C
and C++ compilers support particular options.)

svn path=/trunk/; revision=50215
2013-06-28 19:34:35 +00:00
Jeff Morriss 8c826964bf Standard C++ header files don't have .h in their name: #include <iostream>
rather than #include <iostream.h>.

Also reference cout as std::cout in the test program.

svn path=/trunk/; revision=50206
2013-06-28 12:18:03 +00:00
Guy Harris 9a09ef907a AC_LANG_PROGRAM's second argument is put inside "int main(){"/"}" by the
macro, and mustn't include that itself.

svn path=/trunk/; revision=50205
2013-06-28 09:59:19 +00:00
Guy Harris fd5281c763 AC_PROG_CXX doesn't actually check whether what it finds is a real live
C++ compiler (it might not be one on, for example, OS X, due to "cc"
being a C compiler, "CC" referring to "cc" due to the case-insensitivity
of the default OS X file system, and "CC" being one of the names checked
for in AC_PROG_CXX), so if we really need a C++ compiler, test it with a
program that a C compiler won't compile.

svn path=/trunk/; revision=50204
2013-06-28 08:36:35 +00:00
Guy Harris ca9122bfec Suppress "Of *COURSE* you're developing a Mac-only application - you're
on a Mac, right?  So of *COURSE* you want to use our shiny new frameworks
rather than those ugly old open-source multi-platform libraries, right?"
warnings.

svn path=/trunk/; revision=50200
2013-06-27 23:11:05 +00:00
Guy Harris b450609a55 For now, don't turn on -Wcast-align by default. There are at least some
bugs it points out that probably mean the code won't work on machines
that require alignment (e.g., SPARC machines), but we'll turn it on once
we fix them.  (clang is fussier than GCC about this.)

svn path=/trunk/; revision=50187
2013-06-27 10:35:06 +00:00
Guy Harris 04cc1e2fb5 Don't assume that compilers not named "clang" will, by default, report
an error, or not issue warnings, by default if you give them an unknown
-f flag.  Instead, test that flag with all compilers, and use -Werror to
force it to error out.

As with C/C++ flags, so with C++-only flags.

svn path=/trunk/; revision=50178
2013-06-27 00:45:39 +00:00
Guy Harris eaf5e3fd1f Don't assume that compilers that need an extra option to report errors,
rather than just warnings, for unknown warning options are named
"clang"; they might not be.

svn path=/trunk/; revision=50177
2013-06-26 22:43:51 +00:00
Jeff Morriss cbe96aeb4d echld is not an optional package, it's an optional Wireshark feature: use
--enable-echld rather than --with-echld to control whether it is built.

svn path=/trunk/; revision=50168
2013-06-26 13:52:52 +00:00
Jeff Morriss 6df12cbcf7 If the user enables gtk3, (silently) disable gtk2 rather than forcing the user
to also specify --without-gtk2 or complaining that they have specified both.

svn path=/trunk/; revision=50167
2013-06-26 13:26:25 +00:00
Guy Harris 3ab335948b Nothing uses the HAVE_GTK #define, so get rid of it. (Keep the
Makefile.am conditional, however.)

svn path=/trunk/; revision=50162
2013-06-26 00:48:58 +00:00
Luis Ontanon 0a060270b3 Last changes to autofoo, rename the files as they live now in their own dir...
svn path=/trunk/; revision=50152
2013-06-25 21:09:29 +00:00
Evan Huus 242a37ea3e Look for moc-qt4 before moc and uic-qt4 before uic, because (at least on my
machine, with both qt4 and qt5 development tools installed), moc and uic are the
qt5 versions, but the rest of the configuration process grabs qt4 headers and
link paths, leading to a lot of weird errors.

svn path=/trunk/; revision=50150
2013-06-25 20:49:16 +00:00
Jeff Morriss 9cb2e270d6 Of course I forgot to test the normal/default case (where no --with arguments
are given)...

Actually default --with-gtk2 to "yes".

svn path=/trunk/; revision=50149
2013-06-25 20:06:33 +00:00
Jeff Morriss fd95d841b8 Allow the Gtk+ and Qt versions to be built simultaneously (with autotools).
./configure now accepts:
	--with-gtk2 :  enabled by default; exclusive of --with-gtk3
	--with-gtk3 : disabled by default; exclusive of --with-gtk2
	--with-qt   : disabled by default, can be specified with gtk
	--enable-wireshark : controls whether *any* GUI is built

If Qt is enabled then a new program is created: "wireshark-qt".  "wireshark"
remains the Gtk+ version.

svn path=/trunk/; revision=50147
2013-06-25 19:51:53 +00:00
Luis Ontanon e200f6cbf9 This should get cmake to ignore echld...
svn path=/trunk/; revision=50141
2013-06-25 17:43:52 +00:00
Luis Ontanon a75e89c787 Revert --with-echld until I find out how to get it to work with Cmake...
:

svn path=/trunk/; revision=50138
2013-06-25 04:50:36 +00:00
Luis Ontanon 1c8b686eb0 --with-echld
svn path=/trunk/; revision=50137
2013-06-25 04:20:08 +00:00
Gerald Combs c0702583d3 Make the minimum supported GLib version 2.16.
svn path=/trunk/; revision=49444
2013-05-20 17:27:05 +00:00
Guy Harris 1043692610 HTML_VIEWER isn't used in the build process, it's run by Wireshark.
svn path=/trunk/; revision=49257
2013-05-12 07:37:22 +00:00
Guy Harris b7c5f4baa7 Add some comments describing what programs are being checked for.
Move DESKTOP_FILE_INSTALL into the group of programs used for packaging;
it's used when you install a source package.  (It's not used to *build*
a source package, but....)

svn path=/trunk/; revision=49256
2013-05-11 23:59:17 +00:00
Guy Harris 5bf8bd4f15 Don't just look for python2. Instead, first look for python, and then
see whether it's Python 2 or not; if it's not, *then* look for Python 2.

That way, you can use Python on systems where python is Python 2 and
python2 doesn't exist.

Move the check for Python up after the check for Perl.  (All the program
checks arguably belong together.)

AC_PATH_PROG() does AC_SUBST() for you; don't do it ourselves.

svn path=/trunk/; revision=49253
2013-05-11 20:04:46 +00:00
Martin Kaiser 8388c1fa75 From Jeroen Roovers
call PKG_PROG_PKG_CONFIG explicitly in configure.ac
    
AC_REQUIRE(PKG_PROG_PKG_CONFIG) may be expanded only under an if
statement that's not true and thus PKG_PROG_PKG_CONFIG will never be
called.
    
./configure --without-gnutls --with-libnl demonstrates the problem

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8634

svn path=/trunk/; revision=49215
2013-05-09 14:41:54 +00:00
Gerald Combs ee26b25981 Add a link to the Survey of Commonly Available C System Header Files. It
looks like we might be able to get rid of a few header checks.

svn path=/trunk/; revision=49139
2013-05-02 15:17:46 +00:00
Jeff Morriss a52f0c61f3 As suggested by Evan:
Point users to https://code.google.com/p/pyreshark/ as an alternative to the
current Python support.

While we're in there, make it harder to enable Python: change it from
"--with-python" to "--with-broken-python" just to prevent people from enabling
unless they really mean it (are going to work on fixing it).

svn path=/trunk/; revision=49138
2013-05-02 14:55:33 +00:00
Jörg Mayer 4c444efdf1 Make the python scripts work on systems where python is a link
to python3: explicitely call the python2 binary.

svn path=/trunk/; revision=49121
2013-05-01 21:50:44 +00:00
Gerald Combs ea19c7f952 1.9.3 → 1.11.0.
svn path=/trunk/; revision=48972
2013-04-22 17:59:38 +00:00
Gerald Combs 1cb1c73756 Looks like the licensing change only applies to GnuTLS 3.1.10.
svn path=/trunk/; revision=48759
2013-04-06 15:45:28 +00:00
Gerald Combs 3217be744a GnuTLS recently switched back to a compatible license (LGPLv2.1+).
Update our checks accordingly.

svn path=/trunk/; revision=48758
2013-04-06 15:39:39 +00:00
Gerald Combs b60e41b984 1.9.2 → 1.9.3.
svn path=/trunk/; revision=48627
2013-03-28 18:13:22 +00:00
Gerald Combs 49294f3f52 It looks like GLib 2.36.0 was released on the 25th as well, although I
can't find a release announcement.

svn path=/trunk/; revision=48603
2013-03-27 23:55:05 +00:00
Stig Bjørlykke 3d07727dc8 Remove searching in $prefix for packages as requested in bug 6011 and bug 7926.
svn path=/trunk/; revision=48582
2013-03-27 09:44:34 +00:00
Gerald Combs 4e1e60c4bf It's 2013.
svn path=/trunk/; revision=48580
2013-03-27 03:57:38 +00:00
Gerald Combs 1ede51034e Add the release date for GTK+ 3.8.0.
svn path=/trunk/; revision=48579
2013-03-27 03:56:42 +00:00
Guy Harris 557df88def Thanks to a ton of patches from Ed Beroset and some other changes,
Wireshark compiles with -Wc++-compat and -Werror, at least on my machine
with llvm-gcc 4.2.1.  Make that a standard -W flag, to keep code that
won't pass a C++ compiler from sneaking back in (except in the files
that can't currently be compiled with -Werror for various reasons).

svn path=/trunk/; revision=48535
2013-03-24 18:24:29 +00:00
Guy Harris 60c7db1796 Some more tYpo/cut-and-pasteo fixes for my libnl changes.
svn path=/trunk/; revision=48408
2013-03-18 22:26:36 +00:00
Gerald Combs 4c87778b7a 1.9.1 → 1.9.2.
svn path=/trunk/; revision=48406
2013-03-18 22:18:52 +00:00
Guy Harris 4bbd68bf31 Fix some bugs in my libnl configuration changes found when testing on
Linux.

svn path=/trunk/; revision=48403
2013-03-18 22:05:28 +00:00
Guy Harris 08b1abe302 Don't bother doing any of the Linux-specific libnl or nl80211 checks on
non-Linux systems.  Warn the user if they specified --with-libnl on one
of those systems.

Allow the user to specify a particular libnl version with --with-libnl. 
If the user specifies --with-libnl=VERSION, and that libnl version isn't
found, fail.  No need to have an explicit "auto" argument - that's the
default.

Fix a typo in a definition message.

svn path=/trunk/; revision=48402
2013-03-18 21:33:38 +00:00
Evan Huus 81700ec3e0 Follow-up to r48395 and bug #8494.
Make libnl a --with flag instead of an --enable flag, since it is an optional
package. Make it a three-way flag, where 'no' disables, 'yes' enables (and
errors if it can't be found), and 'auto' enables (but doesn't complain if it
can't be found). Default to 'auto', which was our old behaviour.

[This is my first real foray into autoconf, so hopefully I got everything right]

svn path=/trunk/; revision=48398
2013-03-18 20:30:02 +00:00
Evan Huus a4cb525bad From Michael Weiser via Rick Farina via
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8494

Permit disabling libnl integration in ./configure

svn path=/trunk/; revision=48395
2013-03-18 19:01:41 +00:00
Gerald Combs fc6e505dac Switch to Asciidoc for the release notes. The initial conversion from
Docbook was done using Pandoc and cleaned up by hand. Add an
asciidoc.conf which contains macros for linking to Wireshark bugs and
CVE IDs.

Remove the release-notes.chm target. I don't think we ever used it and
we're probably better off generating PDF or HTML if we need something
fancier than plain text.

In configure.ac, consolidate program path discovery a bit and add a2x
discovery.

svn path=/trunk/; revision=48307
2013-03-15 00:08:18 +00:00
Bill Meier d56c18f586 Always build with GDK_PIXBUF_DISABLE_DEPRECATED, GDK_DISABLE_DEPRECATED, GTK_DISABLE_DEPRECATED
Also:	# Enable GSEAL when building with GTK > 2.20

svn path=/trunk/; revision=48149
2013-03-06 22:17:25 +00:00
Gerald Combs a79e5d5b94 Check to see if GLib's printf routines support the X/Open / POSIX
thousands grouping (') flag and use it in format_size if it's available.
As far as I can tell this translates to "everywhere except Windows and
OpenBSD". According to the various build logs at

https://build.opensuse.org/package/show?package=mingw32-glib2&project=windows%3Amingw%3Awin32

the OBS GLib packages enable GLib's internal printf implementation from
Gnulib which means we *should* be able to enable this on Windows.
Unfortunately this doesn't appear to be the case.

svn path=/trunk/; revision=48042
2013-03-03 19:34:58 +00:00
Balint Reczey 1eb5e1d739 Revert "Make Solaris Studio hide internal shared library symbols by default"
This reverts commit r48020.

svn path=/trunk/; revision=48022
2013-03-02 22:27:40 +00:00
Balint Reczey 73aafe2bc4 Make Solaris Studio hide internal shared library symbols by default
svn path=/trunk/; revision=48020
2013-03-02 22:11:26 +00:00
Balint Reczey 1ebdb2e521 Export libwireshark symbols using WS_DLL_PUBLIC define
Also remove old WS_VAR_IMPORT define and related Makefile magic
everywhere in the project.

svn path=/trunk/; revision=47992
2013-03-01 23:53:11 +00:00
Balint Reczey 45c2884f1b Export libwsutil symbols using WS_DLL_PUBLIC define
This change replaces *.def and *.sym file usage following the
guideline at http://gcc.gnu.org/wiki/Visibility

svn path=/trunk/; revision=47938
2013-02-28 14:09:46 +00:00
Jeff Morriss 6e79875c8d Look for desktop-file-install (to be used when installing wireshark.desktop).
svn path=/trunk/; revision=47907
2013-02-27 02:32:00 +00:00
Gerald Combs f14ad04d4d More 1.9.0 → 1.9.1 changes. Release note updates.
svn path=/trunk/; revision=47777
2013-02-20 21:17:30 +00:00
Guy Harris a26d951d8a Oops, the list is of Makefiles, not of directories that should contain
Makefiles.

svn path=/trunk/; revision=47712
2013-02-17 19:14:10 +00:00
Guy Harris c025682454 Add asn1/isdn-sup to the list of directories in which to generate a
Makefile.

svn path=/trunk/; revision=47711
2013-02-17 19:12:35 +00:00
Jeff Morriss de92a29c0c Move move of the Qt checks into AM_PATH_QT.
svn path=/trunk/; revision=47553
2013-02-08 02:51:14 +00:00
Jeff Morriss 4bbe78cbdf If we're compiling for Qt check if we have a working C++ compiler.
svn path=/trunk/; revision=47544
2013-02-08 01:16:27 +00:00
Jeff Morriss 8a6b4d596d QPropertyAnimation is needed for Qt builds and isn't present until Qt 4.6.0.
Add a (crude) check for the Qt version, making 4.6.0 the minimum.

The existing checks in configure.ac should be moved into into this new module.

svn path=/trunk/; revision=47537
2013-02-07 20:51:52 +00:00
Jeff Morriss ac48ce1d6d Use variables for the versions autoconf, GTK{2,3}, and glib we require.
Use them instead of repeating the same number several times.
AC_SUBST() them so we can pick them up in, for example, wireshark.spec.in .

svn path=/trunk/; revision=47481
2013-02-05 02:06:48 +00:00
Guy Harris 1d3e62c025 Add the warning flags to CFLAGS_FOR_BUILD, so any build tools we build
are built with warnings.

Also add compiler-specific flags (in this case, just the flags to enable
ANSI C compilation) to CFLAGS_FOR_BUILD.

svn path=/trunk/; revision=47479
2013-02-04 22:23:19 +00:00
Guy Harris 9b01e0470f "make dist" uses uic and moc, so we have to try to find them no matter
what.  If we don't find them, and the user specified --with-qt, fail (if
we haven't already failed to find Qt at all); if we don't find them, and
the user *didn't* specify --with-qt, just set UIC and MOC to "uic" and
"moc", which will fail on "make dist" but will at least allow the user
to build.

svn path=/trunk/; revision=47475
2013-02-04 20:03:01 +00:00
Gerald Combs d5081b3eb6 Make sure AM_DEFAULT_VERBOSITY is defined no matter what.
svn path=/trunk/; revision=47471
2013-02-04 17:37:25 +00:00
Gerald Combs 037a36531c Enable silent build rules by default.
svn path=/trunk/; revision=47467
2013-02-04 16:48:14 +00:00
Guy Harris 02da11d645 Sigh. At least on my Fedora 16 with KDE, the Qt 4 versions of uic and
moc are called uic-qt4 and moc-qt4.  Look for them by names, plural.

svn path=/trunk/; revision=47457
2013-02-03 21:39:11 +00:00
Jeff Morriss 5e543a3e28 From Hadriel Kaplan via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8202 :
AM_CONFIG_HEADER() is obsolete (and removed from automake 1.13 and later); use
AC_CONFIG_HEADERS instead.

svn path=/trunk/; revision=47091
2013-01-15 14:07:53 +00:00
Jeff Morriss 3be49bedd1 In AC_WIRESHARK_GCC_CFLAGS_CHECK() don't check if $3 (the program to be run)
exists by doing:

	if test "x$3" != "x" ; then

because if the program contains quotes it breaks the shell's parsing.
Instead test for the existence of $4 (which is mandatory if $3 is given).


Fix up the test program for -Wlogical-op so that it actually compiles
warning-free (at least on my system) when the compiler doesn't have the bug
we're checking for.

svn path=/trunk/; revision=46926
2013-01-04 02:12:51 +00:00
Guy Harris fe350d7cbd On the Ubuntu buildbot, this says -Wlogical-op doesn't work, but it
worked OK before.  In the test program, try declaring foo() before
defining it, in case the problem is that --enable-extra-gcc-checks
enables checking for functions that weren't declared before they were
defined, so the lack of that declaration may have caused a separate
warning.

svn path=/trunk/; revision=46924
2013-01-03 22:16:53 +00:00
Jeff Morriss 69d42810f6 Don't use -Wlogical-op if it causes gcc to generate warnings about logical
operations always evaluating to the same value in (the expansion of)
strchr().

See: https://www.wireshark.org/lists/wireshark-dev/201212/msg00136.html

svn path=/trunk/; revision=46916
2013-01-03 16:50:54 +00:00
Gerald Combs a50850c0cd Fix UI library dependency checking.
svn path=/trunk/; revision=46902
2013-01-02 19:19:10 +00:00
Gerald Combs 749d5d1b95 Make -Wstrict-prototypes C-only.
svn path=/trunk/; revision=46899
2013-01-02 16:43:57 +00:00
Gerald Combs b62d650ba1 Play Three-card^WTwo-link-target Monte with Autotools.
svn path=/trunk/; revision=46887
2013-01-01 23:39:00 +00:00
Gerald Combs 4ecf61b0df If we're linking with Qt pass a hint to automake that it needs to use c++
linking.

svn path=/trunk/; revision=46878
2012-12-31 21:29:47 +00:00
Gerald Combs 7256f90069 Make sure we link Wireshark with the right UI library.
svn path=/trunk/; revision=46869
2012-12-31 06:09:19 +00:00
Gerald Combs 6c68031d7e Keep PKG_CHECK_MODULES from returning an error if it doesn't find
QtWidgets or QtPrintSupport.

svn path=/trunk/; revision=46867
2012-12-31 04:56:11 +00:00
Bill Meier 114a40ae09 '-Wno-error=unused-but-set-variable' no longer required;
svn path=/trunk/; revision=46859
2012-12-30 14:34:29 +00:00
Guy Harris e0b3a943f7 Move the PIE checks after the warning checks, to keep the warning checks
together, and add a comment explaining what's being done.

svn path=/trunk/; revision=46854
2012-12-29 22:50:48 +00:00
Bill Meier 1a97d3395a Cosmetic: Add two blank lines for readability.
svn path=/trunk/; revision=46848
2012-12-29 20:53:44 +00:00
Guy Harris 15feaf9744 OK, I give up.
svn path=/trunk/; revision=46759
2012-12-26 07:08:24 +00:00
Guy Harris 8ed7a73e22 Fix a bunch of warnings.
Cast away some implicit 64-bit-to-32-bit conversion errors due to use of
sizeof.

Cast away some implicit 64-bit-to-32-bit conversion errors due to use of
strtol() and strtoul().

Change some data types to avoid those implicit conversion warnings.

When assigning a constant to a float, make sure the constant isn't a
double, by appending "f" to the constant.

Constify a bunch of variables, parameters, and return values to
eliminate warnings due to strings being given const qualifiers.  Cast
away those warnings in some cases where an API we don't control forces
us to do so.

Enable a bunch of additional warnings by default.  Note why at least
some of the other warnings aren't enabled.

randpkt.c and text2pcap.c are used to build programs, so they don't need
to be in EXTRA_DIST.

If the user specifies --enable-warnings-as-errors, add -Werror *even if
the user specified --enable-extra-gcc-flags; assume they know what
they're doing and are willing to have the compile fail due to the extra
GCC warnings being treated as errors.

svn path=/trunk/; revision=46748
2012-12-26 05:57:06 +00:00
Guy Harris 6549d5a47f Expand the comment about alignment.
svn path=/trunk/; revision=46642
2012-12-20 21:02:22 +00:00
Jeff Morriss 550c36d042 32-bit Linux (at least from Redhat) has a host_cpu of i686 (not i386). Don't force 8-byte alignment on such systems.
svn path=/trunk/; revision=46641
2012-12-20 20:52:26 +00:00
Jeff Morriss cb994b4f80 -pie also needs -fPIE (at least sometimes)
svn path=/trunk/; revision=46610
2012-12-19 03:50:52 +00:00
Jeff Morriss 8a916449e5 As suggested in https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8076 :
Enable PIE (if the compiler supports it) when compiling dumpcap.  Do this
regardless of whether we're configured to install dumpcap setuid-root because
some users will end up running dumpcap as root regardless of how we were
configured.

svn path=/trunk/; revision=46608
2012-12-19 02:09:48 +00:00
Guy Harris 8b2fd19527 It's just compiling, not linking, so we don't need to have the external
function actually *exist*.

Declare foo() before defining it - if we configure with
--enable-extra-gcc-checks, given that we're building with -Werror (so
that we find out whether the compiler issues a warning for a particular
construct), we have to avoid constructs that will provoke *other*
warnings.

svn path=/trunk/; revision=46488
2012-12-10 06:47:36 +00:00
Guy Harris 0fbf4b5b1c Put back the extra checks for -Wshadow; I guess I'll need to set up a
Ubuntu 12 VM to figure out why -Wshadow was rejected, as it doesn't seem
to cause bogus errors.

svn path=/trunk/; revision=46477
2012-12-09 04:18:52 +00:00
Guy Harris 8d7e398dc7 Force -Wshadow on - it wasn't included on the Ubuntu buildbot, so I want
to see whether it really doesn't work right (i.e., warns bogusly about
variables in prototype definitions of function pointers shadowing
variables) or if the test fails for some other reason.

svn path=/trunk/; revision=46476
2012-12-09 04:00:03 +00:00
Guy Harris b961881fb3 Add some additional arguments to AC_WIRESHARK_GCC_CFLAGS_CHECK() to make
it do an additional check, if it finds that a given compiler option is
supported by the compiler, to see whether it's supported but
undesirable.  The arguments are a chunk of code to try to compile with
-Werror, and a string to be used in the "checking..." message printed
when trying to compile the cunk of code.

Try enabling -Wshadow again, but have it check whether

	extern int atoi(char *p);

	int
	foo(char *p)
	{
		int (*fptr)(char *p) = atoi;

		return fptr(p) * 2;
	}

compiles with -Wshadow and -Werror, so that we don't use -Wshadow with
compilers that complain about that; some older versions of GCC complain
about that, and it's really not worth our effort to eliminate or rename
arguments in function prototypes to make -Wshadow work even with those
compilers.

svn path=/trunk/; revision=46475
2012-12-09 02:52:33 +00:00
Bill Meier 9384bedb13 Revert SVN #46429 again (for now);
It appears that the compiler on
the OSX-10.5-x86 buildbot must be pretty old.

All the other *nix buildbot compilers do not
check the dummy param names used in the definition
of 'xxx' below to see if they are shadowing
anything.

void foo(tvbuff_t tvb, ...) {
  'void (*xxx)(tvbuff_t tvb, ....) = NULL;'
  ...
}

I do seem to remember reading that gcc once
had this issue but was fixed eventually.


svn path=/trunk/; revision=46430
2012-12-06 23:11:54 +00:00
Bill Meier c2639439e4 Enable [-Wshadow] as default for *nix compilers] (C only): 2nd try.
svn path=/trunk/; revision=46429
2012-12-06 22:15:21 +00:00
Guy Harris 123c134c24 And some other stuff moved to QtPrintSupport.
svn path=/trunk/; revision=46383
2012-12-05 00:50:51 +00:00