Commit Graph

86 Commits

Author SHA1 Message Date
Jakub Zawadzki 038aa2a616 Add fuzzshark to cmake/autotools.
Add fuzzshark target to make sure that oss-fuzzshark always build.

Change-Id: I802b679c18023daa1475a54bae722b5e90c72a59
Reviewed-on: https://code.wireshark.org/review/24716
Petri-Dish: Jakub Zawadzki <darkjames-ws@darkjames.pl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2017-12-07 23:26:52 +00:00
João Valverde 8fa4a440a8 GTK: Remove packet editor
Removes limited experimental feature for deprecated UI.

Change-Id: Ib3ccfae89dd2a674ebbde346a442fa1cf6587f26
Reviewed-on: https://code.wireshark.org/review/24563
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2017-11-24 05:13:42 +00:00
Gerald Combs 0b2ecccd86 Add ThreadSanitizer configure-time options.
Add ENABLE_TSAN and enable-tsan options to CMake and Autotools
respectively which enable ThreadSanitizer, similar to AddressSanitizer
and UndefinedBehaviorSanitizer.

Change-Id: I79adf5c1516b0938f140bbf501c181bf14d7619b
Reviewed-on: https://code.wireshark.org/review/24515
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2017-11-21 16:55:18 +00:00
João Valverde 262a84c384 Fix (and chop) static build option
This sets the scope of the static build option to Wireshark support
libraries only.

Before the patch:

Static plugins don't work with CMake and autotools.

autotools static build is broken, and most likely will always be, as
building Wireshark all-static is difficult and time-consuming.

After the patch:

For CMake Wireshark will be built with static or shared libraries and
dynamic plugins. Everything just works. CMake apparently doesn't want
you building static and shared libraries at the same time.

For autotools Wireshark will be built with shared libraries by default.
--disable-shared and --enable-static options work as usual. Dlopened
plugins are not built if --disable-shared is given to configure (to
disable shared libraries). This is a limitations imposed by libtool.

Tested on Linux. This removes broken support for building plugins
statically.

Change-Id: Ib8e8176976f136eea93a2ce8f9857b6cf9bec64c
Reviewed-on: https://code.wireshark.org/review/24241
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot
Reviewed-by: João Valverde <j@v6e.pt>
2017-11-19 20:16:50 +00:00
Graham Bloice bab9abfb7d CMake: Clean up Windows build
Remove options that aren't supported on Windows
Don't use pkgconfig on Windows

Change-Id: I79718a1c43f56a9ec88f690490931b80b727dd68
Reviewed-on: https://code.wireshark.org/review/24481
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-11-18 20:58:31 +00:00
João Valverde 711f69c807 CMake: Don't offer unsupported options
Change-Id: I45872dad3c7133453790fb284121fb4eaf9fac67
Reviewed-on: https://code.wireshark.org/review/24240
Reviewed-by: João Valverde <j@v6e.pt>
2017-11-05 10:39:25 +00:00
Stig Bjørlykke 17651065a5 cmake: Add option to disable -Wframe-larger-than
In some editors (like Xcode) it's possible to turn on and off
ASAN and UBSAN independent of the settings in CMake.

This option will disable the -Wframe-larger-than= flag even if
ASAN or UBSAN are not turned on in CMake.

Change-Id: I70b1ae544fe87093d0f5ce7ceb191f33399191ea
Reviewed-on: https://code.wireshark.org/review/23567
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2017-09-17 17:20:34 +00:00
Peter Wu 26de091d1b cmake: add ENABLE_NGHTTP2 option
Allow nghttp2 to be disabled, similar to --without-nghttp2.

Change-Id: Id27ab12ef7c24a535824f762ce2feb20fba9e065
Reviewed-on: https://code.wireshark.org/review/23247
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2017-08-28 19:00:40 +00:00
Gerald Combs 537b083e02 Sync some CMake and Autotools install behaviors.
Adjust the following CMake and Autotools behaviors in order to
synchronize their respective install behaviors:

