While there are input modes that do not use libvirt, making libvirt
mandatory for virt-v2v slightly simplifies the code now, and allow for
further improvements/integration with libvirt later on.
---
Makefile.am | 2 ++
v2v/Makefile.am | 20 ++++++--------------
v2v/libvirt_utils-c.c | 22 ----------------------
v2v/v2v.ml | 12 +++---------
4 files changed, 11 insertions(+), 45 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 0067d7b7b..cf9ca512e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -169,10 +169,12 @@ SUBDIRS += get-kernel
SUBDIRS += resize
SUBDIRS += sparsify
SUBDIRS += sysprep
+if HAVE_LIBVIRT
SUBDIRS += v2v
if HAVE_OCAML_PKG_LIBVIRT
SUBDIRS += v2v/test-harness
endif
+endif
if HAVE_FUSE
SUBDIRS += dib
endif
diff --git a/v2v/Makefile.am b/v2v/Makefile.am
index 2312812fb..6dcc6908b 100644
--- a/v2v/Makefile.am
+++ b/v2v/Makefile.am
@@ -417,6 +417,7 @@ stamp-virt-v2v-support.pod: virt-v2v-support.pod
TESTS_ENVIRONMENT = $(top_builddir)/run --test
TESTS = \
+ test-v2v-copy-to-local.sh \
test-v2v-docs.sh \
test-v2v-python-syntax.sh \
test-v2v-i-ova-bad-sha1.sh \
@@ -436,29 +437,19 @@ TESTS = \
test-v2v-o-vdsm-oo-query.sh \
test-v2v-bad-networks-and-bridges.sh
-if HAVE_LIBVIRT
-TESTS += \
- test-v2v-copy-to-local.sh
-endif
-
if HAVE_OCAML_PKG_OUNIT
TESTS += v2v_unit_tests
endif
if ENABLE_APPLIANCE
-TESTS += \
- test-v2v-i-ova.sh \
- test-v2v-i-disk.sh \
- test-v2v-machine-readable.sh \
- test-v2v-virtio-win-iso.sh \
- test-v2v-windows-conversion.sh
-
-if HAVE_LIBVIRT
TESTS += \
test-v2v-cdrom.sh \
test-v2v-floppy.sh \
+ test-v2v-i-disk.sh \
+ test-v2v-i-ova.sh \
test-v2v-in-place.sh \
test-v2v-mac.sh \
+ test-v2v-machine-readable.sh \
test-v2v-networks-and-bridges.sh \
test-v2v-no-copy.sh \
test-v2v-o-glance.sh \
@@ -475,9 +466,10 @@ TESTS += \
test-v2v-print-estimate.sh \
test-v2v-print-source.sh \
test-v2v-sound.sh \
+ test-v2v-virtio-win-iso.sh \
+ test-v2v-windows-conversion.sh
$(SLOW_TESTS) \
$(ROOT_TESTS)
-endif
endif ENABLE_APPLIANCE
# The VMDK file is used for some -i ova tests.
diff --git a/v2v/libvirt_utils-c.c b/v2v/libvirt_utils-c.c
index 0e365eac7..5ca0d5363 100644
--- a/v2v/libvirt_utils-c.c
+++ b/v2v/libvirt_utils-c.c
@@ -35,18 +35,14 @@
#include <caml/memory.h>
#include <caml/mlvalues.h>
-#ifdef HAVE_LIBVIRT
#include <libvirt/libvirt.h>
#include <libvirt/virterror.h>
-#endif
#include "guestfs.h"
#include "guestfs-utils.h"
#pragma GCC diagnostic ignored "-Wmissing-prototypes"
-#ifdef HAVE_LIBVIRT
-
#define ERROR_MESSAGE_LEN 512
static void
@@ -519,21 +515,3 @@ v2v_libvirt_get_version (value unitv)
CAMLreturn (rv);
}
-
-#else /* !HAVE_LIBVIRT */
-
-#define NO_LIBVIRT(proto) \
- proto __attribute__((noreturn)); \
- proto \
- { \
- caml_invalid_argument ("virt-v2v was compiled without libvirt support"); \
- }
-
-NO_LIBVIRT (value v2v_dumpxml (value connv, value domv))
-NO_LIBVIRT (value v2v_pool_dumpxml (value connv, value poolv))
-NO_LIBVIRT (value v2v_vol_dumpxml (value connv, value poolnamev, value volnamev))
-NO_LIBVIRT (value v2v_capabilities (value connv, value unitv))
-NO_LIBVIRT (value v2v_domain_exists (value connv, value domnamev))
-NO_LIBVIRT (value v2v_libvirt_get_version (value unitv))
-
-#endif /* !HAVE_LIBVIRT */
diff --git a/v2v/v2v.ml b/v2v/v2v.ml
index 277d8f2c7..c056aa787 100644
--- a/v2v/v2v.ml
+++ b/v2v/v2v.ml
@@ -59,16 +59,10 @@ let rec main () =
prog Guestfs_config.package_name Guestfs_config.package_version_full
Guestfs_config.host_cpu;
- (* Print the libvirt version if debugging. Note that if
- * we're configured --without-libvirt, then this will throw
- * an exception, but some conversions should still be possible,
- * hence the try block.
- *)
+ (* Print the libvirt version if debugging. *)
if verbose () then (
- try
- let major, minor, release = Libvirt_utils.libvirt_get_version () in
- debug "libvirt version: %d.%d.%d" major minor release
- with _ -> ()
+ let major, minor, release = Libvirt_utils.libvirt_get_version () in
+ debug "libvirt version: %d.%d.%d" major minor release
);
(* Perform pre-flight checks on the input and output objects. *)
--
2.20.1