[PATCH] Fix build when './configure --enable-xenctrl' is used
Hi all, The attached patch against v0.4 fixes the build when --enable-xenctrl is used. If this configure option is used vhostmd does not link against libvirt or virt-util.o, but a few bits of code were assuming that these were always linked in. Please could you consider this patch for inclusion in the vhostmd project. Regards, Alex Zeffertt Fix build when "./configure --enable-xenctrl" is used. This option disables the use of libvirt. Instead libxc gets used to find out stuff about VMs. If this option is used then virt-util.c does not get built. This patch removes the linker dependencies on virt-util.o when --enable-xenctrl is used. Signed-off-by: <alex.zeffertt@eu.citrix.com> diff -urN a/configure.ac b/configure.ac --- a/configure.ac 2009-12-09 09:41:52.000000000 -0500 +++ b/configure.ac 2010-01-07 06:18:44.000000000 -0500 @@ -55,7 +55,8 @@ AC_ARG_ENABLE([xenctrl], [ --enable-xenctrl use xenctrl specific vm enumeration instead of libvirt], [case "${enableval}" in - yes) xenctrl=true + yes) xenctrl=true + CFLAGS="$CFLAGS -DXENCTRL" ;; no) xenctrl=false ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-xenctrl) ;; diff -urN a/include/util.h b/include/util.h --- a/include/util.h 2009-12-09 09:41:52.000000000 -0500 +++ b/include/util.h 2010-01-07 06:25:53.000000000 -0500 @@ -47,10 +47,13 @@ char *uuid; } vu_vm; + +#ifndef XENCTRL /* The libvirt URI to connect to (-c argument on the command line). If * not set, this will be NULL. */ extern const char *libvirt_uri; +#endif /* * Init logging interface. If running as daemon messages diff -urN a/vhostmd/metric.c b/vhostmd/metric.c --- a/vhostmd/metric.c 2009-12-09 09:41:52.000000000 -0500 +++ b/vhostmd/metric.c 2010-01-07 06:25:16.000000000 -0500 @@ -71,6 +71,10 @@ return -1; } +#ifdef XENCTRL + temp = replace (temp, "CONNECT", ""); + if (temp == NULL) return -1; +#else /* LIBVIRT used instead */ if (libvirt_uri) { temp = replace (temp, "CONNECT", "--connect '%s'", libvirt_uri); if (temp == NULL) return -1; @@ -78,6 +82,7 @@ temp = replace (temp, "CONNECT", ""); if (temp == NULL) return -1; } +#endif if (m->ctx == METRIC_CONTEXT_VM) { temp = replace (temp, "NAME", "%s", m->vm->name); diff -urN a/vhostmd/vhostmd.c b/vhostmd/vhostmd.c --- a/vhostmd/vhostmd.c 2009-12-09 09:41:52.000000000 -0500 +++ b/vhostmd/vhostmd.c 2010-01-07 06:24:16.000000000 -0500 @@ -976,7 +976,9 @@ { "config", required_argument, NULL, 'f'}, { "pid-file", required_argument, NULL, 'p'}, { "user", required_argument, NULL, 'u'}, +#ifndef XENCTRL { "connect", required_argument, NULL, 'c'}, +#endif { "help", no_argument, NULL, '?' }, {0, 0, 0, 0} }; @@ -1009,9 +1011,11 @@ case 'u': user = optarg; break; +#ifndef XENCTRL case 'c': libvirt_uri = optarg; break; +#endif case '?': usage(argv[0]); return 2;
Alex Zeffertt wrote:
Hi all,
The attached patch against v0.4 fixes the build when --enable-xenctrl is used.
If this configure option is used vhostmd does not link against libvirt or virt-util.o, but a few bits of code were assuming that these were always linked in.
Ah, right, libvirt support is disabled if "--enable-xenctrl" is specified.
Please could you consider this patch for inclusion in the vhostmd project.
Regards,
Alex Zeffertt Fix build when "./configure --enable-xenctrl" is used.
This option disables the use of libvirt. Instead libxc gets used to find out stuff about VMs.
If this option is used then virt-util.c does not get built. This patch removes the linker dependencies on virt-util.o when --enable-xenctrl is used.
Signed-off-by: <alex.zeffertt@eu.citrix.com>
diff -urN a/configure.ac b/configure.ac --- a/configure.ac 2009-12-09 09:41:52.000000000 -0500 +++ b/configure.ac 2010-01-07 06:18:44.000000000 -0500 @@ -55,7 +55,8 @@ AC_ARG_ENABLE([xenctrl], [ --enable-xenctrl use xenctrl specific vm enumeration instead of libvirt], [case "${enableval}" in - yes) xenctrl=true + yes) xenctrl=true + CFLAGS="$CFLAGS -DXENCTRL"
There was a tab mixed with spaces here that I fixed. Patch committed. Thanks! Regards, Jim -- To unsubscribe, e-mail: vhostmd+unsubscribe@opensuse.org For additional commands, e-mail: vhostmd+help@opensuse.org
participants (2)
-
Alex Zeffertt
-
Jim Fehlig