Re: [libvirt] [PATCH] Include some extra headers needed for OpenBSD.

2012-09-04 Thread Jasper Lievisse Adriaanse
On Tue, Sep 04, 2012 at 10:45:41AM -0600, Eric Blake wrote:
> On 09/04/2012 10:23 AM, Jasper Lievisse Adriaanse wrote:
> > On Tue, Sep 04, 2012 at 09:18:20AM -0600, Eric Blake wrote:
> >> On 09/04/2012 08:57 AM, Jasper Lievisse Adriaanse wrote:
> >>> >From bafcb4ed2b90b5ba845ca6b61861e3caa548b16a Mon Sep 17 00:00:00 2001
> >>> From: Jasper Lievisse Adriaanse 
> >>> Date: Tue, 4 Sep 2012 16:57:09 +0200
> >>> Subject: [PATCH] Include some extra headers needed for OpenBSD.
> >>>
> >>> ---
> >>>  src/util/virnetdevbridge.c |9 +
> >>>  1 files changed, 9 insertions(+), 0 deletions(-)
> >>
> >> Please show the compiler errors that you got without these includes.  I
> >> can't help but wonder if you have instead uncovered a bug in the gnulib
> >> headers, but knowing which symbols were not declared makes a difference
> >> in answering that question.
> 
> I'd still like to know the compiler error you got when 
> was not present, but just guessing from the source code, I see one call
> of socket() (protected behind #if defined(HAVE_NET_IF_H) &&
> defined(SIOCBRADDBR), but maybe those are both true for OpenBSD?).  Even
> though I'm pushing, I would STILL like to know why.
Of course, here it is:

In file included from util/virnetdevbridge.c:35:
/usr/include/net/if.h:276: warning: 'struct sockaddr' declared inside
parameter list
/usr/include/net/if.h:276: warning: its scope is only this definition or
declaration, which is probably not what you want
/usr/include/net/if.h:280: warning: 'struct sockaddr' declared inside
parameter list
/usr/include/net/if.h:293: error: 'AF_MAX' undeclared here (not in a function)
/usr/include/net/if.h:606: error: field 'ifru_addr' has incomplete type
/usr/include/net/if.h:607: error: field 'ifru_dstaddr' has incomplete type
/usr/include/net/if.h:608: error: field 'ifru_broadaddr' has incomplete type
/usr/include/net/if.h:626: error: field 'ifra_addr' has incomplete type
/usr/include/net/if.h:627: error: field 'ifra_dstaddr' has incomplete type
/usr/include/net/if.h:629: error: field 'ifra_mask' has incomplete type
/usr/include/net/if.h:673: error: field 'addr' has incomplete type
/usr/include/net/if.h:674: error: field 'dstaddr' has incomplete type
In file included from /usr/include/net/if.h:692,
 from util/virnetdevbridge.c:35:
