[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL v2 3/6] configure: add dependency
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PULL v2 3/6] configure: add dependency |
Date: |
Mon, 22 Jan 2018 16:00:45 +0000 |
From: Klim Kireev <address@hidden>
This dependency is required for adequate Parallels images support.
Typically the disk consists of several images which are glued by
XML disk descriptor. Also XML hides inside several important parameters
which are not available in the image header.
The patch also adds clause to checkpatch.pl to understand libxml2 types.
Signed-off-by: Denis V. Lunev <address@hidden>
Signed-off-by: Klim Kireev <address@hidden>
Signed-off-by: Edgar Kaziakhmedov <address@hidden>
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
CC: Stefan Hajnoczi <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
configure | 27 +++++++++++++++++++++++++++
block/Makefile.objs | 2 ++
scripts/checkpatch.pl | 1 +
3 files changed, 30 insertions(+)
diff --git a/configure b/configure
index 6d8c996c62..044c6fafe2 100755
--- a/configure
+++ b/configure
@@ -435,6 +435,7 @@ tcmalloc="no"
jemalloc="no"
replication="yes"
vxhs=""
+libxml2=""
supported_cpu="no"
supported_os="no"
@@ -1298,6 +1299,10 @@ for opt do
;;
--enable-numa) numa="yes"
;;
+ --disable-libxml2) libxml2="no"
+ ;;
+ --enable-libxml2) libxml2="yes"
+ ;;
--disable-tcmalloc) tcmalloc="no"
;;
--enable-tcmalloc) tcmalloc="yes"
@@ -1573,6 +1578,7 @@ disabled with --disable-FEATURE, default is enabled if
available:
tpm TPM support
libssh2 ssh block device support
numa libnuma support
+ libxml2 for Parallels image format
tcmalloc tcmalloc support
jemalloc jemalloc support
replication replication support
@@ -3748,6 +3754,20 @@ EOF
fi
fi
+##########################################
+# libxml2 probe
+if test "$libxml2" != "no" ; then
+ if $pkg_config --exists libxml-2.0; then
+ libxml2="yes"
+ libxml2_cflags=$($pkg_config --cflags libxml-2.0)
+ libxml2_libs=$($pkg_config --libs libxml-2.0)
+ else
+ if test "$libxml2" = "yes"; then
+ feature_not_found "libxml2" "Install libxml2 devel"
+ fi
+ libxml2="no"
+ fi
+fi
##########################################
# glusterfs probe
@@ -5630,6 +5650,7 @@ echo "lzo support $lzo"
echo "snappy support $snappy"
echo "bzip2 support $bzip2"
echo "NUMA host support $numa"
+echo "libxml2 $libxml2"
echo "tcmalloc support $tcmalloc"
echo "jemalloc support $jemalloc"
echo "avx2 optimization $avx2_opt"
@@ -6299,6 +6320,12 @@ if test "$have_rtnetlink" = "yes" ; then
echo "CONFIG_RTNETLINK=y" >> $config_host_mak
fi
+if test "$libxml2" = "yes" ; then
+ echo "CONFIG_LIBXML2=y" >> $config_host_mak
+ echo "LIBXML2_CFLAGS=$libxml2_cflags" >> $config_host_mak
+ echo "LIBXML2_LIBS=$libxml2_libs" >> $config_host_mak
+fi
+
if test "$replication" = "yes" ; then
echo "CONFIG_REPLICATION=y" >> $config_host_mak
fi
diff --git a/block/Makefile.objs b/block/Makefile.objs
index 6eaf78a046..a73387f1bf 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -47,3 +47,5 @@ block-obj-$(if $(CONFIG_BZIP2),m,n) += dmg-bz2.o
dmg-bz2.o-libs := $(BZIP2_LIBS)
qcow.o-libs := -lz
linux-aio.o-libs := -laio
+parallels.o-cflags := $(LIBXML2_CFLAGS)
+parallels.o-libs := $(LIBXML2_LIBS)
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index accba24a31..1b4b812e28 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -265,6 +265,7 @@ our @typeList = (
qr{${Ident}_handler_fn},
qr{target_(?:u)?long},
qr{hwaddr},
+ qr{xml${Ident}},
);
# This can be modified by sub possible. Since it can be empty, be careful
--
2.14.3
- [Qemu-devel] [PULL v2 0/6] Block patches, Stefan Hajnoczi, 2018/01/22
- [Qemu-devel] [PULL v2 1/6] block: add block_set_io_throttle virtio-blk-pci QMP example, Stefan Hajnoczi, 2018/01/22
- [Qemu-devel] [PULL v2 2/6] docs/interop/prl-xml: description of Parallels Disk format, Stefan Hajnoczi, 2018/01/22
- [Qemu-devel] [PULL v2 3/6] configure: add dependency,
Stefan Hajnoczi <=
- [Qemu-devel] [PULL v2 4/6] block/parallels: move some structures into header, Stefan Hajnoczi, 2018/01/22
- [Qemu-devel] [PULL v2 5/6] block/parallels: replace some magic numbers, Stefan Hajnoczi, 2018/01/22
- [Qemu-devel] [PULL v2 6/6] block/parallels: add backing support to readv/writev, Stefan Hajnoczi, 2018/01/22
- Re: [Qemu-devel] [PULL v2 0/6] Block patches, Peter Maydell, 2018/01/24