On Sat, Dec 03, 2011 at 01:03:08PM -0700, Eric Blake wrote: > The RPC fixups needed on Linux are also needed on cygwin, and > worked without further tweaking to the list of fixups. Also, > unlike BSD, Cygwin exports 'struct ifreq', but unlike Linux, > Cygwin lacks the ioctls that we were using 'struct ifreq' to > access. This patch allows compilation under cygwin. > > * src/rpc/genprotocol.pl: Also perform fixups on cygwin. > * src/util/virnetdev.c (HAVE_STRUCT_IFREQ): Also require AF_PACKET > definition. > * src/util/virnetdevbridge.c (virNetDevSetupControlFull): Only > compile if SIOCBRADDBR works. > --- > > Pushing under the build-breaker rule. > > src/rpc/genprotocol.pl | 2 +- > src/util/virnetdev.c | 2 ++ > src/util/virnetdevbridge.c | 2 +- > 3 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/src/rpc/genprotocol.pl b/src/rpc/genprotocol.pl > index 166508b..7af1b3b 100755 > --- a/src/rpc/genprotocol.pl > +++ b/src/rpc/genprotocol.pl > @@ -31,7 +31,7 @@ open RPCGEN, "-|", $rpcgen, $mode, $xdrdef > open TARGET, ">$target" > or die "cannot create $target: $!"; > > -my $fixup = $^O eq "linux"; > +my $fixup = $^O eq "linux" || $^O eq "cygwin"; > > if ($mode eq "-c") { > print TARGET "#include <config.h>\n"; > diff --git a/src/util/virnetdev.c b/src/util/virnetdev.c > index 3187215..a1c62e3 100644 > --- a/src/util/virnetdev.c > +++ b/src/util/virnetdev.c > @@ -38,6 +38,8 @@ > #ifdef __linux__ > # include <linux/sockios.h> > # include <linux/if_vlan.h> > +#elif !defined(AF_PACKET) > +# undef HAVE_STRUCT_IFREQ > #endif > > #define VIR_FROM_THIS VIR_FROM_NONE > diff --git a/src/util/virnetdevbridge.c b/src/util/virnetdevbridge.c > index 0440a73..e246b2c 100644 > --- a/src/util/virnetdevbridge.c > +++ b/src/util/virnetdevbridge.c > @@ -45,7 +45,7 @@ > #define VIR_FROM_THIS VIR_FROM_NONE > > > -#ifdef HAVE_NET_IF_H > +#if defined(HAVE_NET_IF_H) && defined(SIOCBRADDBR) > static int virNetDevSetupControlFull(const char *ifname, > struct ifreq *ifr, > int domain, 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 :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list