mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 05:35:25 +00:00
wireshark: Fix distcheck
Our distcheck is broken. Well, it works but only by pure chance. When wireshark plugin is enabled, we try to query which path should the plugin be installed into. Firstly, we try to ask pkg-config as some releases of wireshark already sets corresponding variable in their pkg-config files. However, if we obtained no value from there we try to construct the path on our own. Based on our observations it usually is: $libdir/wireshark/plugins/$version/. Now, the problem is in the way we are deciding whether we have obtained the plugin directory from pkg-config or not. Simply said, we are checking wrong variable. The variable we are checking has never been set, thus in our test is empty and therefore we will always construct the plugin dir path on our own, regardless of its presence in the pkg-config file. To make things worse, after fixing this problem, VPATH build was broken as it now tried to install plugin into correct directory. Yes, this is problem, because --prefix was not honoured and everything but the plugin was installed into given prefix. I've managed to resolve this issue by replacing plugin dir prefix with our own. So when doing regular installation (our prefix == wireshark prefix), nothing changes. When doing VPATH build & installation plugin is installed into correctly prefixed dir. Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
90bf5f5cb2
commit
dc3002b46c
@ -29,10 +29,16 @@ AC_DEFUN([LIBVIRT_CHECK_WIRESHARK],[
|
||||
if test "x$with_wireshark_dissector" != "xno" ; then
|
||||
if test "x$with_ws_plugindir" = "xcheck" ; then
|
||||
plugindir="$($PKG_CONFIG --variable plugindir wireshark)"
|
||||
if test "x$ws_plugindir" = "x" ; then
|
||||
if test "x$plugindir" = "x" ; then
|
||||
dnl On some systems the plugindir variable may not be stored within pkg config.
|
||||
dnl Fall back to older style of constructing the plugin dir path.
|
||||
plugindir="$libdir/wireshark/plugins/$($PKG_CONFIG --modversion wireshark)"
|
||||
else
|
||||
ws_prefix="$($PKG_CONFIG --variable prefix wireshark)"
|
||||
if test "x$ws_prefix" = "x" ; then
|
||||
ws_prefix="/usr";
|
||||
fi
|
||||
plugindir="${prefix}${plugindir#ws_prefix}"
|
||||
fi
|
||||
elif test "x$with_ws_plugindir" = "xno" || test "x$with_ws_plugindir" = "xyes"; then
|
||||
AC_MSG_ERROR([ws-plugindir must be used only with valid path])
|
||||
|
Loading…
Reference in New Issue
Block a user