[libvirt] [PATCH] build: require libnl-3 if netcf uses it
Daniel P. Berrange
berrange at redhat.com
Wed Sep 11 08:15:26 UTC 2013
On Tue, Sep 10, 2013 at 11:52:00AM -0600, Eric Blake wrote:
> ping; I'm debating about pushing this under the build-breaker rule
>
> On 09/04/2013 03:19 PM, Eric Blake wrote:
> > Commits 9298bfb and f6c2951 both tried to make it possible to
> > select the correct libnl (1 vs. 3) according to what netcf
> > used, when both libraries are installed. This works to avoid
> > libnl-3 when netcf used libnl-1. But on the converse side, if
> > only libnl-1 development code is installed, while netcf uses
> > libnl-3, then configure happily uses libnl-1 anyways, leading
> > to a test failure:
> >
> > $ VIR_TEST_DEBUG=1 ./virdrivermoduletest
> > TEST: virdrivermoduletest
> > 1) Test driver "network" ... OK
> > 2) Test driver "storage" ... OK
> > 3) Test driver "nodedev" ... OK
> > 4) Test driver "secret" ... OK
> > 5) Test driver "nwfilter" ... OK
> > 6) Test driver "interface"
> > ... lt-virdrivermoduletest: route/tc.c:973: rtnl_tc_register: Assertion
> > `0' failed.
> > Aborted
> >
> > It's much nicer to prevent this at configure time, by requiring that
> > if we know what netcf used, then we want the same libnl version. As
> > before, this can be bypassed by someone who knows what they are doing
> > by setting LIBNL_CFLAGS (perhaps useful to the rare person where the
> > build box has a different version of netcf than the installation box).
> >
> > * configure.ac (LIBNL): If we can prove netcf used libnl-3, then
> > don't let configure succeed with libnl-1.
> >
> > Signed-off-by: Eric Blake <eblake at redhat.com>
> > ---
> > configure.ac | 3 +++
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/configure.ac b/configure.ac
> > index f853e03..9950e3e 100644
> > --- a/configure.ac
> > +++ b/configure.ac
> > @@ -2416,6 +2416,9 @@ if test "$with_linux" = "yes"; then
> > fi
> > done
> > case $libnl_ldd:${LIBNL_CFLAGS+set} in
> > + *libnl-3.so.*:) LIBNL_REQUIRED=3.0 ;;
> > + esac
> > + case $libnl_ldd:${LIBNL_CFLAGS+set} in
> > *libnl.so.1*:) ;;
> > *)
> > PKG_CHECK_MODULES([LIBNL], [libnl-3.0], [
> >
ACK
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list