- Disable tfshark by default in CMakeOptions.txt
- Add profiles/Bluetooth/preferences to Makefile.am
- Add missing captype and ciscodump entries to doc/Makefile.am
- Install help/faq.txt on all platforms in CMakeLists.txt
- Add BUILD_corbaidl2wrs, BUILD_dcerpcidl2wrs, and BUILD_xxx2deb
  options to CMake and use them to adjust the corresponding parts
  of the build.
- Pull the DCERPC idl2wrs build steps into the top-level
  CMakeLists.txt.

This change doesn't sync everything. Some installed content still
diverges, including the following:

- CMake installs a bunch of modules into lib/wireshark:
    FindGLIB2.cmake
    FindWireshark.cmake
    FindWSWinLibs.cmake
    LocatePythonModule.cmake
    UseAsn2Wrs.cmake
    UseMakeDissectorReg.cmake
    WiresharkConfig.cmake
    WiresharkConfigVersion.cmake

  Do we need any or all of these? If so, should the Autotools behavior
  be synced accordingly?

- Autotools installs libtool .la files. It also installs
  wireshark-gtk.desktop unconditionally.

Change-Id: I7846efe08f7139c31b6ceca6f08a1fa5168b3e22
Reviewed-on: https://code.wireshark.org/review/23041
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: Michael Mann <mmann78@netscape.net>
2017-08-12 13:53:59 +00:00
Pascal Quantin 3e54cabf81 Add G.729 decoding based on bcg729 library
Bug: 13635
Change-Id: Ic22a0719a59da13e51425aeb747e88caca0d6512
Reviewed-on: https://code.wireshark.org/review/22808
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2017-07-30 05:22:35 +00:00
Peter Wu 90db2bb2c8 Add --enable-ubsan/ENABLE_UBSAN for UndefinedBehaviorSanitizer
UndefinedBehaviorSanitizer (UBSan) can catch a lot of issues
(out-of-bounds memory access, integer overflows, undefined shifts,
etc.) and is recommended during development using GCC or Clang. Add an
option for it (similar to ASAN support).

Change-Id: Ib0db50cee9eb5af0f5c4f06e07f3899a3a34702d
Reviewed-on: https://code.wireshark.org/review/21673
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>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2017-05-16 10:38:50 +00:00
Ahmad Fatoum cfab5ef035 Add libxml2 as optional dependency
This can be used by dissectors that need to parse out-of-band
configuration.

Change-Id: I13c0a2f408fb5c21bad7ab3d7971e0fa8ed7d783
Reviewed-on: https://code.wireshark.org/review/20912
Reviewed-by: Roland Knall <rknall@gmail.com>
2017-04-19 10:41:55 +00:00
Guy Harris 357cfd3b03 A bunch of "{Mac} OS X" -> "macOS" changes.
Avoid anachronisms, however; there was no "macOS 10.0" or even "OS X
10.0", for example.  It was "Mac OS X" until 10.8 (although 10.7 was
sometimes called "OS X" and sometimes called "Mac OS X"), and it was "OS
X" from 10.8 to 10.11.

Change-Id: Ie4a848997dcc6c45c2245c1fb84ec526032375c3
Reviewed-on: https://code.wireshark.org/review/20933
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-04-05 19:16:22 +00:00
Joerg Mayer 0b6b152694 Remove echld/.
It has been unsupported for some years and when talking about removing it
in the past I received some positive and no negative feedback.

There is one instance of echld left:
capchild/capture_sync.c:                 * echld might have already reaped the child.

Can that case be removed or should be comment be updated to something more
accurate? (left for a separate patch)

Change-Id: Idac397158dd86fd0728eb95379449ee4a463fc28
Reviewed-on: https://code.wireshark.org/review/20619
Petri-Dish: Jörg Mayer <jmayer@loplof.de>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2017-03-19 15:13:14 +00:00
Roland Knall 321386e9f4 PluginIF: AdditionalToolbar
Creates an interface for plugins and other parts of the code, to
add a new toolbar to the system and have various widget types interact
with this toolbar.

All toolbars added via this interface, will be added to an additional
submenu called "Additional Toolbars" within Wireshark.

