2015-03-16 11:52:13 +00:00
|
|
|
dnl The libvirt.so wireshark plugin
|
|
|
|
dnl
|
|
|
|
dnl Copyright (C) 2015 Red Hat, Inc.
|
|
|
|
dnl
|
|
|
|
dnl This library is free software; you can redistribute it and/or
|
|
|
|
dnl modify it under the terms of the GNU Lesser General Public
|
|
|
|
dnl License as published by the Free Software Foundation; either
|
|
|
|
dnl version 2.1 of the License, or (at your option) any later version.
|
|
|
|
dnl
|
|
|
|
dnl This library is distributed in the hope that it will be useful,
|
|
|
|
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
dnl Lesser General Public License for more details.
|
|
|
|
dnl
|
|
|
|
dnl You should have received a copy of the GNU Lesser General Public
|
|
|
|
dnl License along with this library. If not, see
|
|
|
|
dnl <http://www.gnu.org/licenses/>.
|
|
|
|
dnl
|
|
|
|
|
|
|
|
AC_DEFUN([LIBVIRT_CHECK_WIRESHARK],[
|
|
|
|
LIBVIRT_CHECK_PKG([WIRESHARK_DISSECTOR], [wireshark], [1.11.3])
|
|
|
|
|
|
|
|
AC_ARG_WITH([ws-plugindir],
|
|
|
|
[AS_HELP_STRING([--with-ws-plugindir],
|
|
|
|
[wireshark plugins directory for use when installing wireshark plugin])],
|
|
|
|
[], [with_ws_plugindir=check])
|
|
|
|
|
|
|
|
dnl Check for system location of wireshark plugins
|
|
|
|
if test "x$with_wireshark_dissector" != "xno" ; then
|
|
|
|
if test "x$with_ws_plugindir" = "xcheck" ; then
|
2016-01-12 16:20:08 +00:00
|
|
|
plugindir="$($PKG_CONFIG --variable plugindir wireshark)"
|
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>
2016-04-21 05:33:01 +00:00
|
|
|
if test "x$plugindir" = "x" ; then
|
2015-10-27 13:02:19 +00:00
|
|
|
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.
|
2016-01-12 16:20:08 +00:00
|
|
|
plugindir="$libdir/wireshark/plugins/$($PKG_CONFIG --modversion wireshark)"
|
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>
2016-04-21 05:33:01 +00:00
|
|
|
else
|
|
|
|
ws_prefix="$($PKG_CONFIG --variable prefix wireshark)"
|
|
|
|
if test "x$ws_prefix" = "x" ; then
|
|
|
|
ws_prefix="/usr";
|
|
|
|
fi
|
|
|
|
plugindir="${prefix}${plugindir#ws_prefix}"
|
2015-10-27 13:02:19 +00:00
|
|
|
fi
|
2015-03-16 11:52:13 +00:00
|
|
|
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])
|
|
|
|
else
|
2016-01-12 16:20:08 +00:00
|
|
|
plugindir=$with_ws_plugindir
|
2015-03-16 11:52:13 +00:00
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2016-01-12 16:20:08 +00:00
|
|
|
AC_SUBST([plugindir])
|
2015-03-16 11:52:13 +00:00
|
|
|
])
|
|
|
|
|
|
|
|
AC_DEFUN([LIBVIRT_RESULT_WIRESHARK],[
|
|
|
|
LIBVIRT_RESULT_LIB([WIRESHARK_DISSECTOR])
|
|
|
|
])
|