Commit Graph

54 Commits

Author SHA1 Message Date
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
Guy Harris f456a6e0a5 Get rid of ENABLE_EXTRA_CLANG_CHECKS.
It no longer does anything, and it refers to variables that no longer
exist, as we're not distinguishing between extra GCC warning flags and
extra CLang warning flags any more.

Change-Id: If0b346f669f2573e46261e6da4dc78e96ef79a8f
Reviewed-on: https://code.wireshark.org/review/1228
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-20 23:22:33 +00:00
Alexis La Goutte 757aa33220 Continue to remove $Id$ from top of file
(Using sed : sed -i '/^\# \$Id\$/,+1 d') (start with dash)

Change-Id: Ia4b5a6c2302f6a531f6a86c1ec3a2f8205c8c2dd
Reviewed-on: https://code.wireshark.org/review/881
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-31 18:48:06 +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
Michal Labedzki 5e27a39fc6 Add Bluetooth SBC Codec support in cmake
SBC Codec can be optionally linked with Wireshark to provide
ability to playing RTP/SBC stream by RTP Player.

Change-Id: Iffbae16a741ffbfd0fb55a300064739d2c27c2e5
Reviewed-on: https://code.wireshark.org/review/223
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-02-17 21:44:17 +00:00
Jörg Mayer 2a21b01fbb Add option to specify special permissions for dumpcap during cmake phase:
set(DUMPCAP_INSTALL_OPTION   <val>)
where val is one of "normal" "suid" "capabilities"

Some things left to do:
- Error out in cmake if setcap isn't found or libcap isn't found.
- Move multivalue option handling into it's own macro (-file) with
  value checking


svn path=/trunk/; revision=54840
2014-01-19 00:48:22 +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
Jörg Mayer a00f13bbc3 Turn WANT_PACKET_EDITOR into an option until such a time that
it isn't a compile time option any more.

svn path=/trunk/; revision=53147
2013-11-07 20:32:41 +00:00
Jörg Mayer 2a59ee58b8 Add Airpcap detection, use it by default on win32
QT5 compile working - NOT. It's almost working, except
that I *still* need to get GTK detection working on Win :-(


svn path=/trunk/; revision=52513
2013-10-10 20:35:32 +00:00
Jörg Mayer 689618cd85 Build qtshark by default, use qt5 by default. To turn
off building qtshark do "cmake ... -DBUILD_qtshark=OFF ..."
or change your local copy of CMakeOptions.txt

Small update to README.cmake (when running nmake I recommend
using /X- to avoid some (viewing) corruptions.


svn path=/trunk/; revision=52501
2013-10-10 17:28:50 +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
Guy Harris 76f24a97e6 Clean up capitalization in some option descriptions.
svn path=/trunk/; revision=50850
2013-07-23 19:50:52 +00:00
Jörg Mayer f506b45c32 Add option for echld builds (forgot that in a previous commit)
svn path=/trunk/; revision=50759
2013-07-21 18:10:30 +00:00
Jörg Mayer c3d7f57f58 Add Qt5 build support with cmake. Just do cmake ... -DENABLE_QT5=ON ...
svn path=/trunk/; revision=49042
2013-04-25 23:04:19 +00:00
Martin Mathieson 60fb63783a From Jim Young, bug 7745.
Add Makefile support for reordercap.

svn path=/trunk/; revision=45090
2012-09-24 10:23:20 +00:00
Jörg Mayer d8a7eed0a7 Get netlink detection working with cmake (not complete)
svn path=/trunk/; revision=44791
2012-09-06 10:37:17 +00:00
Jörg Mayer c0da019caa Complete cmake support for netlink detection
svn path=/trunk/; revision=43421
2012-06-20 20:59:43 +00:00
Jörg Mayer 0e3ac2fdf0 Prepare the cmake infrastucture for eventually building
wireshark and qtshark simultanously.
The "only" missing thing for this is now ui/qt/CMakeLists.txt ;)

svn path=/trunk/; revision=40799
2012-02-02 00:46:02 +00:00
Jeff Morriss 0a6eca4097 Bug 6448 says the embedded Python stuff does not really work.
And if I run Valgrind with Python enabled, I get pages of errors related to it.

So: disable Python by default.

svn path=/trunk/; revision=40602
2012-01-20 03:20:35 +00:00
Gerald Combs 7d442f4c22 Change the use of threads from "mostly always, depending on your
configure options and Gtk+ and GLib versions" to "always".

svn path=/trunk/; revision=39751
2011-11-07 23:42:53 +00:00
Jörg Mayer 576ab168c9 Get rid of (hopefully) all configure options to enable MAIN_MENU_USE_UIMANAGER
as it is the only option left.

svn path=/trunk/; revision=39138
2011-09-25 21:27:19 +00:00
Jörg Mayer 3a48ef3e02 Make it possible to disable building with libpcap.
svn path=/trunk/; revision=38795
2011-08-30 11:44:21 +00:00
Stig Bjørlykke 5603cef9f2 Remove support for libpcre, we use GRegex in GLib.
svn path=/trunk/; revision=38683
2011-08-23 09:25:06 +00:00
Jörg Mayer 7af4e6942f Fix a typo
svn path=/trunk/; revision=38663
2011-08-22 08:42:52 +00:00
Jörg Mayer cf889e0707 Rename UI_MANAGER to ENABLE_UI_MANAGER, put it into
CMakeOptions and enable it by default.
Update comment in proto_help that this feature is no
  longer built by default.
Enable PYTHON by default.


svn path=/trunk/; revision=38659
2011-08-22 08:08:38 +00:00
Michael Tüxen 7b52f1bb96 Add option for USE_THREADS.
svn path=/trunk/; revision=38061
2011-07-16 13:05:46 +00:00
Guy Harris 7abaf305ba Add a comment noting why AirPcap support cannot be unconditionally
enabled by default (i.e., it's Windows-only).  InterCap the name.

svn path=/trunk/; revision=37992
2011-07-12 17:19:17 +00:00
Michael Tüxen a624f20859 Disable airpcap by default. This matches the configure script.
svn path=/trunk/; revision=37991
2011-07-12 11:10:57 +00:00
Jörg Mayer 5b22003e93 Add configure options to make change the default file format
from pcap-ng to pcap.
Add a comment that GTK3 doesn't build yet.

svn path=/trunk/; revision=37701
2011-06-17 22:57:02 +00:00
Jörg Mayer 48904e0a71 Add GTK3 cmake options. It doesn't build, just like its configure pendant.
svn path=/trunk/; revision=37623
2011-06-08 18:10:03 +00:00
Stephen Fisher a96e3dbe3b A little more old packet list cleanup
svn path=/trunk/; revision=36172
2011-03-08 20:23:48 +00:00
Jörg Mayer 4bfd2dfdf1 - FindGLIB2.cmake updates from
http://www.opensync.org/browser/branches/3rd-party-cmake-modules/modules
  + split out FindGMODULE2.cmake
  + contains /sw/... by default
  + supposedly tested on OSX
- Disable pcre for cmake builds by default, gregex should be
  picked up automatically if glib2 is not too old.

Should you have trouble linking due to some libgmodule... stuff
undefined, please add "${GMODULE2_LIBRARIES}" after "${GLIB2_LIBRARIES}"
an report back.

svn path=/trunk/; revision=34248
2010-09-25 15:38:12 +00:00
Jörg Mayer d696afc70c Consistency: Replace tabs by spaces
svn path=/trunk/; revision=34206
2010-09-23 09:08:50 +00:00