Also a demo plugin is being provided, demonstrating various features
of the toolbar, including updating the gui elements. It also demonstrates
how to update toolbar items.

Change-Id: I8d0351224b3d7f4b90220d58970b51695551d7e3
Reviewed-on: https://code.wireshark.org/review/19803
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
2017-02-24 08:12:46 +00:00
Peter Wu 6b84ddee83 Make Libgcrypt a mandatory dependency
Removed all guards for HAVE_LIBGCRYPT, change autotools and CMake to
error out if it is not available. Update release notes, developer
documentation and README with the new status. Clarify relation with
GnuTLS in macosx-setup.sh. Install Libgcrypt via brew script.

Motivation for this change is that many dissectors depend on Libgcrypt
and having it optional increases the maintenance burden (there have been
several compile issues in the past due to the optional status).
Furthermore, wsutil has crypto code that can be replaced by Libgcrypt.

Change-Id: Idf0021b8c4cd5db70b8766f7dcc2a8b3acbf042f
Link: https://www.wireshark.org/lists/wireshark-dev/201702/msg00011.html
Reviewed-on: https://code.wireshark.org/review/20030
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2017-02-13 18:35:47 +00:00
Dario Lombardo bceb614d15 sharkd: add cmake option.
Change-Id: I4f961061f67aab86270f03c8f320245cf80ab70e
Reviewed-on: https://code.wireshark.org/review/19782
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Dario Lombardo <lomato@gmail.com>
2017-01-25 15:06:46 +00:00
Peter Wu f5e22a1487 codecs: Add support for G.722 and G.726
Integrate the Spandsp library for G.722 and G.726 support. Adds support
for G.722 and all eight variants of G.726.

Note: this also fixes a crash in Qt (buffer overrun, reading too much
data) caused by confusion of the larger output buffer (resample_buff)
with the smaller input buffer (decode_buff). It was not triggered before
because the sample rate was always 8k, but with the addition of the new
codecs, a different sample rate became possible (16k).

Fix also a crash which occurs when the RTP_STREAM_DEBUG macro is enabled
and the VOIP Calls dialog is opened (the begin frame, start_fd, is not
yet known and therfore a NULL dereference could occur).

Passes testing (plays normally without bad RTP timing errors) with
SampleCaptures files: sip-rtp-g722.pcap and sip-rtp-g726.pcap. Tested
with cmake (Qt), autotools (Qt and GTK+) with ASAN enabled.

Bug: 5619
Change-Id: I5661908d193927bba50901079119eeff0c04991f
Reviewed-on: https://code.wireshark.org/review/18939
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>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2016-12-06 17:51:47 +00:00
Gerald Combs 8e5e6ddc5e CMake: Enable ccache for gcc and clang.
Add an option to check for and use ccache. Disable it by default.

Change-Id: Ifc928d22715b7e06e53115455b31dbeaf2ee8332
Reviewed-on: https://code.wireshark.org/review/18715
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2016-11-09 18:29:11 +00:00
Gerald Combs d3995b5248 Disable GTK+ by default.
I suggested disabling GTK+ by default at Sharkfest EU and no one
objected, hence this patch.

Disable it by default in both Autotools and CMake. Make sure it's
enabled for Debian packaging. The RPM packaging enables GTK3 explicitly
so no change appears to be necessary there.

Change-Id: If5daeaef4bb26cf60006bc8883be15b2cf6c6ae4
Reviewed-on: https://code.wireshark.org/review/18256
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2016-10-19 20:35:31 +00:00
Benoît Canet 47649d1c7f cql: add lz4 and snappy decompression
We do not use the STARTUP negotiation since a stream
can be captured in its middle but try to decompress
if the flag is present and fallback if it fails.

Change-Id: Iecbf49a45220b04be7808869c9884548eb1e7694
Signed-off-by: Benoît Canet <benoit@scylladb.com>
Reviewed-on: https://code.wireshark.org/review/17952
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2016-10-17 18:28:45 +00:00
Dario Lombardo 47650d357e extcap: add udpdump.
Udpdump is a generic UDP receiver that exports datagram in PCAP format.

