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@xxxxxxxxxx> > --- > 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], [ > -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list