[libvirt] [PATCH] fix build erro when building with --without-libvirtd
Martin Kletzander
mkletzan at redhat.com
Mon Feb 4 11:25:48 UTC 2013
On 02/04/2013 09:23 AM, Hu Tao wrote:
> ---
> src/driver.h | 4 ---
> src/libvirt.c | 70 +++++++++++++++++++++++++++++++++++++++++++++++++-
> src/libvirt_internal.h | 2 --
> 3 files changed, 69 insertions(+), 7 deletions(-)
>
> diff --git a/src/driver.h b/src/driver.h
> index 02ddd83..dab7495 100644
> --- a/src/driver.h
> +++ b/src/driver.h
> @@ -1512,7 +1512,6 @@ struct _virStorageDriver {
> virDrvStoragePoolIsPersistent poolIsPersistent;
> };
>
> -# ifdef WITH_LIBVIRTD
>
> typedef int (*virDrvStateInitialize) (bool privileged,
> virStateInhibitCallback callback,
> @@ -1531,7 +1530,6 @@ struct _virStateDriver {
> virDrvStateReload reload;
> virDrvStateStop stop;
> };
> -# endif
Even though this is a solution and it makes the calls to virState* never
fail during compilation, I see the other approach being used as well in
some files (xen _driver.c for example):
#ifdef WITH_LIBVIRTD
if (virRegisterStateDriver(&state_driver) == -1) return -1;
#endif
I like this a bit more, but that's just a subjective opinion. However,
if you go with your approach, I'd rather see it cleaning up those paths
as well.
>
> typedef struct _virDeviceMonitor virDeviceMonitor;
> @@ -1768,9 +1766,7 @@ int virRegisterStorageDriver(virStorageDriverPtr);
> int virRegisterDeviceMonitor(virDeviceMonitorPtr);
> int virRegisterSecretDriver(virSecretDriverPtr);
> int virRegisterNWFilterDriver(virNWFilterDriverPtr);
> -# ifdef WITH_LIBVIRTD
> int virRegisterStateDriver(virStateDriverPtr);
> -# endif
> void virDriverModuleInitialize(const char *defmoddir);
> void *virDriverLoadModule(const char *name);
>
> diff --git a/src/libvirt.c b/src/libvirt.c
> index f81a3de..38e4f6e 100644
> --- a/src/libvirt.c
> +++ b/src/libvirt.c
> @@ -885,8 +885,76 @@ int virStateStop(void) {
> return ret;
> }
>
> -#endif
> +#else /* WITH_LIBVIRTD */
> +
> +/**
> + * virRegisterStateDriver:
> + * @driver: pointer to a driver block
> + *
> + * Register a virtualization driver
> + *
> + * Returns the driver priority or -1 in case of error.
> + */
> +int
> +virRegisterStateDriver(virStateDriverPtr driver ATTRIBUTE_UNUSED)
> +{
> + return 0;
> +}
> +
The comment is false in this case, so I'd keep the comments to a minimum
and just mention that these are just dummy functions.
[...]
Martin
More information about the libvir-list
mailing list