Change-Id: I52620a92b12530b6f9b5449c43e692663acdfc14
Reviewed-on: https://code.wireshark.org/review/17195
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: Roland Knall <rknall@gmail.com>
2016-09-16 08:07:30 +00:00
Peter Wu 4add8b6b45 cmake: add idl2wrs-dissectors target for DCERPC
Add a callable target such that dissectors can be generated without the
AUTOGEN_dcerpc option.

Modelled after the pidl CMakeLists.txt file and target. This approach
has the advantage over the previous implementation such that the clean
target does not remove the packet-dcerpc-X.c files.

Change-Id: I3226937eaa76dffa253df9d4f989421d5faa3f3f
Reviewed-on: https://code.wireshark.org/review/15989
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2016-06-27 21:08:45 +00:00
Peter Wu deef1dc1ff cmake: add PIDL dissector generation support
The dissectors list is generated based on regex magic on pidl/Makefile.
A dssetup.cnf file is added because all other protocols already have
this file. The srvsvc and wkssvc protocols cannot be built for some
reason, so just disable it (this mirrors the original Makefile).

Add frsrpc and samr to PIDL_DISSECTOR_SRC list which was missing
compared to autotools.

Tested with an out-of-tree and in-tree build with cmake (make and ninja):

    cmake -GNinja && ninja -v pidl-dissectors
    touch epan/dissectors/pidl/dfs/dfs.idl && ninja generate_dissector-dcerpc-dfs
    cmake . && make -C epan/dissectors/pidl generate_dissector-dcerpc-dfs

Change-Id: Id8bf34e76c20053a8a393024560d90a048473e03
Reviewed-on: https://code.wireshark.org/review/15962
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-06-19 02:28:53 +00:00
João Valverde 0035e9d9dd autotools: Reorder extra compiler warnings to come last
Also try to improve check hf description.

Change-Id: I7a1e5997dfc7a97cc62e2f2f9cc7c5026468451e
Reviewed-on: https://code.wireshark.org/review/14623
Reviewed-by: João Valverde <j@v6e.pt>
2016-03-25 00:49:30 +00:00
Dario Lombardo a6921c79ab extcap: add ciscodump.
Ciscodump is a new extcap that allows packet capture
on Cisco routers (IOS 12.4 and later) through SSH.

Change-Id: Ic9c5be01d3bd0112116f7fc9fa10e26c1552b007
Reviewed-on: https://code.wireshark.org/review/13886
Reviewed-by: Roland Knall <rknall@gmail.com>
2016-03-24 12:07:28 +00:00
João Valverde 7a1d3f67ac Remove ADNS support
Relevant mailing list message:

  https://www.wireshark.org/lists/wireshark-dev/201503/msg00007.html

Change-Id: I0cff6d4d64fb52a651bcf6b28c183e43653b1cc2
Reviewed-on: https://code.wireshark.org/review/14519
Reviewed-by: João Valverde <j@v6e.pt>
2016-03-21 19:32:00 +00:00
Alexis La Goutte 4f3a88989e Add conflict check filter
Set ENABLE_CHECK_FILTER to 1 for get list of display filter with conflict...

Ping-Bug:2402
Change-Id: I8d56b1573120d1a29d437aae1088be242e15e9a3
Reviewed-on: https://code.wireshark.org/review/13644
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>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2016-03-07 07:57:29 +00:00
Dario Lombardo ac0eb6043b extcap: add randpktdump, a random packet generator.
This new extcap is for testing and educational purpose.
It relies on rankpkt-core functions to generate random packets.

Change-Id: If6890f0673545682995a2079458108edc0913b30
Reviewed-on: https://code.wireshark.org/review/11764
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>
2015-12-22 12:24:16 +00:00
Dario Lombardo d6da95231e extcap: add sshdump.
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>
2015-11-19 15:29:18 +00:00
Guy Harris 0b05086754 Apple calls it just "OS X" these days.
Change-Id: I98905988ceb394d27307d1cbe883d8fe95ac23e4
Reviewed-on: https://code.wireshark.org/review/11703
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-10 21:08:45 +00:00
Michal Labedzki b99cf21c25 extcap: Add support for Android - androiddump
androiddump is extcap program that can be used with Android devices
(need Android SDK in system PATH). Supported is Logcat/Logger logs and
Bluetooth interfaces for all Android to this day (Lollipop).

