On Fri, Sep 27, 2013 at 4:57 AM, Eric Blake <eblake(a)redhat.com> wrote:
On 09/27/2013 01:35 AM, Michal Privoznik wrote:
>
> make[3]: Entering directory
> `/home/zippy/work/tmp/a/libvirt-1.1.2/gnulib/lib'
> CC allocator.lo
> In file included from allocator.c:4:0:
> ./stdlib.h:76:8: error: redefinition of 'struct random_data'
> struct random_data
> ^
> In file included from ./stdlib.h:36:0,
> from allocator.c:4:
> /usr/include/stdlib.h:349:8: note: originally defined here
> struct random_data
> ^
> In file included from /usr/include/sys/types.h:220:0,
> from ./sys/types.h:27,
> from /usr/include/stdlib.h:320,
> from ./stdlib.h:36,
> from allocator.c:4:
>
> There are a few more but of the same nature.
> The problem is, gnulib's stdlib.h defines the struct random_data. And so
> does the system's /usr/include/stdlib.h. Unfortunately, I'm not that
> familiar with gnulib to fix the issue myself. Eric, any thoughts on
> this? Is it possible that your recent gnulib update has fixed this?
That implies a bug in gnulib; I'll see if I can get it fixed today; we'd
need to update the gnulib submodule of libvirt to pull in the fix, so
hopefully I can get it done in time before the rc2 build is cut. Can
you show me the config.log output related to detecting whether 'struct
random_data' exists? Is this a case of circular header inclusion on
FreeBSD (that is, does <sys/types.h> try to recursively include
<stdlib.h> to pick up the struct?)
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org
Should be available here:
http://people.freebsd.org/~jgh/files/libvirt_83amd64.tar.xz
-jgh
--
Jason Helfman | FreeBSD Committer
jgh(a)FreeBSD.org |
http://people.freebsd.org/~jgh | The Power to Serve