The ASCIIDOC_CONF_FILES setting for asciidoc was only generated
if any of the guides were being built.
Clean up a dup setting and some and blank lines in FindASCIIDOC
Change-Id: Ie8ab97db09e18cdb8d7e2a7bd4dcf8c288dd036f
Reviewed-on: https://code.wireshark.org/review/19291
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Update our WinSparkle package to 0.5.3. This fixes a file deletion bug.
Note that WinSparkle now supports application shutdown callbacks, which
should let us fix bugs 9687 and 12989.
Bug: 13217
Change-Id: I4b5f325c6dc251ce167f7bd344bbf3ca5ad3fe14
Reviewed-on: https://code.wireshark.org/review/19230
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Many capitalization can be found for this library (spandsp, Spandsp, SpanDSP),
let's use the one found in the library README and in its spec file.
Change-Id: Ia66b723e5d582a6218da1b6366b7d4859272f80c
Reviewed-on: https://code.wireshark.org/review/19122
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
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>
When libpcap-dev is not installed, do not look for functions like
pcap_datalink_name_to_val since the negative result would be cached.
Then after installing libpcap-dev, the build would fail due to
redeclaration of functions.
Change-Id: Ifdbad09e9cf160383b16b6459693f7ea5d65b9c3
Reviewed-on: https://code.wireshark.org/review/18834
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
ddd1c87d43 modified the order
of linker command line options. This broke the tests and made
invalid linker flags seem valid.
(Link target) ->
LINK : warning LNK4044: unrecognized option '/Wl,--as-needed'; ignored [C:\wireshark\build3\wsutil\wsutil.vcxproj]
LINK : warning LNK4044: unrecognized option '/pie'; ignored [C:\wireshark\build3\wsutil\wsutil.vcxproj]
The simple fix is to add specific options for Visual Studio and clang at the beginning of
the linker's command line options rather than at the end.
Change-Id: I6492ea1271e18be0d190e7579f47baecf6ac4d61
Reviewed-on: https://code.wireshark.org/review/18709
Petri-Dish: Martin Kaiser <wireshark@kaiser.cx>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
This causes problems with cmake 2.8.9, which ships with Debian Wheezy.
Reorder the linker options to avoid a leading space. According to GNU
ld's manual, the order of linker options on the command line does not
matter. This should be the same for Visual Studio's cl.exe and for
clang's linker.
See
https://www.wireshark.org/lists/wireshark-dev/201604/msg00141.html
for more details about the problem.
Change-Id: Ieaf7425600d394f365b01747747665233693fea2
Reviewed-on: https://code.wireshark.org/review/18581
Petri-Dish: Martin Kaiser <wireshark@kaiser.cx>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
HTML and manual pages can be generated in parallel.
Change-Id: I2301e8bdc5ae1179a8ac0c24f412e5435993a764
Reviewed-on: https://code.wireshark.org/review/18281
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
CMake standard style is to use lowercase function names, do that.
Change-Id: I893825cfac0cc402177ffb1a0f43f0ffc6341c45
Reviewed-on: https://code.wireshark.org/review/18312
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
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>
Running "ninja developer_guide_html" somehow did not produce a new HTML
docbook once wsluarm.ascii (a dependency of developer-guide.xml) was
modified.
It turns out that output file docbook/wsdg_html/index.html only had a
ordering-only dependency on target generate_developer-guide.xml. An
extra dependency is needed on the output file to ensure that the HTML
file gets rebuild on changes.
See the last note on
https://samthursfield.wordpress.com/2015/11/21/cmake-dependencies-between-targets-and-files-and-custom-commands/
Fixes v2.1.0rc0-2137-gd544ecd ("cmake: fix parallel docbook build").
Change-Id: I7689c71994f13b29cf7f8561f7c993aa8298632d
Reviewed-on: https://code.wireshark.org/review/18225
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Cygwin flex\bison generate shortening warnings due to size_t on
Win 64. The win flex\bison versions don't so find them first.
Change-Id: Ib68c84435f859325612410b72b6cf21cf106ecc2
Reviewed-on: https://code.wireshark.org/review/17763
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>
Pass relative image directory paths to xsltproc. The DocBook documentation
says you can use a URI, but trying to get that to work with CMake
and Windows appears to be a path to tears and undignified wails of
frustration.
Add attributes for our different types of images and use them so that
the PDFs don't scale our screenshots to an unusable size.
Change-Id: I786d09d9ef9be3d423b2af426a8867739ae12c1a
Reviewed-on: https://code.wireshark.org/review/17688
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
I accidentally assumed that libnl2 works fine with just libnl.so, but
apparently the other libraries are also necessary.
Change-Id: I1636710ea3f41ed10a5ccb37106cae9e688abec9
Reviewed-on: https://code.wireshark.org/review/17654
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Dario reported that the cmake build fails after installing libnl3-devel
(libnl-devel was already present). This results from a name collision
for NL_LIBRARY and NL_INCLUDE_DIR variables.
Initially these variables contained the values for libnl-1. When libnl3
is installed, these variables were not updated (because it was cached),
but HAVE_LIBNL3 would still be set, resulting in a header and feature
mismatch. Use separate variables for libnl1 and libnl3 to fix this.
Other fixes: also set HAVE_LIBNL for libnl1; fallback to libnl1 if
libnl3 is unusable (e.g. because libnl-route-3.0 is missing).
Change-Id: Icf0a03843ea870347ddf365f69bacf4883d07f6d
Reviewed-on: https://code.wireshark.org/review/17449
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Dario Lombardo <lomato@gmail.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Setting our compiler warning flags in CMAKE_C_FLAGS does not allow
using different flags per target.
Allow for that possibility by setting the internal WS_WARNINGS_{C,CXX}_FLAGS
and using the COMPILE_OPTIONS property to set them.
This change is just setting mechanism and there should be no difference
in generated warnings.
The check_X_compiler_flag cmake test is changed to test each flag individually.
We need a list, not a space separated string, and the aggregate test is not
significant.
Change-Id: I59fc5cd7e130c7a5e001c598e3df3e13f83a6a25
Reviewed-on: https://code.wireshark.org/review/17150
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Now that nmake build system has been removed they are not needed anymore.
Change-Id: I88075f955bb4349185859c1af4be22e53de5850f
Reviewed-on: https://code.wireshark.org/review/16050
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Without this change large file support was detected as available
even when it was not without additional flags on 32 architectures.
As a result mergecap and other programs are built without large
file support causing mergecap not being able to write files
bigger than 2GB on i386 systems. This used to work properly
with autotools builds, but not with CMake ones.
Change-Id: Ibfd043342b2a48310d2ac9d760e6404a701c5808
Reviewed-on: https://code.wireshark.org/review/15937
Petri-Dish: Balint Reczey <balint@balintreczey.hu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Balint Reczey <balint@balintreczey.hu>
We're checking for more than just a 64-bit off_t; we're checking for the
ability to do 64-bit seeks in files, even if, as on Windows, the APIs
are different.
Remove trailing white space and clean up some comments while we're at
it.
Change-Id: I6122b6d6b44ff5dd3a4d8268f9793193e65817ce
Reviewed-on: https://code.wireshark.org/review/15912
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This is intended to replace the NSIS installer for Windows.
It does not include installing WinPcap or USBPcap. From the research I've done, it seems to make more sense to "bundle" them with Wix ("wrapper" installer that would include Wireshark, WinPcap and USBPcap installers together)
TODO:
1. Customize installer with Wireshark graphics
2. Better handling flexibility of installing VC CRT Merge module (need build script to provide appropriate macros). Something like (or modifying existing) FindMSVC_REDIST.cmake.
3. Use Wireshark UpgradeProductCode for install/uninstall. Previous NSIS installer did not have an upgrade code, so there are some backwards compatibility concerns.
4. Uninstall considerations (removing whole directories - plugins, configuration profiles?). NSIS needed to do more things "manually" than Wix does by default. Need to merge as best as possible to handle backwards compatibility.
Many thanks to Brian Pratt for all the Wix help.
Change-Id: Ib50780214fc7707ba2a46fd96ba8797a1763fa0c
Reviewed-on: https://code.wireshark.org/review/14858
Reviewed-by: Michael Mann <mmann78@netscape.net>
Put QUIET before the module name, otherwise FindPkgConfig tries to
locate a module named QUIET. This fixes a build failure that complains
about missing pango/pango.h.
Tested with GTK 3.20, CMake 3.5.2 on Arch Linux.
Change-Id: I76e487d0f4b7f9fbac4105521c349b392b680923
Reviewed-on: https://code.wireshark.org/review/15314
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
This generates a top level target, checkAPI, that is
excluded from the ALL build target, so must be run separately.
On Windows using a Visual Studio generator, call
msbuild /p:Configuration=RelWithDebInfo checkAPI.vcxproj
Change-Id: I44a57c564dcfc75499463b942436f4b920a82478
Reviewed-on: https://code.wireshark.org/review/14873
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Use libSSH 0.7.2 compiled with MinGW(32|64) and linked with zlib and gcrypt support
Change-Id: I7c17d1ba3dd1890e2f83c119f5ea851834807e43
Reviewed-on: https://code.wireshark.org/review/12117
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Remove HTML_VIEWER compile-time setting.
If xdg-open doesn't exist use user web browser preference as fallback.
Change-Id: I3b4a4a1a36b0192d75f2c97595f37d0d88a0941e
Reviewed-on: https://code.wireshark.org/review/14805
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Tested-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: João Valverde <j@v6e.pt>
master-branch libpcap now generates a reentrant Flex scanner and
Bison/Berkeley YACC parser for capture filter expressions, so it
requires versions of Flex and Bison/Berkeley YACC that support that.
We might as well do the same. For libwiretap, it means we could
actually have multiple K12 text or Ascend/Lucent text files open at the
same time. For libwireshark, it might not be as useful, as we only read
configuration files at startup (which should only happen once, in one
thread) or on demand (in which case, if we ever support multiple threads
running libwireshark, we'd need a mutex to ensure that only one file
reads it), but it's still the right thing to do.
We also require a version of Flex that can write out a header file, so
we change the runlex script to generate the header file ourselves. This
means we require a version of Flex new enough to support --header-file.
Clean up some other stuff encountered in the process.
Change-Id: Id23078c6acea549a52fc687779bb55d715b55c16
Reviewed-on: https://code.wireshark.org/review/14719
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Load LocatePythonModule and use it to find asn2wrs once instead of every
time we cal the ASN2WRS function. This reduces the cmake run time by
about 3 to 4 seconds here.
Change-Id: I85f7dcca0b5891c9b4b23a76d017f8e504d6af60
Reviewed-on: https://code.wireshark.org/review/14614
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Add FOLDER properties to targets to clean up the presentation
in Visual Studio.
Change-Id: I35a175175db055443572c58a069879061fdcf0a3
Reviewed-on: https://code.wireshark.org/review/14528
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Remove dependencies on xmllint. We don't write DocBook by hand any more
and we haven't used it in a long time in the CMake builds.
Change-Id: Ic07f03b00c4554c058eece0462b0925d565b6da1
Reviewed-on: https://code.wireshark.org/review/14506
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Let targets depend on the generate_developer-guide.xml target instead of
the developer-guide.xml output file.
Change-Id: I66106ad69c9baedbd58a008b4dbbbf93b787c2c2
Reviewed-on: https://code.wireshark.org/review/14156
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
After changing an asciidoc source file, the html files were not rebuilt
via 'ninja developer_guides'. It turns out that the
developer_guide_docbook target has an order-only dependency on
developer-guide.xml (and not the developer-guide.xml dependencies).
Fix this by adding an explicit dependency on the generated .xml file.
Change-Id: I4bdc0ebca8909caaab9cc0797cc35cc6260bfe43
Reviewed-on: https://code.wireshark.org/review/14065
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Have CHECK_C_LINKER_FLAG pass /WX to the linker if we're using MSVC, to
force the link to fail if the linker doesn't recognize the flag.
Add flags to WIRESHARK_LD_FLAGS even with MSVC; let CHECK_C_LINKER_FLAG
figure out whether the flag should be used.
While we're at it, fix CHECK_C_LINKER_FLAG to save and restore
CMAKE_REQUIRED_LIBRARIES.
Change-Id: I7f73b4cc3a28eb14e46c2e1e9ad69f5303754f01
Reviewed-on: https://code.wireshark.org/review/13558
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
As per a suggestion from a Kitware person in bug 0015934:
https://cmake.org/Bug/view.php?id=15934
We also don't need to check whether the resulting code *runs* -
check_c_source_compiles not only compiles, it links as well.
Change-Id: Ied09b9da7c88ac46f14df14f6a6260037abdbef4
Reviewed-on: https://code.wireshark.org/review/13556
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Remove the file dependency on the xml file as this causes
build failures due to parallel building.
There is still an issue with the build of *.hhp if the corresponding
*.xml file is rebuilt.
Change-Id: I738c687be50daebcf93576be8a43dbb6475f4fc8
Reviewed-on: https://code.wireshark.org/review/13217
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
unset accumulator variables after use so that successive uses are
not carried forward.
add MAIN_DEPENDENCY for chm generation so that it is correctly
rebuilt when the sources change.
Change-Id: I3b0c47a775f398346cc3a3bbd39d4fab2b0ec000
Reviewed-on: https://code.wireshark.org/review/13160
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Move the code to open capture devices and get properties of capture
devices there, joining the code to get a list of capture devices.
This lets us do a better job of handling pcap_create() in WinPcap,
including handling both WinPcap with pcap_create() and WinPcap without
pcap_create() at run time, just in case somebody tries using WinPcap 3.x
with a Wireshark built with WinPcap 4.x.
It also could make it easier to use libpcap/WinPcap directly in
Wireshark and TShark, if we have versions of libpcap/WinPcap that run
small helper utilities to do privileged functions, allowing programs
using them never to need elevated privileges themselves. That might
make it easier to fix some issues with running TShark when not saving to
a file (we could avoid the file entirely) and with delays when stopping
a capture in Wireshark (Wireshark could stop writing to the file as soon
as you click the stop button, rather than letting dumpcap do so when the
signal gets to it).
It might also make it easier to handle future versions of
libpcap/WinPcap that support using pcap_create()/pcap_activate() for
remote captures, and other future extensions to libpcap/WinPcap.
Rename some XXX_linktype routines to XXX_datalink to indicate that they
work with DLT_ values rather than LINKTYPE_ values; future versions of
libpcap might use LINKTYPE_ values in newer APIs.
Check for pcap_create() on all platforms in CMake.
Change-Id: Ia12e1692c96ec945c07a135d246958771a29c817
Reviewed-on: https://code.wireshark.org/review/13062
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
git can be installed (or the path manually set) so that the msys
unix utilities supplied with git (expecially bash) are on the path
and then picked up by CMake. These utilities are not compatible with
the build and will fail.
This change checks the output of the --version option to the found
executable and ensures "cygwin" is found in the result. If not found
a FATAL_ERROR message is issued and the CMake generation is stopped.
Change-Id: I0eca014ae194862abbc8dee56d347526691e72cb
Reviewed-on: https://code.wireshark.org/review/13008
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>
Move the code that finds the Visual C++ redistributable DLLs to its
own module. Run it before we create our NSIS and PortableApps targets.
Add a PortableApps target that copies the redistributable
This reverts commit 403fa9fbe0cdba3f443ec4674cda40092525ffe4.
Bug: 11800
Change-Id: I081d8fd3f5f37dd590659ca8f2bd309642a9a9df
Reviewed-on: https://code.wireshark.org/review/12431
Reviewed-by: Gerald Combs <gerald@wireshark.org>
(cherry picked from commit 5b580834aeeee8477039bc099c49c21aeeb3b71f)
Reviewed-on: https://code.wireshark.org/review/12432
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Add an "asn1" build target that rebuilds all ASN.1 dissectors.
Do not always generate the ASN.1 dissector when invoking the
"generate_dissector-PROTO" target. Use a special "packet-PROTO-stamp"
file to detect whether the dissector is out of date.
This indirection is needed because cmake removes output files from
add_custom_command in the clean target, but we would like to keep the
generated packet-PROTO.c files.
Make all EXTRA_CNF and EXPORT_DEPENDS point to absolute paths for
generated exported configs (PROTO-exp.cnf). This is done by automake too
and is needed for proper dependency tracking. Example: when h225.cnf is
updated, h225-exp.cnf needs to be generated. That is the purpose of the
"generate-h225-exp.cnf" target. Now h235 (and other) dissectors need to
be regenerated as well because the h225-exp.cnf is updated. This is why
there is a separate add_custom_command and add_custom_target.
Change-Id: I8cfc1f8f43cea595267b21eae30b4548f3407c0b
Reviewed-on: https://code.wireshark.org/review/12080
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
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: Anders Broman <a.broman58@gmail.com>
sshdump is an extcap module that allows dumping from a remote host using an ssh connection.
It goes with the existing extcap plugin interface.
Change-Id: I8987614fdd817b8173a50130812bc643a4833bca
Reviewed-on: https://code.wireshark.org/review/11402
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Add C:\tools\cygwin to the list of search paths in FindCygwin.cmake.
This matches the behavior of config.nmake and is where Chocolatey
installs Cygwin.
Change-Id: I87a3cd64aae410b9c9abdc87c56d29aa3c4d5946
Reviewed-on: https://code.wireshark.org/review/11885
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Lua 5.3 could still be used when located at /usr/include/lua.h. Detect
and reject it in that case.
Rename LUA_VERSION to LUA_VERSION_NUM to avoid a conflict with
pkg-config (which uses a different version format). Ensure that the
regex matches a number only.
Bug: 11706
Change-Id: Idb7e3e1a8d9c6e4ab9ab1816c4dedea7de9dde8e
Reviewed-on: https://code.wireshark.org/review/11836
Reviewed-by: Bill Meier <wmeier@newsguy.com>
The one from official CMake (3.3.2) does not look for the default 64bits installation path. Let's add it.
Also add a WIRESHARK_CYGWIN_INSTALL_PATH environment variable allowing to force it.
For reference, registry based detection fails to detect a 64bits installation because it gets redirected to the Wow6432 node.
Change-Id: If3172494e3ab232e094389b493e6b67023662ae5
Reviewed-on: https://code.wireshark.org/review/11769
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
get_filename_component returns "/regstry" if the query is unsuccessful.
We'll have to add a check for that if we query "Add Paths".
Revert "CMake: Pass ABSOLUTE to get_filename_component."
This reverts commit 4c03f4be00.
Revert "CMake: Look for Python using the "App Paths" key."
This reverts commit 6d1b6cd39d.
Change-Id: Ida17608467fa3652f4219e4eaf01edfa48120b1d
Reviewed-on: https://code.wireshark.org/review/11512
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Since v2.1.0rc0-17-g877fd03 and v2.0.0rc0-23-g263ff53 ("ssl-utils:
load RSA keys based on their modulus+exponent"), GnuTLS 2.12.0 is
needed.
Add a version check to cmake as well, tested on CentOS6 (with
pkg-config check disabled to verify the code path). Note that RHEL6
has GnuTLS 2.8.5 and thus SSL decryption with a RSA private key is no
longer supported on that version.
Change-Id: I99fdfe6790107f48629dd435794fe8880263063d
Reviewed-on: https://code.wireshark.org/review/11044
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: Michal Labedzki <michal.labedzki@tieto.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
libgcrypt 1.4.2 is required since since v1.11.0-rc1-2787-g23f9100
("Really add support for AEAD ciphers (GCM)") due to the use of
gcry_cipher_setctr. Bump the version in configure.ac too.
Add version check for gcrypt to cmake. Tested with CentOS 6 (cmake
2.8.12.2, libgcrypt 1.4.5).
Change-Id: I93c3ed902a764d9d14675779e866230d073c96d5
Reviewed-on: https://code.wireshark.org/review/11043
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Try to find Python and set PYTHON_EXECUTABLE on Windows via the registry
prior to calling FindPythonInterp. This works around a bug in CMake that
prefers Cygwin's Python, which is a symlink, which by default is a text
file that contains a Cygwin-specific cookie, which is therefore useless
outside of Cygwin.
This is avoids the need to pass -DPYTHON_EXECUTABLE=... to CMake.
Change-Id: Ife37221b61d920682c20357b6d139a93067a5ad1
Reviewed-on: https://code.wireshark.org/review/11071
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
This reverts commit 5e5e2019ee.
This change was proposed in https://cmake.org/Bug/view.php?id=13194 to
catch some Clang warnings concerning invalid -m flags, but it is causing
legitimate breakage when setting CMAKE_C_FLAGS=-gsplit-dwarf.
CMakeFiles/CMakeError.log shows:
/usr/bin/clang -gsplit-dwarf -DC__W_VALID CMakeFiles/cmTC_04cc8.dir/src.c.o -o cmTC_04cc8 -rdynamic
clang-3.7: warning: argument unused during compilation: '-gsplit-dwarf'
With the additional regex, basic checks (like -Wall but also -fPIE) are
incorrectly reported as unsupported. Follow upstreams action here and
remove it, it is still not present as of CMake 3.3.2.
Change-Id: I8a1e97b16c2bb929436cca669fdb42f33612c490
Reviewed-on: https://code.wireshark.org/review/10880
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
A build with the gold linker broke with:
run/libwireshark.so.0.0.0: error: undefined reference to 'krb5_c_decrypt'
Fix this my restructuring the FindKERBEROS module to use the libraries
found by pkg-config.
While at it, check for MIT and Heimdal instead of assuming MIT. Remove
HAVE_KEYTYPE_ARCFOUR_56 as this macro is not used.
Change-Id: Iab23d79bc3f25e9c0fd7203b6f050f875fb4a2b5
Reviewed-on: https://code.wireshark.org/review/10907
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
On Windows we set a few (but not all) ZLIB_* variables, then depend on
FindZLIB to fill in the rest. Make sure FindZLIB doesn't unset everything
the first time we run CMake.
Bug: 11569
Change-Id: I199c83570c29343466b9ff63080b6a964dfd8d73
Reviewed-on: https://code.wireshark.org/review/10843
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
In the world of CMake calling "set" with multiple values creates a
semicolon-separated list. For WS_WIN_LIBS we want a single string so we
need to call "set" with a single, quoted value.
Change-Id: I96c5085af58adfb97ce16195eb27cc8ddb612d6a
Reviewed-on: https://code.wireshark.org/review/10158
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Hadriel Kaplan <hadrielk@yahoo.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com>
Mergecap needs setargv.obj in order to get wildcard support. This is linked
in nmake but not cmake.
Bug: 10354
Change-Id: Icccf6b36495ac4b376f651d689b4a1f9e2c6042d
Reviewed-on: https://code.wireshark.org/review/10143
Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com>
The CMake dumpbabi targets collectively copy over 800 files. Do
that when when we build the actual targets instead of at configure
time. Hopefully this will speed up initial CMake runs.
Change-Id: I6e4d691e24c73ea05d638a0f897f570541c84e38
Reviewed-on: https://code.wireshark.org/review/10052
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Add custom {developer,user}_guide_docbook targets for docbook output. Make
sure the HTML, PDF, and CHM outputs depend on their associated docbook
target and not on the output .xml file. This keeps us from running a2x
instances in parallel.
Change-Id: I73b0db50ae92f62eb08ae284d498cdf2d697ac00
Reviewed-on: https://code.wireshark.org/review/9920
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
When converting from DocBook to HTML, use DocBook's xhtml5 XSL
stylesheets.
Change-Id: I7a49d60c46a17e1e639b78ee10c4b9fa832d4a77
Reviewed-on: https://code.wireshark.org/review/9878
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Correctly detect that XCode7Beta1 does not support -fno-delete-null-pointer-checks
by adding a new regex.
Change-Id: I76e0b6bb72094e6e75dae9be97bc7ee8e7051792
Reviewed-on: https://code.wireshark.org/review/9552
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Update from SQLite trunk (19 April 2015)
Add include <config.h>
Fix warning: unused parameter 'argc' [-Wunused-parameter] (using _U_)
Fix implicit conversion loses integer precision
Fix comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
Fix function declaration isn’t a prototype [-Wstrict-prototypes]
Fix warning: old-style function definition [-Wold-style-definition]
Fix trailing whitespace
Fix use -T for template for epan\Makefile.nmake, epan\dfilter\Makefile.nmake, plugins\mate\Makefile.nmake, plugins\tpg\Makefile.nmake and cmake/modules/UseLemon.cmake
Fix -Wmissing-prototypes Remove unused function (acttab_free)
Add basename the filename with only filename (no path...)
Fix lemon.c:3435: warning: implicit conversion shortens 64-bit value into a 32-bit value
Add "new" version of lempar.c (3 November 2009).
LEMPAR: fix trailing whitespace
LEMPAR: fix -Wunused-parameter
Change-Id: I2df7e39c9a6846de26743a981fb76aca423fe813
Reviewed-on: https://code.wireshark.org/review/6502
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Add a dependency on the lemon binary and lempar.c files because the
output depends on these tools. This is already done for autotools and
nmake.
In addition, clean up the generated .h and .out files.
Change-Id: Ic1fa2c23949abf05e976a67d226c90293b2ce834
Reviewed-on: https://code.wireshark.org/review/9139
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Author: Maarten Bezemer <maarten.bezemer@gmail.com>
Date: Wed Nov 12 13:39:07 2014 +0100
Invoke asn2wrs.py using a custom command
Fixes bugid 11304
Once there is a better solution feel free to revert the revert.
Change-Id: Id64b621c5f3b8a934ce9ec5c3c127326efab46f2
Reviewed-on: https://code.wireshark.org/review/9122
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
First, search for packages with the version number without the period (bug
11219).
Second, don't look for Lua 5.3 because we don't work with it. If what we find
(without pkg-config's help) is Lua 5.3, disable Lua support (bug 10881).
Cmake support by Peter Wu (originally Ie73e5b53640f10432881a9671c0a605f7f027ed8):
Note the check for "lua<=5.2.99" instead of "lua<5.3" since cmake does not
support the latter syntax. Tested with lua5.2, lua5.1 and lua (5.3) installed.
Bug: 11219
Ping-Bug: 10881
Change-Id: I382d07ca00eafc6111cd4e9faa2b66f6b8f95b6e
Reviewed-on: https://code.wireshark.org/review/8783
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Fix up generation messages for Windows build
Remove some superfluous Lua messages
Change-Id: I405e7edfcb043fc842fe4f0cca8d23d5755527f9
Reviewed-on: https://code.wireshark.org/review/8138
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Add win-setup.ps1, which duplicates the following tasks performed by
config.nmake + Makefile.nmake + win-setup.sh:
- Create the windows library directory.
- Download files.
- Download and unpack zip files.
- Check and set current-tag.txt
Don't verify applications or libraries. CMakeLists.txt does that.
Update the Developer's Guide.
Have POWERSHELL_COMMAND use dot sourcing instead of "-File", which
appears to be a synonym for "-IgnoreTheExitStatusReturnedByThisScript".
This removes our dependencies on unzip and wget and reduces our dependency
on bash.
Change-Id: Ia9def24acbe183d81b9d477fa42e655e4a3a6614
Reviewed-on: https://code.wireshark.org/review/7990
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Removed the redundant setpath batch file and associated macro
and updated docs.
Change-Id: I5ddab6bad2d14ed3443194d7269f1890e4aa608e
Reviewed-on: https://code.wireshark.org/review/7826
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>
Add FOLDER properties to targets to tidy up the VS solution
Change-Id: Ia42e0e89fb490cd3dcd33b7c5f59eb0a27b74c7a
Reviewed-on: https://code.wireshark.org/review/7822
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>
docbook/Makefile.am uses --stylesheet=ws.css too, without this change
the generated HTML will point to the source directory...
Change-Id: I351cb658c404a08655201933158f91765f8d9c35
Reviewed-on: https://code.wireshark.org/review/7503
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
A recent commit broke compilation with Python 3. The original author of
html2text.py is deceased and the fork has increased the number of files
for this "simple" helper.
The html2text.py script in this patch was rewritten and its output
matches with lynx (except for a few newlines around lists). This means
that indentation has been added for headings, paragraphs and lists.
Also, since it was written from scratch, a new license could be chosen
that matches Wireshark.
Since now the in-tree html2text.py script provides nicer output, remove
detection of the alternative programs (elinks, links). lynx/w3m is
somehow still necessary for asciidoc though.
(I also looked into reusing html2text.py for the release notes to
replace asciidoc, but the --format=html output produces different output
(HTML adds a ToC and section numbers). For now still require lynx for
release notes)
Tested with Python 2.6.6, 2.7.9, 3.2.6 and 3.4.3 under LC_ALL=C and
LC_ALL=en_US.UTF-8 on Linux. Tested reading from stdin and file, writing
to file, pipe and tty. Tested with cmake (Ninja) and autotools on Arch
Linux x86_64. Test:
# For each $PATH per python version, execute (with varying LC_ALL)
help/faq.py -b | tools/html2text.py /dev/stdin | md5sum
help/faq.py -b | tools/html2text.py | md5sum
help/faq.py -b | tools/html2text.py
help/faq.py -b | tools/html2text.py >/dev/null
Change-Id: I6409450a3e6c8b010ca082251f9db7358b0cc2fd
Reviewed-on: https://code.wireshark.org/review/7779
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>
It can be set if either 1) this is Windows (where we're assumed to be
using WinPcap, which includes calls to set the buffer size) or 2) we
have pcap_create() (in which case we also have pcap_set_buffer_size(),
at least in a normal libpcap release).
Use that rather than testing "defined(_WIN32) ||
defined(HAVE_PCAP_CREATE)"; that makes it a bit more obvious what's
being tested.
Change-Id: Id9f8455019d19206b04dd6820a748cb97ae5ad12
Reviewed-on: https://code.wireshark.org/review/7816
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Add packaging/nsis/CMakeLists.txt and use it to generate each NSIS include
file. Add macros to generate packaging-related targets and invoke them
from the top-level CMakeLists.txt.
Add a top-level "plugins" target. Copy plugins to "plugins" in each of
our staging directories instead of "plugins/$VERSION".
Add missing files to the copy_data_files and copy_cli_dlls targets.
Add all files in the NSIS package from the staging directory.
Drop a bunch of no-longer-needed defines, e.g. MSVC_VARIANT.
Change-Id: Ib1079260d164c65118050f1431af8e582cd577fa
Reviewed-on: https://code.wireshark.org/review/6459
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Maybe the test wrapper should be a Python script.
Change-Id: I38a5089c83ef643fb6c7c76acd599cef6aba39f4
Reviewed-on: https://code.wireshark.org/review/7572
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Create a wrapper script that cd's to the test directory and execs
test.sh. We need to handle build configurations so the path is a bit
roundabout.
Change-Id: I4c2a48c041bce2479422830110b1251b3f2c5a94
Reviewed-on: https://code.wireshark.org/review/7570
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Redefine PLUGIN_DIR similar to DATAFILE_DIR and use it on all
platforms. Add WiresharkPlugin.cmake so that we can start defining common
macros for plugins/*/CMakeLists.txt. Load plugins in out-of-tree builds.
Change-Id: I8c1359ed3cf8a71788b8320ff89dfe2d3969def2
Reviewed-on: https://code.wireshark.org/review/6640
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Set DATAFILE_DIR to a value that includes the build configuration. Add a
copy_data_files target that copies AUTHORS-SHORT, the default filters,
and other support files to the run directory. Add FindPowerShell.cmake
and require it on Windows. Remove some OS X BUNDLE_RESOURCE_
declarations which are now covered by copy_data_files.
Change-Id: Iade74946dd5ed2c54239036aa4970f9ffc4681a4
Reviewed-on: https://code.wireshark.org/review/6561
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
FOP is only required for generating PDF output and HHC is only needed
for CHM output. Don't look for them unconditionally.
Change-Id: I7bec7d061c9e9e8b99431cab873e8c719469552c
Reviewed-on: https://code.wireshark.org/review/6539
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Add a "copy_cli_dlls" target which copies the DLLs required to run our
command line programs to the run directory.
Fix the spelling of "KERBEROS". Start filling in variables so that we
can populate config.nsh.
Change-Id: I9b3ed912dfbffecbf09f2893efa2c9d82e709521
Reviewed-on: https://code.wireshark.org/review/6513
Reviewed-by: Gerald Combs <gerald@wireshark.org>
This reverts commit 5855dd8d53.
This Lemon update fails to compile on OSX and triggers asserts on other platforms
Change-Id: I12a8a2bf32db31e5a9b0cb1a67a39724e30f3e91
Reviewed-on: https://code.wireshark.org/review/6496
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Fix warning: declaration shadows a variable in the global scope [-Wshadow]
Add include <config.h>
Fix warning: unused parameter 'argc' [-Wunused-parameter] (using _U_)
Fix implicit conversion loses integer precision
Fix comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
Fix function declaration isn’t a prototype [-Wstrict-prototypes]
Fix warning: old-style function definition [-Wold-style-definition]
Fix trailing whitespace
Fix use -T for template for epan\Makefile.nmake, epan\dfilter\Makefile.nmake, plugins\mate\Makefile.nmake, plugins\tpg\Makefile.nmake and cmake/modules/UseLemon.cmake
Fix -Wmissing-prototypes
Remove unused function (acttab_free)
Add basename the filename with only filename (no path...)
Change-Id: Ia79f61e29f828575df61cc89134c6c553044e86d
Reviewed-on: https://code.wireshark.org/review/3976
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
This gives a more structured layout in Visual Studio
Change-Id: I0da87a3e5ec759c69aeee031366cf287485cdac2
Reviewed-on: https://code.wireshark.org/review/6485
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Graham Bloice <graham.bloice@trihedral.com>
Set WIRESHARK_TARGET_PLATFORM near the top of CMakeLists.txt. It's used
by a couple of our modules and will be used for NSIS packaging.
Change-Id: Ief43733bdf162998cd54ff3732f94c8baa3d1e11
Reviewed-on: https://code.wireshark.org/review/6458
Reviewed-by: Gerald Combs <gerald@wireshark.org>
returning non-null on success.
To be invoked via "cmake -P hhc.cmake <single-arg>".
Change-Id: Ib2584379c512cbd7f437f36ef932b372fe02203a
Reviewed-on: https://code.wireshark.org/review/6440
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Try to make the xsltproc path compatible with Cygwin. This is a blind
attempt to fix the Windows 8 buildbot. It works fine locally.
Change-Id: Ib9d55dd07c6b17cfddf313716227d347109d2103
Reviewed-on: https://code.wireshark.org/review/6438
Reviewed-by: Gerald Combs <gerald@wireshark.org>
AsciiDoc converts single quotes into curly quote entities, which HTML
Help doesn't support. Use sed to fixup the title string.
We might want to drop HTML Help at some point.
Change-Id: I0c7d3be90c0de7dbac0f1367cc6ba323c7380939
Reviewed-on: https://code.wireshark.org/review/6435
Reviewed-by: Gerald Combs <gerald@wireshark.org>
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>
WinPcap 3.0 introduced pcap_open(); it also introduced
pcap_findalldevs_ex() and pcap_createsrcstr(). If you're going to put
pcap_open() in libpcap, there's not much point to doing so but not also
putting pcap_findalldevs_ex() and pcap_createsrcstr() there.
(And, in the future, there'll be support for remote capturing with
pcap_create() and pcap_activate(), with no need for pcap_createsrcstr(),
and a replacement for pcap_findalldevs() and pcap_findalldevs_ex(),
which we'll also check for.)
So there's no need to check for pcap_findalldevs_ex() or
pcap_createsrcstr().
Change-Id: I9323aad20136684d05d1e909326792a2f1408887
Reviewed-on: https://code.wireshark.org/review/6311
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Unfortunately Kerberos for Windows (kfw) has a different lib
name for x86 & x64. Fix FindKERBEROS.cmake to check for both
lib names.
Change-Id: I525df6de099d4e50322226317bda8d93d7a8dd23
Reviewed-on: https://code.wireshark.org/review/6246
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
This reuses existing functionality and thereby making FindAsn2Wrs.cmake obsolete, resulting in a reduction of the cmake module maintaince load
Change-Id: Ic6ae53e65236246c0cbe86f8c2f066a2d034e0b9
Reviewed-on: https://code.wireshark.org/review/5805
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Add make-dissector-reg.py to the Debian packages.
Making it possible to generate out-of-source wireshark plugins.
Change-Id: I0bbe5b46205d39e229d31812341540b26a7336d6
Reviewed-on: https://code.wireshark.org/review/5802
Reviewed-by: Anders Broman <a.broman58@gmail.com>
A custom target is defined to be always invalid, so asn2wrs.py is always invoked.
A custom command is able to convert input file(s) into output file(s), the actual command is only invoked in the provided dependencies are changed.
As an advantage the dependencies are correct, so cmake is able to determine when the output file is required, so it can be build in time.
Change-Id: I84be5d408cfc87cf88d67b6073bea439febbe712
Reviewed-on: https://code.wireshark.org/review/5255
Reviewed-by: Anders Broman <a.broman58@gmail.com>
For out of source builds, the output directory should not point to wireshark source locations.
By default it does point to the wireshark source directory (to stay compatible with the build in dissectors).
When the A2W_OUTPUT_DIR variable is set to "_EMPTY_" the output lcoation argument (-O) is not invoked.
Use A2W_FLAGS to set an output location for out of source builds (or use A2W_OUTPUT_DIR, which has the same result)
Change-Id: I48b7486fcda982f0dce57cde3beacb99f946abd9
Reviewed-on: https://code.wireshark.org/review/5254
Reviewed-by: Anders Broman <a.broman58@gmail.com>
A first step to make it possible to reuse the UseAsn2Wrs for out of source builds.
Change-Id: Iefb34f943e06db3d6afed55ab69d3f26aa9d633d
Reviewed-on: https://code.wireshark.org/review/5253
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This variable can be used to obtain the wireshark library(ies) (from the correct location).
Change-Id: I90cd5b098eb746ac573a2c611113287b06c3b82b
Reviewed-on: https://code.wireshark.org/review/5251
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
These files make it possible to use the cmake command find_package(Wirehark) to obtain information about the wireshark installation.
Change-Id: I5af7c4e7b53b99cd473e04905a92bac267cd9b83
Reviewed-on: https://code.wireshark.org/review/5235
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>
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>
Don't cache the LUA_LIBRARIES variable. This matches the behavior of the
other library modules and fixes a compilation problem on my machine
where /usr/local/lib/liblua.dylib wasn't showing up in the various
build.make and link.txt files.
Change-Id: Ib75ef303f2e67b266a246621718d0ea2ab885dca
Reviewed-on: https://code.wireshark.org/review/5603
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Avoide rebuilding the guides each and every time.
Don't print the single file guides to stdout.
Change-Id: Ie94fc4b24676e9abc7258c4ea1c7fd3049a96fb6
Reviewed-on: https://code.wireshark.org/review/5367
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Have FindWSWinLibs check for WIRESHARK_LIB_DIR before WIRESHARK_BASE_DIR
to match the behavior of config.nmake and the Windows buildbots, which
set the former but not the latter.
It looks like the latest GLib DLL contains GThread. Adjust
FindGTHREAD2.cmake accordingly.
Change-Id: I0232b1819eca9ba2c39ae6834daddf65af979d7d
Reviewed-on: https://code.wireshark.org/review/4887
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Current FindGTK2.cmake as included with Wireshark cannot do a 32-bit
build even after setting CMAKE_LIBRARY_PATH=/usr/lib32. After an update
to upstream FindGTK2 (v3.0.1-1824-g0b12815), things build again.
Compared to upstream FindGTK2, FindWSWinLibs and related hints have been
added (note that "${GTK2_HINTS}/lib" is not a typo, it is needed as some
headers are includes in locations like lib/gtk-2.0/include/). The
include paths have become relative again as there are no files like
FindPackageHandleStandardArgs in the Wireshark source tree. Diff between
upstream FindGTK2 and the version in this patch:
diff --git a/cmake/modules/FindGTK2.cmake b/cmake/modules/FindGTK2.cmake
index 72bb8eb..9b4f989 100644
--- a/cmake/modules/FindGTK2.cmake
+++ b/cmake/modules/FindGTK2.cmake
@@ -167,2 +167,5 @@
+include( FindWSWinLibs )
+FindWSWinLibs( "gtk2" "GTK2_HINTS" )
+
#=============================================================
@@ -176,4 +179,4 @@
-include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake)
-include(${CMAKE_CURRENT_LIST_DIR}/CMakeParseArguments.cmake)
+include(SelectLibraryConfigurations)
+include(CMakeParseArguments)
@@ -289,2 +292,5 @@ function(_GTK2_FIND_INCLUDE_DIR _var _hdr)
${_suffixes}
+ HINTS
+ "${GTK2_HINTS}/include"
+ "${GTK2_HINTS}/lib"
)
@@ -395,2 +401,4 @@ function(_GTK2_FIND_LIBRARY _var _lib _expand_vc _append_version)
[HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ HINTS
+ "${GTK2_HINTS}/lib"
)
@@ -409,2 +417,4 @@ function(_GTK2_FIND_LIBRARY _var _lib _expand_vc _append_version)
[HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ HINTS
+ "${GTK2_HINTS}/lib"
)
@@ -829,3 +839,3 @@ set(_GTK2_did_we_find_everything true) # This gets set to GTK2_FOUND
-include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
+include(FindPackageHandleStandardArgs)
Change-Id: I02103409a79ea30d1bf7cc0dfb43a9e41f8a4db3
Reviewed-on: https://code.wireshark.org/review/4293
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Changes:
* Fix glib2 search path.
* Add pkg-config support to CAP, GEOIP, GNUTLS, LUA, PortAudio (API
19), zlib, kerberos.
* Add pkg-config support to libnl3, libnl2 and libnl1 (but tested only
with libnl3).
This makes it easier to do 32-bit builds on 64-bit hosts by just setting
`PKG_CONFIG_LIBDIR`. Due to how HINTS work, it is still fragile though:
missing 32-bit libraries will cause a fallback to 64-bit libraries.
A future patch could check for `<PREFIX>_FOUND` and remove the manual
`find_path` and `find_library` hackery since the paths are already
known.
Change-Id: Ieb4fb74695c96afb1a4c70168e84abb1fa4612c6
Reviewed-on: https://code.wireshark.org/review/4292
Reviewed-by: Anders Broman <a.broman58@gmail.com>
If we have pcap_set_tstamp_precision(), use it to request nanosecond
time stamp resolution *if* we're writing a pcap-ng file; any code that
reads those files and can't handle nanosecond time stamp resolution is
broken and needs to be fixed.
If we're writing a pcap file, don't ask for nanosecond resolution time
stamps, as that requires a different magic number for pcap files, and
not all code that reads pcap files can handle that. (Unlike pcap-ng,
where the ability to have non-microsecond time stamp resolution was
present from Day One, it's a relatively recent addition to pcap.) We
could add a command-line option/GUI option for that, like the option
recent versions of tcpdump have, if it matters.
Change-Id: I8fa464eb929feecb9a70be70712502c9f0cc5270
Reviewed-on: https://code.wireshark.org/review/4355
Reviewed-by: Guy Harris <guy@alum.mit.edu>
If it is used, there is a modified file in git.
Fix this by only including the file if it exists.
Other changes:
- Rename the existing Custom files to CMakeListsCustom.txt.example.
- Move the plugins custom file to the top level (same level as its
including parent).
- Optionally allow a list of custom includes instead of the default one.
Change-Id: I8960eac6222f741c045055d43d1d5a2d4979caf6
Reviewed-on: https://code.wireshark.org/review/4163
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
because of different timezones.
Change-Id: I93809447db29c2cc5f848edb438ee16372b57453
Reviewed-on: https://code.wireshark.org/review/3824
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Use a common set of SVG files for AsciiDoc / DocBook admonition
graphics. Put them in a common directory. According to
http://caniuse.com/svg all common browsers have had SVG support for
a while now.
The graphics themselves were created with Inkscape. If you would like
to refine them further you are more than welcome.
Use variables to assemble xsltproc commands in Autotools and Nmake
while we're here.
Try to update Debian rules to reflect ga92c3fb.
Change-Id: If82647af27a60117c517125dff0aca81c033be72
Reviewed-on: https://code.wireshark.org/review/3206
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Create graphics directories and copy files into them similar
to Autotools and Nmake. Adjust some xsltproc arguments. Fix the
--asciidoc-opts flag.
Note: Admon graphics are broken pending change 3206.
Change-Id: I94d498de36150a7cb4ffd080581523300b222bd4
Reviewed-on: https://code.wireshark.org/review/3805
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Add the "asciidoc.conf" compatibility configuration file from
Asciidoctor. Although we don't use Asciidoctor it gives us macros that
keep us from losing some useful DocBook elements. Update various CMake
files to support multiple AsciiDoc configuration files.
Leave most of the content intact for now. Hopefully the other chapters
aren't as laden with markup.
Change-Id: Id69757342b86abb2b3130cb61e90f5695a26ea8a
Reviewed-on: https://code.wireshark.org/review/3680
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
other liberaries. Also: After set( variable 0 ) the variable is defined.
Change-Id: Id26a771875b7643c19f173ce77bb29a4059a1bd0
Reviewed-on: https://code.wireshark.org/review/3793
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Change-Id: If55498167d5e357258841f2194962749c0dfc81e
Reviewed-on: https://code.wireshark.org/review/3787
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
The shell script is not used in the CMake build system.
Change-Id: I97d3d750f2521c626594200da8fc9a4453414576
Reviewed-on: https://code.wireshark.org/review/3530
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Look for wpcap.lib in WpdPack/Lib/x64 when our target platform is Win64.
Change-Id: I9a1bac22106bcb6a1f155ce83c02e344e6ec0d55
Reviewed-on: https://code.wireshark.org/review/3331
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Note that the cache file (CMakeCache.txt) must be cleared when the
include or library paths change, otherwise the cached result of
CHECK_FUNCTION_EXISTS will be re-used.
Change-Id: Ia18ed4f1b6b162499aeae6e66f612a4945390c2a
Reviewed-on: https://code.wireshark.org/review/3245
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
I have ***NO*** idea why this makes a difference, but, without this
change, APPLE_CORE_FOUNDATION_LIBRARY is apparently *not* set correctly
for wsutil/CMakeLists.txt, and, with this change, it is. I guess
there's something magic involved here with "global" CMake variables or
something crazy such as that.
Change-Id: I7a0046b9c249568cd666720838104f48e854e203
Reviewed-on: https://code.wireshark.org/review/2612
Reviewed-by: Guy Harris <guy@alum.mit.edu>
For -f and -m flags that don't apply to the target architecture(?),
Clang doesn't fail but does print a warning "argument unused during
compilation: '-{flag}'". Catch that and treat it as a failure
indication, so we don't use that flag.
Change-Id: I65948ada41fa44fb62f9a2b8b320f137a5902b8f
Reviewed-on: https://code.wireshark.org/review/2399
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Protecting HAVE_PCAP_CREATE was not enough for the moc run in qt,
maybe it doesn't have _WIN32 set? Don't even try to detect this
function on WIN32 for now.
Change-Id: I0d8a8b5b110cec164f86fe11f26a7add558eee1b
Reviewed-on: https://code.wireshark.org/review/2370
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
of finding the package don't allow the first method to fail terminally.
Todo: Fix this in all other places as well.
Change-Id: I5a343fac33f6a5d6e50ff353d739459b2e36711a
Reviewed-on: https://code.wireshark.org/review/2300
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Fix detection of Homebrew on APPLE
Change-Id: I96506bb57d4772c5c90b1117c37e8350cda376ee
Reviewed-on: https://code.wireshark.org/review/2257
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Not all system have HtmlViewer, but we support that case
by inform user about file/website, so we "have" HtmlViewer.
Change-Id: I46e16a86b5c7f9dd47e1d1ded9d10fd4f565660f
Reviewed-on: https://code.wireshark.org/review/1875
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
(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>
(Using sed : sed -i '/^\$Id\$/,+1 d') (No space or star before $Id$)
Change-Id: I0801bd7cf234d32487008a8b6dcee64875b07688
Reviewed-on: https://code.wireshark.org/review/876
Reviewed-by: Evan Huus <eapache@gmail.com>
(Using sed : sed -i '/^ \* \$Id\$/,+1 d')
Fix manually some typo (in export_object_dicom.c and crc16-plain.c)
Change-Id: I4c1ae68d1c4afeace8cb195b53c715cf9e1227a8
Reviewed-on: https://code.wireshark.org/review/497
Reviewed-by: Anders Broman <a.broman58@gmail.com>
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>
Add developer-guide-docinfo.xml, which lets us carry over DocBook front
matter. Remove the meta_info chapter. Most of its contents are now in
developer-guide-docinfo.xml. Add a DocBook revision history based on
hints from the Git/SVN/CVS revision history.
Comment out or note makefile content that's no longer necessary for
converting the Developer's Guide but will be useful for converting the
User's Guide. Fix building the release notes with CMake. Other minor
changes. Tested with Autotools, nmake, and CMake.
Change-Id: Ib6d50c821ca906fff50a84ad4d6af3212ebdff0a
Reviewed-on: https://code.wireshark.org/review/155
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Tested-by: Gerald Combs <gerald@wireshark.org>
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
Add Windows-style path handling to runlex.sh. Update the example
Chocolatey LEX path accordingly. This lets us use path information in
LEX and have it work in both nmake and runlex.sh
Add a FindChocolatey.cmake module. Update FindLEX and FindYACC to use it.
The code is currently untested and commented out.
svn path=/trunk/; revision=54828
- Using gtk[23] is a hack. Implement a clean solution.
Me
- In the current setup, building Qt ONLY is not supported as
lots of required support libraries are only found in gtk2 and
gtk3. Print an error in that case.
- Small style changes (lowercasing, whitespace)
svn path=/trunk/; revision=53692
I've now got tshark to build from a VS solution file, had to do some hacks
to get there though, patch files attached for others to peruse, as I'm not
sure if they are the optimal solutions:
3. As mentioned in my previous message, the VS solution chops out every
8192nd byte from the command line passed to make-dissector-reg.py. My
patch (make-reg.patch) gets CMake to write out the required source file
list to a file and modifies the python script to read in the file. The
python changes *should* be backwards compatible.
Me: Small fix to UseMakeDissectorReg.cmake (elseif() -> else())
svn path=/trunk/; revision=53654
dir instead.
- (Finally!) fix the problem of missing admon graphics in out of
tree builds - specify the admin directory as an absolute path
This may need porting to Makefile.am
svn path=/trunk/; revision=53618
While it was an interesting exercise it just doesn't
work good enough to stay, i.e. it doesn't automatically
pick up changes but requires rerunning cmake instead.
svn path=/trunk/; revision=53149
- fix a typo
- Add the library dirs and not just the libraries.
This would help if the paths that are now returned
were actually correct.
svn path=/trunk/; revision=52598
problem/solution.
"Long" since solved by copying the solution from Makefile.nmake.
Small update to the status of cmake builds on windows
svn path=/trunk/; revision=52574
Sort the #cmakedefines in cmakeconfig.h.in to more closely match the
order in config.h.in, to make it easier to make sure CMake and autofoo
are doing the same checks. Remove some #cmakedefines that don't
correspond to check that are being done either by CMake or autofoo.
svn path=/trunk/; revision=52515
some smaller changes by me.
- README.cmake
Document how to (one day) run on Windows
- CMakeLists.txt
Use MSVC compiler flags for MSVC instead of gcc flags
- FindWSWinLibs.cmake
New: Creates HINTS for finding includes and libraries
inside the Wireshark support library installation.
- FindXXX.cmake
Make use of HINTS generated by FindWSWinLibs.cmake
This has not really been tested on Windows as my installation seems to have
automagically downloaded some fixes and is in an inconsistent state since.
Will probably need to reinstall.
svn path=/trunk/; revision=52194
be incorrect on the first pass and only be correct when remade.
The reason was that disp-exp.cnf was created incorrectly on first pass.
disp-exp.cnf required dop-exp.cnf to build correctly, so add a mechanism
to add dependencies for export files.
Note: Only the cmake change has been tested, the autofoo stuff requires
testing.
svn path=/trunk/; revision=52120