Please note that it will work also for FirefoxOS.

Interfaces:
1. Logcat Main (binary or text)
2. Logcat System (binary or text)
3. Logcat Events (binary or text)
4. Logcat Radio (binary or text)
5. Logcat Crash (text; Lollipop)
6. Bluetooth Hcidump (<Kitkat)
7. Bluetooth Bluedroid External Parser (Kitkat)
8. Bluetooth BtsnoopNet (Lollipop)

Change-Id: I26e4cd1a37a6af805f8b932399b4aa44ee7b5a80
Reviewed-on: https://code.wireshark.org/review/7475
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
2015-04-08 09:57:24 +00:00
Alexis La Goutte 0dd7714d4d Add AddressSanitizer (ASAN) build option
--enable-asan for autotools
-D ENABLE_ASAN:BOOL=TRUE for CMake

Need Clang/LLVM >= 3.1 or GCC >= 4.9

More information about ASAN https://code.google.com/p/address-sanitizer/wiki/AddressSanitizer

Change-Id: I833d4216d9508b8f7550ebc1dff6326734bdb53a
Reviewed-on: https://code.wireshark.org/review/1727
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2015-02-18 18:05:53 +00:00
Gerald Combs cd7408e526 CMake: Enable DocBook on Windows.
Add a wrapper script and CMake macros which lets us run Cygwin's a2x
from Windows. Add *another* wrapper script that ignores the return value
of hhc.exe.

Move the ASCIIDOC2DOCBOOK macro to FindASCIIDOC.cmake. Add FindHHC.cmake.
Add hints to FindFOP.cmake.

Use unique file names in the HTML Help chain in an attempt to avoid a
race condition.

To do:
- Fix curly quote in HHC title.

Change-Id: I9b154b7fbd02703656e2ab380199ec0a6db4e36d
Reviewed-on: https://code.wireshark.org/review/6379
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-01-08 22:05:38 +00:00
Gerald Combs a70929c381 CMake: Add an ENABLE_CODE_ANALYSIS option.
Currently Visual Studio-only. Enabling it adds /analyze:WX- to
LOCAL_CFLAGS, similar to config.nmake.

Change-Id: Ida68831e85f5f04b9f84faa95a39fed24e5f490d
Reviewed-on: https://code.wireshark.org/review/6346
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-01-06 18:47:54 +00:00
Guy Harris 8fe6b04ba7 Note why we only default to enabling libnl on Linux.
(Just as we note why we only check for it on Linux in autotools.)

Change-Id: I58c1f31fdf667ed554a4e911df13e5c864171ac0
Reviewed-on: https://code.wireshark.org/review/6315
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-05 00:27:08 +00:00
Michal Labedzki 657e42bc40 cmake: Do not hide possible options for other platforms
Change-Id: I408620cb39a25a4104e9ea562f6512f4196ae32f
Reviewed-on: https://code.wireshark.org/review/5766
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-12-15 14:25:00 +00:00
Gerald Combs 1ce64e75ab CMake: Make it easier to generate the release notes & NEWS.
Add convenience targets for generating the release notes and the NEWS
file. Make sure we don't run multiple instances of a2x + AsciiDoc at the
same time.

Add the docbook directory to the build by default unless we're running
Windows. Explain why we don't yet build docs on Windows. Make each
docbook makefile target optional.

Split the ENABLE_GUIDES option into ENABLE_HTML_GUIDES and
ENABLE_PDF_GUIDES. Add a default "all_guides" target if either is on.
Remove the Debian patch that hacked around the PDF requirement.

Copy ws.css to the docbook build directory. Don't build PDF release
notes. I'm not sure we ever used them and I don't want to install Java
and FOP just to make a release.

