[libvirt] Entering freeze for libvirt-0.10.0

Doug Goldstein cardoe at gentoo.org
Tue Aug 28 15:18:40 UTC 2012


On Tue, Aug 28, 2012 at 4:19 AM, Peter Krempa <pkrempa at redhat.com> wrote:
> On 08/27/12 23:09, Eric Blake wrote:
>> On 08/24/2012 10:19 AM, Eric Blake wrote:
>>
>>> Ah, that rings a bell, I knew I'd seen this issue before.  I'm actually
>>> surprised it STILL hasn't been fixed in Ubuntu, and maybe it's time to
>>> apply the workaround below as a build-breaker fix (I think I've posted
>>> it on list before, but never committed it).
>>>
>>
>>>
>>> diff --git i/src/util/virnetlink.h w/src/util/virnetlink.h
>>> index 1982dae..82154de 100644
>>> --- i/src/util/virnetlink.h
>>> +++ w/src/util/virnetlink.h
>>> @@ -26,7 +26,11 @@
>>>
>>>   # if defined(__linux__) && defined(HAVE_LIBNL)
>>>
>>> +/* Work around a bug where older libnl-1 headers expected older gcc
>>> + * semantics of 'extern inline' that conflict with C99 semantics.  */
>>> +#  define inline
>>>   #  include <netlink/msg.h>
>>> +#  undef inline
>>
>> I've now pushed this under the build-breaker rule.
>>
>
> This breaks the build with libnl3:
>
>   CC     libvirt_util_la-virnetdevbridge.lo
> cc1: warnings being treated as errors
> /usr/include/libnl3/netlink/list.h:21:20: error: 'NL_INIT_LIST_HEAD' defined but not used [-Wunused-function]
> /usr/include/libnl3/netlink/list.h:37:20: error: 'nl_list_add_tail' defined but not used [-Wunused-function]
> /usr/include/libnl3/netlink/list.h:43:20: error: 'nl_list_add_head' defined but not used [-Wunused-function]
> /usr/include/libnl3/netlink/list.h:49:20: error: 'nl_list_del' defined but not used [-Wunused-function]
> /usr/include/libnl3/netlink/list.h:55:19: error: 'nl_list_empty' defined but not used [-Wunused-function]
> /usr/include/libnl3/netlink/object.h:60:23: error: 'nl_object_priv' defined but not used [-Wunused-function]
> cc1: error: unrecognized command line option "-Wno-suggest-attribute=const"
> cc1: error: unrecognized command line option "-Wno-suggest-attribute=pure"
> make[3]: *** [libvirt_util_la-virnetdev.lo] Error 1
>
> That annoying libnl-1 bug exists also in other distros that for some reason
> refuse to fix it (e.g. gentoo) but upgrading to libnl3 helps and libvirt
> compiles cleanly.
>
> Libnl3 unfortunately has some inline functions in the header files where
> removing the inline keyword is catastrophic. I vote for reverting this patch
> and have distros apply that long-known trivial patch that fixes libnl-1 headers
> rather than breaking libnl3 support.
>
> Peter
>
>

Erm. Gentoo doesn't have the issue. I mentioned that Gentoo has the
same fix that Fedora had which was the commit from upstream applied.
The broken distro was Ubuntu 10.04, which I believe is a LTS release.
The other mention of Gentoo I made was that we put libnl3 headers in
the same path that Fedora does to support parallel installs of libnl1
and libnl3.

-- 
Doug Goldstein




More information about the libvir-list mailing list