[libvirt] Libvirt CVS fails to build on PPC
Jim Meyering
jim at meyering.net
Thu Nov 6 07:47:36 UTC 2008
Chris Lalancette <clalance at redhat.com> wrote:
> Actually, the subject isn't strictly true. Libvirt CVS currently fails to build
> when using this configuration on any platform:
>
> ./configure --build=i686-redhat-linux-gnu --host=i686-redhat-linux-gnu
> --target=i386-redhat-linux-gnu --program-prefix= --prefix=/usr
> --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc
> --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib
> --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/usr/com
> --mandir=/usr/share/man --infodir=/usr/share/info --without-xen --without-qemu
> --with-init-script=redhat --with-qemud-pid-file=/var/run/libvirt_qemud.pid
> --with-remote-file=/var/run/libvirtd.pid
>
> (the important part is the --without-xen --without-qemu in there). This just
> happens to be the configuration that koji uses when it is building the ppc
> libvirt package. There are a lot of build errors, but they start with:
>
> network_driver.c:64: error: expected specifier-qualifier-list before
> 'iptablesContext'
> network_driver.c: In function 'networkStartup':
> network_driver.c:124: error: 'struct network_driver' has no member named 'logDir'
>
> This seems to stem from the new module refactoring. I'm not entirely sure
> what's the correct way to fix it, however; I *think* we always want to build the
> network_driver at this point, but if that's the case, then we need to make sure
> we have the header files for iptablesContext and friends included. Dan, any ideas?
Hi Chris,
FYI, this patch fixes it.
The result builds both on rawhide and for mingw.
>From ea7a97d34f1ae04ef6bd1f9584d946a5bc4575b4 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering at redhat.com>
Date: Thu, 6 Nov 2008 08:42:33 +0100
Subject: [PATCH] always compile iptables.c
Avoid a build error when configuring --without-xen --without-qemu.
* src/iptables.c [WITH_QEMU]: Don't #ifdef-out.
* src/iptables.h [WITH_QEMU]: Don't #ifdef-out.
---
src/iptables.c | 4 ----
src/iptables.h | 6 +-----
2 files changed, 1 insertions(+), 9 deletions(-)
diff --git a/src/iptables.c b/src/iptables.c
index 53e0f41..ad7fddf 100644
--- a/src/iptables.c
+++ b/src/iptables.c
@@ -21,8 +21,6 @@
#include <config.h>
-#if WITH_QEMU
-
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
@@ -1120,5 +1118,3 @@ iptablesRemoveForwardMasquerade(iptablesContext *ctx,
{
return iptablesForwardMasquerade(ctx, network, physdev, REMOVE);
}
-
-#endif /* WITH_QEMU */
diff --git a/src/iptables.h b/src/iptables.h
index 95f07de..fbe9b5d 100644
--- a/src/iptables.h
+++ b/src/iptables.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2007 Red Hat, Inc.
+ * Copyright (C) 2007, 2008 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -22,8 +22,6 @@
#ifndef __QEMUD_IPTABLES_H__
#define __QEMUD_IPTABLES_H__
-#if WITH_QEMU
-
typedef struct _iptablesContext iptablesContext;
iptablesContext *iptablesContextNew (void);
@@ -95,6 +93,4 @@ int iptablesRemoveForwardMasquerade (iptablesContext *ctx,
const char *network,
const char *physdev);
-#endif /* WITH_QEMU */
-
#endif /* __QEMUD_IPTABLES_H__ */
--
1.6.0.3.756.gb776d
More information about the libvir-list
mailing list