Change-Id: Ia2f710000c17f9e0b4b514fd373d9a5902889553
Reviewed-on: https://code.wireshark.org/review/5712
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-12-11 21:41:44 +00:00
Gerald Combs e00ac05cf3 CMake: Build an application bundle (Wireshark.app) on OS X.
Add an ENABLE_APPLICATION_BUNDLE option which is enabled by default on
OS X and disabled elsewhere. The bundle is currently bare-bones and only
contains the main executables, Info.plist, and application icon.

Capitalize the main application name when ENABLE_APPLICATION_BUNDLE is
set and on Windows.

Start updating CPackConfig.txt for OS X packaging.

To do:

  - Add supporting libraries and frameworks.

  - Make the bundle standalone. I.e. call FIXUP_BUNDLE or
    replicate the relevant parts of osx-app.sh

Change-Id: I4e25abd3b8cbe121ec8615b98706a15c58812cdb
Reviewed-on: https://code.wireshark.org/review/4577
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-09 20:07:48 +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
Graham Bloice 28bea6f796 Add captype to the CMake options so it gets built if required
Change-Id: I915a7caa32a1f644c30c1579a8ad15e39db9e02a
Reviewed-on: https://code.wireshark.org/review/3799
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2014-08-24 08:05:06 +00:00
Graham Bloice 06565a7424 Add WinSparkle to the CMake build to bring it into line with
the nmake build

Change-Id: I944d0fe15b396cad4d0054b6fc359acb42ae3c9c
Reviewed-on: https://code.wireshark.org/review/3755
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2014-08-22 22:04:33 +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
Joerg Mayer 72078cfc91 Undo more of Graham's changes:
- We don't expect to find all packages and it is normally OK for
  some to fail.

Change-Id: I46c5edbf8ea3635fd703b222d4a9beb5ebb4745a
Reviewed-on: https://code.wireshark.org/review/2406
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-06-18 19:28:49 +00:00
Joerg Mayer 289aa37d8d Remove detection of Python libraries: They are not used anymore.
Change-Id: If42bb16d5c6202889ff933af6c9d974866d2a950
Reviewed-on: https://code.wireshark.org/review/2290
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-06-17 00:44:53 +00:00
Graham Bloice 561460160a Update CMake build for win32 to build QT again, and to find
GLib and GThread libs

Change-Id: If7e8ebc46f42389d174959303e13cde20687ae8a
Reviewed-on: https://code.wireshark.org/review/2010
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-06-08 12:13:35 +00:00
Guy Harris 2975593227 libnl is a Linux-specific library; don't offer libnl support except on Linux.
Change-Id: I79a98d1f9b3559fe76feed1038d673dd3424409c
Reviewed-on: https://code.wireshark.org/review/1515
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-05 18:23:10 +00:00
Graham Bloice 14017dc6f1 Set CMake defaults for Windows build to:
Use GTK2 as per nmake.
  Not to build the dumpabi executables.

Change-Id: Ia28cf1a80b81e10595f4af5bbd46da3b3675faf5
Reviewed-on: https://code.wireshark.org/review/1376
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-04-29 04:25:26 +00:00
Guy Harris fde8ef0713 Rename ENABLE_EXTRA_COMPILER_CHECKS to ENABLE_EXTRA_COMPILER_WARNINGS.
This matches the current name of the --enable-extra-compiler-warnings
option in autotools.

Fix the documentation of the option to match.

(Note that "compiler" won't necessarily always be GCC or Clang, and
won't necessarily always use -W for warning options, so speaking of them
as "-W checks" isn't future-proof.)

Change-Id: I2e142532e78be3c8051f1e738b3109a83e7d10dc
Reviewed-on: https://code.wireshark.org/review/1231
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-20 23:54:46 +00:00
Guy Harris cbdd515491 Rename ENABLE_EXTRA_GCC_CHECKS to ENABLE_EXTRA_COMPILER_CHECKS.
This matches with the change made to CMakeLists.txt.

Change the description as well - the name was changed because those
extra checks don't just apply to GCC.

Change-Id: Id81c081574c42e11144d119c8af45875248578b5
Reviewed-on: https://code.wireshark.org/review/1229
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-20 23:31:49 +00:00