forked from osmocom/wireshark
c451e572e5
Fixes "make install" to be relocatable using DESTDIR. For that we cannot use an absolute path as intallation directory target. This is useful mostly to implement packaging using CPack. It is a bit awkward to configure a default CMAKE_INSTALL_PREFIX using WiresharkConfig.cmake but it seems to be working OK. The previous non-relocatable behaviour may still be useful. It is relegated to a custom "copy_plugin" target. |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
README | ||
hello.c |
README
This is an example of how to build a Wireshark plugin out-of-tree. This is an alternative, more recent way to build Wireshark binary plugins, than the one in 'README.plugins', that describes in detail how to include a new plugin into the project source tree (here called in-tree build). Building a plugin out-of-tree doesn't require rebuilding the whole Wireshark source tree every time. You always need to rebuild plugins for each major.minor Wireshark version. Binary compatibility is never guaranteed between those releases and Wireshark will explicitly check for which version the plugin was built and refuse to load it otherwise. Note that the out-of-tree method builds the plugin using CMake's Config-file mechanism[1] for configuration. In other words the plugin build system uses the Wireshark headers that were installed on the system using "make install" or equivalent (as configured from WiresharkConfig.cmake). This is not the same as an in-tree build. You should of course adapt this trivial example to your own needs. To build/install the plugin: $ mkdir build && cd build $ cmake .. $ make $ sudo make install If your WiresharkConfig.cmake file is not in one of the standard cmake search paths you will have to tell cmake where to find it. You can do so using CMAKE_PREFIX_PATH, for example: $ cmake -DCMAKE_PREFIX_PATH="/opt/wireshark" .. [1]https://cmake.org/cmake/help/latest/manual/cmake-packages.7.html#config-file-packages