/usr/include/net/if_arp.h:79: error: field 'arp_pa' has incomplete type
/usr/include/net/if_arp.h:80: error: field 'arp_ha' has incomplete type
Error while executing cc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I../gnulib/lib
-I../gnulib/lib -I../include -I../include -I../src/util -DIN_LIBVIRT
-I/usr/local/include -I/usr/local/include/libxml2 -I/usr/local/include -Wall
-W -Wformat-y2k -Wformat-security -Winit-self -Wmissing-include-dirs -Wunused
-Wunknown-pragmas -Wstrict-aliasing -Wshadow -Wpointer-arith
-Wbad-function-cast -Wcast-align -Wwrite-strings -Wstrict-prototypes
-Wold-style-definition -Wmissing-noreturn -Wmissing-format-attribute
-Wredundant-decls -Wnested-externs -Winline -Winvalid-pch
-Wvolatile-register-var -Wdisabled-optimization -Wattributes
-Wdeprecated-declarations -Wdiv-by-zero -Wendif-labels -Wextra
-Wformat-extra-args -Wformat-zero-length -Wformat=2 -Wmultichar
-Wnormalized=nfc -Woverflow -Wpointer-to-int-cast -Wpragmas -Wtrampolines
-Wno-missing-field-initializers -Wno-sign-compare -Wno-format-nonliteral
-fexceptions -fasynchronous-unwind-tables -fdiagnostics-show-option
-funit-at-a-time -fipa-pure-const -I/usr/local/include/dbus-1.0
-I/usr/local/lib/dbus-1.0/include -O2 -pipe -MT
libvirt_util_la-virnetdevbridge.lo -MD -MP -MF
.deps/libvirt_util_la-virnetdevbridge.Tpo -c util/virnetdevbridge.c -fPIC
-DPIC -o .libs/libvirt_util_la-virnetdevbridge.o
gmake[3]: *** [libvirt_util_la-virnetdevbridge.lo] Error 1
gmake[3]: Leaving directory `/usr/obj/ports/libvirt-0.10.1/libvirt-0.10.1/src'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/usr/obj/ports/libvirt-0.10.1/libvirt-0.10.1/src'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/obj/ports/libvirt-0.10.1/libvirt-0.10.1'
gmake: *** [all] Error 2

> >> This line shouldn't be necessary; gnulib guarantees a working
> >>  on all architectures.
> > OK. Could you please push this one then?
> 
> Here's what I squashed in before pushing; I also added you to AUTHORS.
> Let me know if you prefer an alternate spelling or email address (the
> file is in UTF-8, if that matters).
Thanks, my name and e-mail as I sent them are ok.

> diff --git i/src/util/virnetdevbridge.c w/src/util/virnetdevbridge.c
> index 8559223..a29e4b2 100644
> --- i/src/util/virnetdevbridge.c
> +++ w/src/util/virnetdevbridge.c
> @@ -30,14 +30,7 @@
>  #include "intprops.h"
> 
>  #include 
> -
> -#ifdef HAVE_SYS_PARAM_H
> -# include 
> -#endif
> -
> -#ifdef HAVE_SYS_SOCKET_H
> -# include 
> -#endif
> +#include 
> 
>  #ifdef HAVE_NET_IF_H
>  # include 
> 
> -- 
> Eric Blake   ebl...@redhat.com+1-919-301-3266
> Libvirt virtualization library http://libvirt.org
> 



-- 
Cheers,
Jaspe

Re: [libvirt] [PATCH] Include some extra headers needed for OpenBSD.

2012-09-04 Thread Eric Blake
On 09/04/2012 10:23 AM, Jasper Lievisse Adriaanse wrote:
> On Tue, Sep 04, 2012 at 09:18:20AM -0600, Eric Blake wrote:
>> On 09/04/2012 08:57 AM, Jasper Lievisse Adriaanse wrote:
>>> >From bafcb4ed2b90b5ba845ca6b61861e3caa548b16a Mon Sep 17 00:00:00 2001
>>> From: Jasper Lievisse Adriaanse 
>>> Date: Tue, 4 Sep 2012 16:57:09 +0200
>>> Subject: [PATCH] Include some extra headers needed for OpenBSD.
>>>
>>> ---
>>>  src/util/virnetdevbridge.c |9 +
>>>  1 files changed, 9 insertions(+), 0 deletions(-)
>>
>> Please show the compiler errors that you got without these includes.  I
>> can't help but wonder if you have instead uncovered a bug in the gnulib
>> headers, but knowing which symbols were not declared makes a difference
>> in answering that question.

I'd still like to know the compiler error you got when 
was not present, but just guessing from the source code, I see one call
of socket() (protected behind #if defined(HAVE_NET_IF_H) &&
defined(SIOCBRADDBR), but maybe those are both true for OpenBSD?).  Even
though I'm pushing, I would STILL like to know why.

>>
>> This line shouldn't be necessary; gnulib guarantees a working
>>  on all architectures.
> OK. Could you please push this one then?

Here's what I squashed in before pushing; I also added you to AUTHORS.
Let me know if you prefer an alternate spelling or email address (the
file is in UTF-8, if that matters).

diff --git i/src/util/virnetdevbridge.c w/src/util/virnetdevbridge.c
index 8559223..a29e4b2 100644
--- i/src/util/virnetdevbridge.c
+++ w/src/util/virnetdevbridge.c
@@ -30,14 +30,7 @@
 #include "intprops.h"

 #include 
-
-#ifdef HAVE_SYS_PARAM_H
-# include 
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-# include 
-#endif
+#include 

 #ifdef HAVE_NET_IF_H
 # include 

-- 
Eric Blake   ebl...@redhat.com+1-919-301-3266
Libvirt virtualization library http://libvirt.org



signature.asc
Description: OpenPGP digital signature
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Re: [libvirt] [PATCH] Include some extra headers needed for OpenBSD.

2012-09-04 Thread Jasper Lievisse Adriaanse
On Tue, Sep 04, 2012 at 09:18:20AM -0600, Eric Blake wrote:
> On 09/04/2012 08:57 AM, Jasper Lievisse Adriaanse wrote:
> >>From bafcb4ed2b90b5ba845ca6b61861e3caa548b16a Mon Sep 17 00:00:00 2001
> > From: Jasper Lievisse Adriaanse 
> > Date: Tue, 4 Sep 2012 16:57:09 +0200
> > Subject: [PATCH] Include some extra headers needed for OpenBSD.
> > 
> > ---
> >  src/util/virnetdevbridge.c |9 +
> >  1 files changed, 9 insertions(+), 0 deletions(-)
> 
> Please show the compiler errors that you got without these includes.  I
> can't help but wonder if you have instead uncovered a bug in the gnulib
> headers, but knowing which symbols were not declared makes a difference
> in answering that question.
> 
> > 
> > diff --git a/src/util/virnetdevbridge.c b/src/util/virnetdevbridge.c
> > index 7b11bee..8559223 100644
> > --- a/src/util/virnetdevbridge.c
> > +++ b/src/util/virnetdevbridge.c
> > @@ -30,6 +30,15 @@
> >  #include "intprops.h"
> >  
> >  #include 
> > +
> > +#ifdef HAVE_SYS_PARAM_H
> 
>  is non-standard; what are we using that requires us to
> probe for its existence?  Should gnulib consider guaranteeing this
> header in spite of it being non-standard?
Nope, it was an error on my side to include it. I thought it was needed by
socket.h, but after trying to show you the error...there was none.
 
> > +# include 
> > +#endif
> > +
> > +#ifdef HAVE_SYS_SOCKET_H
> 
> This line shouldn't be necessary; gnulib guarantees a working
>  on all architectures.
OK. Could you please push this one then?
 
> -- 
> Eric Blake   ebl...@redhat.com+1-919-301-3266
> Libvirt virtualization library http://libvirt.org
> 



-- 
Cheers,
Jasper

"Stay Hungry. Stay Foolish"

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list


Re: [libvirt] [PATCH] Include some extra headers needed for OpenBSD.

2012-09-04 Thread Eric Blake
On 09/04/2012 08:57 AM, Jasper Lievisse Adriaanse wrote:
>>From bafcb4ed2b90b5ba845ca6b61861e3caa548b16a Mon Sep 17 00:00:00 2001
> From: Jasper Lievisse Adriaanse 
> Date: Tue, 4 Sep 2012 16:57:09 +0200
> Subject: [PATCH] Include some extra headers needed for OpenBSD.
> 
> ---
>  src/util/virnetdevbridge.c |9 +
>  1 files changed, 9 insertions(+), 0 deletions(-)

Please show the compiler errors that you got without these includes.  I
can't help but wonder if you have instead uncovered a bug in the gnulib
headers, but knowing which symbols were not declared makes a difference
in answering that question.

> 
> diff --git a/src/util/virnetdevbridge.c b/src/util/virnetdevbridge.c
> index 7b11bee..8559223 100644
> --- a/src/util/virnetdevbridge.c
> +++ b/src/util/virnetdevbridge.c
> @@ -30,6 +30,15 @@
>  #include "intprops.h"
>  
>  #include 
> +
> +#ifdef HAVE_SYS_PARAM_H

 is non-standard; what are we using that requires us to
probe for its existence?  Should gnulib consider guaranteeing this
header in spite of it being non-standard?

> +# include 
> +#endif
> +
> +#ifdef HAVE_SYS_SOCKET_H

This line shouldn't be necessary; gnulib guarantees a working
 on all architectures.

-- 
Eric Blake   ebl...@redhat.com+1-919-301-3266
Libvirt virtualization library http://libvirt.org



signature.asc
Description: OpenPGP digital signature
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list