aboutsummaryrefslogtreecommitdiffstats
path: root/cmake
AgeCommit message (Collapse)AuthorFilesLines
2018-09-09CMake: Remove link test output lineJoão Valverde1-1/+0
The mode keyword STATUS needs to be capitalized, but this line is mostly redundant with the check_c_source_compiles_output(), so just remove it. Change-Id: I7f29915a7ab2c4b5681e0159773d9216643f8a9c Reviewed-on: https://code.wireshark.org/review/29524 Reviewed-by: João Valverde <j@v6e.pt>
2018-09-08CMake: Use upstream check compiler modules insteadJoão Valverde2-117/+0
CMake gives precedence to modules in CMAKE_MODULES_PATH (ours then). It already includes CheckCCompilerFlags and CheckCXXCompilerFlags, prefer uptream's instead, to benefit from bug fixes, etc. Change-Id: I063c43cf29f5837c445e8281262356660594c4e5 Reviewed-on: https://code.wireshark.org/review/29484 Petri-Dish: João Valverde <j@v6e.pt> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-09-07cmake: optionally require Lua 5.1 or newerPeter Wu1-4/+2
doc/README.wslua reports support for 5.1 and 5.2 only. Even RHEL6 ships with Lua 5.1, so it makes not sense to maintain support for Lua 5.0. Change-Id: I34a8084c7fba19d631b90ce5d5a28198be6a7850 Reviewed-on: https://code.wireshark.org/review/29448 Petri-Dish: Peter Wu <peter@lekensteyn.nl> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-08-25CMake: Modernize config-file package supportJoão Valverde3-61/+0
A CMake config-file package provides support for downstreams using CMake and Wireshark libraries to easily configure the libwireshark dependency with: find_package(Wireshark CONFIG [REQUIRED]) target_link_libraries(foo epan) The FindWireshark.cmake file is no longer needed. See cmake-package(7) for more details on CMake's package system. Change-Id: Ie8af1d44417a99dd08d37959f7b2ffca88572ec2 Reviewed-on: https://code.wireshark.org/review/29208 Petri-Dish: João Valverde <j@v6e.pt> Tested-by: Petri Dish Buildbot Reviewed-by: João Valverde <j@v6e.pt>
2018-08-23CMake: Clean up and homogenize plugin dir configurationJoão Valverde2-4/+5
Change-Id: If43c7b124afdf6471164675f8a0c55a76e998ea1 Reviewed-on: https://code.wireshark.org/review/29254 Petri-Dish: João Valverde <j@v6e.pt> Tested-by: Petri Dish Buildbot Reviewed-by: João Valverde <j@v6e.pt>
2018-08-22Revert "CMake: Clean up plugin dirs"João Valverde1-2/+1
Broke system (global) binary plugin path. This reverts commit 450ff674a6e84c3abebff76a470d72114083f27f. Change-Id: I5353d2f3acf4450aed243040ef71425a71542a08 Reviewed-on: https://code.wireshark.org/review/29240 Reviewed-by: João Valverde <j@v6e.pt>
2018-08-21CMake: Clean up plugin dirsJoão Valverde1-1/+2
Change-Id: Ie41366205db19b8a9714ad5259c3f958e1e9ee95 Reviewed-on: https://code.wireshark.org/review/29233 Petri-Dish: João Valverde <j@v6e.pt> Tested-by: Petri Dish Buildbot Reviewed-by: João Valverde <j@v6e.pt>
2018-07-20Clean up tests.Guy Harris1-91/+102
On Windows with MSVC, just assume we have 64-bit file offset support, including _fseeki64() and _ftelli64(). On UN*X, test for Large File Support and for fseeko()/ftello(), and for what #defines are needed to enable them. On Windows without MSVC, test for Large File Support, but assume we have _fseeki64() and _ftelli64(); what *should* we be doing? Clean up indentation and else()/endif() arguments while we're at it. Change-Id: I801d1f4059abbed2d5123d2375a560634a9ee056 Reviewed-on: https://code.wireshark.org/review/28781 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-07-20CMake: Don't bother testing for _fseeki64 on Windows.Gerald Combs2-28/+4
We don't appear to use it and if we ever do need it it's been available since Visual Studio 2005 / MSVCR80. Change-Id: Ifd44d78b96a21577ceea635653517a348ded50f7 Reviewed-on: https://code.wireshark.org/review/28778 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-07-16Lua: add include/lua-5.1 and include/lua-5.2 to CMake path suffixesPascal Quantin1-1/+1
Bug: 14983 Change-Id: I8be206ace7f61c62e2e42bc53841067ec39e3a0a Reviewed-on: https://code.wireshark.org/review/28726 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: João Valverde <j@v6e.pt> Reviewed-by: Peter Wu <peter@lekensteyn.nl> Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2018-06-27docbook: reduce ruby code duplication by introducing utils module.Dario Lombardo1-0/+1
Change-Id: I7e436db3cb86f5ebd0f5827c6da630303bc3f538 Reviewed-on: https://code.wireshark.org/review/28400 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-06-21Fix build paths for cmake's Xcode project generator on macOS.David Kreitschmann1-9/+0
Multi-configuration generators (such as Xcode or VS) append the current build configuration to most paths (eg. Debug/Release). Currently this results in inconsistent paths for the application bundle and the included command line tools. This commit sets the correct path information for multi-configuration generators for macOS application bundles. The standard Makefile behaviour is untouched. One Windows specific configuration was changed, as it was conflicting with these changes. This needs to be checked before merging. Additionally the wrapper scripts are omitted for Xcode, as the path to the binaries depends on the configuration chosen in Xcode. Therefore it is not viable to create these scripts in the cmake run. Bug: 11816 Change-Id: Ib43d82eb04600a0e2f2b020afb44b579ffc7a7c9 Reviewed-on: https://code.wireshark.org/review/28291 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-06-11Rewrite make-{dissectors,taps} in PythonJoão Valverde1-2/+2
Having these build tools in machine code poses problems when cross-compiling. The most significant being that we need to find the host and build GLiB dependencies at compile-time. There is no noticeable speed difference between the Python and C implementation. Ping-Bug: 14622 Change-Id: Id13f823c7f4abf51edfa291e703028873748989f Reviewed-on: https://code.wireshark.org/review/28130 Petri-Dish: Peter Wu <peter@lekensteyn.nl> Tested-by: Petri Dish Buildbot Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2018-05-24Asciidoctor: Remove underscores from macro names.Gerald Combs1-3/+3
AsciiDoc allows dashes in macro names but not underscores. Current versions of AsciiDoctor allow the inverse. Remove underscores to allow for easier copying and pasting. Remove asciidoc.conf while we're here. It's no longer used. Change-Id: I32d8a4ec695b9e17a80ac720ee9faf62dbb362d3 Reviewed-on: https://code.wireshark.org/review/27787 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-05-23Don't look for Asciidoctor PDF unless we find Asciidoctor.Gerald Combs1-12/+12
Fix a doc string while we're here. Change-Id: Ic67e40dc7e8d624a00b97fe40fe162e6f8633cfc Reviewed-on: https://code.wireshark.org/review/27728 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-05-22CMake: Search for asciidoctor-pdf separate from asciidoctor.Gerald Combs2-101/+46
Search for asciidoctorj and asciidoctor-pdf and set ASCIIDOCTOR_PDF_EXECUTABLE if either are found. Only enable the PDF targets if we find ASCIIDOCTOR_PDF_EXECUTABLE. Remove env.cmake since it's no longer needed. Change-Id: Iee82b30eaa67d1ad3fd3a296d9997b0643a0cb4e Reviewed-on: https://code.wireshark.org/review/27696 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-05-11CMake: Remove FindFreetype.Gerald Combs1-129/+0
Remove the FindFreetype module. It was required by the FindGTK2 module, but it's no longer used. Change-Id: Id7575d024b5c13b5800989434a994e3a0dcb2b26 Reviewed-on: https://code.wireshark.org/review/27450 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-05-02Test: Remove the Bash test scripts.Gerald Combs1-41/+0
They've been replaced by the Python scripts. Change-Id: I8add9c9ea0a6bdd68b2fa3841977863c0ea9a761 Reviewed-on: https://code.wireshark.org/review/27243 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-25Put references to autotools in the past tense.Guy Harris1-1/+1
In CMake files, we don't do some checks that our autotools scripts did; speak of those in the past tense, as the autotools scripts are gone. (Leave the comments there, to note that we *might* have to reinstate those tests, although they're for old versions of macOS and GCC.) In CMake files, we use some #defines because that's what autotools did; speak of those in the past tense as well. Change-Id: I594fe8225cf94b5087093febc11f6b0a7e42e7cd Reviewed-on: https://code.wireshark.org/review/27149 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-04-24cmake: remove warnings -Werror=old-style-definitionJoakim Karlsson3-3/+3
see https://cmake.org/Bug/bug_relationship_graph.php?bug_id=15058 Change-Id: I325f476b145a542e987a13bedd1f95a7d8faba94 Reviewed-on: https://code.wireshark.org/review/27121 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-04-24cmake: remove gtk find scripts.Dario Lombardo2-1116/+0
Change-Id: I1645b664ddbf879e82bd4759d26993eab9f2490e Reviewed-on: https://code.wireshark.org/review/27115 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-24CMake: Doxygen and API reference target updates.Gerald Combs1-5/+11
The DOXYGEN_* variables which we use to create doxygen.cfg are native paths and are not compatible with Cygwin. We could try to make them compatible, but given that we're trying to migrate away from Cygwin set "DOXYGEN_EXECUTABLE" to "DOXYGEN_EXECUTABLE-NOTFOUND" if "cyg" is anywhere in its path. Add the wsar_html* targets to "Docs" and exclude them from Visual Studio's default build. Change-Id: Id23a3c43a9f4f1edb2d827bbf36a3a7eb64f0212 Reviewed-on: https://code.wireshark.org/review/27100 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-24CMake: If we find Strawberry's xsltproc, un-find it.Gerald Combs1-1/+8
Strawberry Perl ships with xsltproc but no DocBook XML files, which will break the User's and Developer's Guide targets. Set XSLTPROC_EXECUTABLE to XSLTPROC_EXECUTABLE-NOTFOUND if "strawberry" is anywhere in its path. Change-Id: I070eaa247a24a1a79fcdb01256dd5812aa8f6fa8 Reviewed-on: https://code.wireshark.org/review/27101 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-22Fix up handling of the Kerberos package.Guy Harris1-11/+39
On Ubuntu 16.04, and possibly other versions of Ubuntu, and on Debian and other Debian derivatives, packages for MIT and Heimdal Kerberos can both be installed at the same time - including developer packages. Collisions between headers and libraries are handled by putting them in subdirectories of the system include and library directory and having their .pc files add -isystem flags to point to the appropriate include directory and -L flags to point to the appropriate library directory. CMake's pkg-config support, however, only looks for -I flags, not -isystem flags, in pkg-config output (using --cflags-only-I), so it doesn't get the directory in which to look for the headers, and just uses the results of --libs-only-l to get a list of library names and does nothing with the results of --libs-only-L, causing it not to look for libraries in the directory in which to look for the libraries. We fix this by: If FindKERBEROS.cmake found Kerberos with pkg-config, have it set KERBEROS_DEFINITIONS to the "other" compiler flags, which includes the -isystem flag. For all packages, adding the <PACKAGE>_DEFINITIONS values to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS so that they're used when compiling. If FindKERBEROS.cmake found Kerberos with pkg-config, having it search for each of the libraries in KERBEROS_LIBRARIES using find_library() with KERBEROS_LIBDIR and KERBEROS_LIBRARY_DIRS as hints, and re-assembling the resulting full paths into KERBEROS_LIBRARIES. Change-Id: Ie18b56b76934f542bd12dc737631c0190026d18a Reviewed-on: https://code.wireshark.org/review/27071 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-04-20Windows: add JSON-GLib libraryPascal Quantin1-7/+7
Change-Id: I9b266bffc74779f9d28eabb5642644a2b0afa7cf Reviewed-on: https://code.wireshark.org/review/27049 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-20Windows: upgrade GLib to 2.52.2Pascal Quantin3-24/+3
Change-Id: If54ec9f8c62d95697a5703ea24cf3ad7c2d6112c Reviewed-on: https://code.wireshark.org/review/27048 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-19CMake: fix build with json-glib with gold linkerPeter Wu2-1/+22
JSON-GLIB depends on GObject. To avoid "undefined reference to 'g_object_unref'" with the gold linker, include gobject directly. As the files are included with the GLib package, adjust FindGLIB2.cmake. Change-Id: I007d30b89cc07d8746cee6b619832a722f086105 Fixes: v2.9.0rc0-201-g511c2e166a ("tshark: add -G elastic-mapping report.") Reviewed-on: https://code.wireshark.org/review/27007 Reviewed-by: Dario Lombardo <lomato@gmail.com> Petri-Dish: Dario Lombardo <lomato@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2018-04-19Remove remnants of WS_QT_BIN_PATHPascal Quantin1-3/+1
Change-Id: If1152b285df143dd7cf75abf9ecbc2d0251306df Reviewed-on: https://code.wireshark.org/review/27021 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2018-04-18tshark: add -G elastic-mapping report.Dario Lombardo1-0/+70
This option generates an ElasticSearch mapping file as described here: https://www.elastic.co/blog/analyzing-network-packets-with-wireshark-elasticsearch-and-kibana It leverages the Glib-json library. Change-Id: Iff25f991e87d3da07bf06654e353fb785799dde9 Reviewed-on: https://code.wireshark.org/review/26848 Petri-Dish: Dario Lombardo <lomato@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Peter Wu <peter@lekensteyn.nl> Reviewed-by: Dario Lombardo <lomato@gmail.com>
2018-04-17Add a destination directory flag to git-export-release.Gerald Combs1-11/+0
Add a destination directory flag to git-export-release.sh. Use it to replace the current "dist" target. Use it in the RPM section to avoid a symlink. Change-Id: I30ae76b3ab1a995d232e748b79aa37440f90f854 Reviewed-on: https://code.wireshark.org/review/26974 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-15More PortAudio removal.Gerald Combs1-85/+0
Change-Id: Ib56212e09d41fc76494d8186c77541302700104c Reviewed-on: https://code.wireshark.org/review/26952 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-04-15Check for HAVE_LZ4FRAME_H in the LZ4 detection process and use itJoerg Mayer1-0/+9
Change-Id: I919621b8c4c809eb181d563251eeb099b767ad82 Reviewed-on: https://code.wireshark.org/review/26940 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Jörg Mayer <jmayer@loplof.de> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-09Revert "Docs: Reduce our TOC depth."Peter Wu1-1/+0
The Lua documentation has class names at its third level which is quite useful to discover its documentation. This reverts commit f5cd52c0fb8933973003e07ab130fefbdabfb4f4. Change-Id: I2a2e82041ac46a1a9974727bbb1d5cbf6855a878 Reviewed-on: https://code.wireshark.org/review/26814 Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-04-09Qt: Fix MacOSX menu entriesRoland Knall1-0/+1
Remove various menu items added automatically on Mac OS X. The following menu items have been removed: - Edit / Start Dictation - Edit / Emoji & Symbols - View / Enter Fullscreen Mode - View / Show Tab Bar - Hide Tab Bar Bug: 13366 Change-Id: I44deae7ee8ea7a43926820e4f5d0517ece246939 Reviewed-on: https://code.wireshark.org/review/26823 Petri-Dish: Roland Knall <rknall@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Roland Knall <rknall@gmail.com>
2018-04-07FindAsciidoctor: On SLES 12.2 the executable name is asciidoctor.ruby2.1AndersBroman1-0/+1
Change-Id: I609aae2335ee8171c1d54eb05cf4c184f2dc1eb0 Reviewed-on: https://code.wireshark.org/review/26775 Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-03-27cmake: fix "cmake -E env" compatibility with older CMakePeter Wu2-2/+84
"cmake -E env" was added in CMake 3.1, but we currently support 2.8.12 at minimum. Add a best-effort replacement for older versions. There are some limitations from CMake (see comments), but these should not affect the current user (FindAsciidoctor.cmake). Change-Id: I56c92aa9ad42fb3950dbdfd955d4ff902111e0d7 Fixes: v2.5.1rc0-76-g94a0f7c641 ("Switch from AsciiDoc to Asciidoctor.") Reviewed-on: https://code.wireshark.org/review/26658 Petri-Dish: Peter Wu <peter@lekensteyn.nl> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-03-13CMake: Skip some header checks on Windows.Gerald Combs1-1/+21
Skip some header checks on Windows when we're sure they will always be true. Change-Id: I4ff7c867b9268a53692085553055dcbc0f90ae1d Reviewed-on: https://code.wireshark.org/review/26452 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-03-09Add MaxMindDB 1.3.2 library to WindowsPascal Quantin1-2/+3
Change-Id: I328b6a05cc356be59ac63e80eae55a832bf76a47 Reviewed-on: https://code.wireshark.org/review/26347 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2018-03-09spdx: more licenses converted.Dario Lombardo1-27/+1
Change-Id: Ia1650bc02511f7bd47fb90be91b623177f05bcbd Reviewed-on: https://code.wireshark.org/review/26337 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-03-06CMake: Fixup our Chocolatey bin path discovery.Gerald Combs5-14/+21
Search for choco.exe directly instead of using PATHS + PATH_SUFFIXES. Look in %ChocolateyInstall%\bin first. CHOCOLATEY_BIN_PATH is the binary path. There's no need to append /bin to it. Change-Id: I732db398bd989bf12222a5cee2c79c0bd4161638 Reviewed-on: https://code.wireshark.org/review/26276 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-03-06Transition from GeoIP Legacy to MaxMindDB.Gerald Combs2-74/+74
MaxMind is discontinuing its legacy databases in April in favor of GeoIP2, which use a newer database format (MaxMind DB). The reference C library (libmaxminddb) is available under the Apache 2.0 license which isn't quite compatible with ours. Add mmdbresolve, a utility that reads IPv4 and IPv6 addresses on stdin and prints resolved information on stdout. Place it under a liberal license (MIT) so that we can keep libmaxminddb at arm's length. Add epan/maxmind_db.[ch], which spawns mmdbresolve and communicates with it via stdio. Migrate the preferences and documentation to MaxMindDB. Change the IPv4 and IPv6 asnum fields to FT_UINT32s. Change the geographic coordinate fields to FT_DOUBLEs. Bug: 10658 Change-Id: I24aeed637bea1b41d173270bda413af230f4425f Reviewed-on: https://code.wireshark.org/review/26214 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-03-06CMake: Remove FindSH.Gerald Combs1-36/+0
We haven't used SH_EXECUTABLE since the Asciidoctor migration. Change-Id: I93e8245ea02ed994ebb62942d5ea4ec890e35a97 Reviewed-on: https://code.wireshark.org/review/26277 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-02-26Docs: Reduce our TOC depth.Gerald Combs1-0/+1
Reduce the TOC depth so that it's not quite so huge. Change-Id: I5748edf0e715961da57eff7e0ade6fad175ab24b Reviewed-on: https://code.wireshark.org/review/26110 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-02-14CMake: Try to avoid Strawberry Perl's xsltproc.Gerald Combs1-3/+6
Search for Chocolatey's and Cygwin's respective xsltprocs before searching %PATH%. Strawberry Perl doesn't include DocBook, which makes it useless as far as we're concerned. Another approach would be to look in various locations for an XML catalog files and set %XML_CATALOG_FILES%. However, Cygwin's /etc/xml/catalog contains Cygwin-specific URLs, e.g. file:///etc/xml/docbook and can't be used with a non-Cygwin xsltproc. Change-Id: Iaebfdff922a6574581b9bd207625f03598c166e0 Reviewed-on: https://code.wireshark.org/review/25794 Petri-Dish: Gerald Combs <gerald@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-02-13CMake: Install the HTML guides.Gerald Combs1-0/+33
Add a "FileInstall.cmake" module that installs files and directories. Use it to install the chunked HTML guides. Install the guides into CMAKE_INSTALL_FULL_DOCDIR. By default this is /usr/local/share/doc/Wireshark. Define DOC_DIR to match. Add explicit file and directory permissions to the default install targets. Remove the PDF install target. Bug: 14258 Change-Id: I4712a4047a54627b7520b5bf5f191e0761d19606 Reviewed-on: https://code.wireshark.org/review/25737 Reviewed-by: Gerald Combs <gerald@wireshark.org> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
2018-02-12Remove Lynx.Gerald Combs2-44/+17
Use tools/html2text.py to convert HTML to text. Remove some now-obsolete documentation. Change-Id: Ib21a1ab10c789182da5fcc68e98917a00f2fa650 Reviewed-on: https://code.wireshark.org/review/25733 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-02-11Fix ASCIIDOCTORJ_OPTS.Gerald Combs1-1/+1
Avoid excessive quoting. Change-Id: I0dd7593d464851bd34cfc7a5a99a21a2a826dd7a Reviewed-on: https://code.wireshark.org/review/25732 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-02-11Switch from AsciiDoc to Asciidoctor.Gerald Combs5-354/+161
Switch the markup text processor for files in the docbook directory from AsciiDoc to Asciidoctor. Asciidoctor has several useful features (such as direct PDF output) and is actively developed. It's written in Ruby but that dependency can be sidestepped with AsciidoctorJ, a self-contained bundle that only depends on the JRE. The current toolchain targets require Python, AsciiDoc, DocBook XML, DocBook XSL, Java, FOP, xsltproc, lynx, and the HTMLHelp compiler: HTML: AsciiDoc → DocBook XML → xsltproc + DocBook XSL Chunked HTML: AsciiDoc → DocBook XML → xsltproc + DocBook XSL PDF: AsciiDoc → DocBook XML → xsltproc + DocBook XSL → FOP HTMLHelp: AsciiDoc → DocBook XML → xsltproc + DocBook XSL → HHC This change removes the AsciiDoc and FOP requirements and adds either AsciidoctorJ or Asciidoctor + Ruby: HTML: Asciidoctor → DocBook XML → xsltproc + DocBook XSL Chunked HTML: Asciidoctor → DocBook XML → xsltproc + DocBook XSL PDF: Asciidoctor HTMLHelp: Asciidoctor → DocBook XML → xsltproc + DocBook XSL → HHC Ideally we could generate all of these using AsciidoctorJ, Java, and lynx. Unfortunately we're not there yet. The release notes depend on several macros (ws-buglink, ws-salink, cve-idlink, sort-and-group). Add Asciidoctor (Ruby) equivalents. Remove the BUILD_xxx_GUIDES CMake options and add various output targets automatically. This means that you have to build the various documentation targets explicitly. Change-Id: I31930677a656b99b1c6839bb6c33a13db951eb9a Reviewed-on: https://code.wireshark.org/review/25668 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs <gerald@wireshark.org>
2018-02-04Have individual plugin CMakeLists.txt files add library dependencies.Guy Harris1-21/+2
This removes any knowledge of plugin types from cmake/modules/WiresharkPlugin.cmake, so that it doesn't have to be changed if we add a new plugin type. Revert to the second argument to add_plugin_library() and install_plugin() being the subfolder. Change-Id: I668ab90b28c73a8b12ca8e3e906b8de2f9395ca5 Reviewed-on: https://code.wireshark.org/review/25585 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot Reviewed-by: Guy Harris <guy@alum.mit.edu>
2018-02-03Don't link wiretap plugins with libwireshark.Guy Harris1-3/+21
Make the second argument to add_plugin_library() and install_plugin() be a plugin type - currently, either "epan" or "wiretap" - and, based on its value, set the subfolder and required libraries in add_plugin_library() and the subfolder in install_plugin(). If it's not one of the known values, fail. Change-Id: I556863772c59330d2854fbb4673f544f8359dcd2 Reviewed-on: https://code.wireshark.org/review/25579 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot Reviewed-by: Guy Harris <guy@alum.mit.edu>