From 7317131bc1db8dc1f1628c764b672840f24db435 Mon Sep 17 00:00:00 2001 From: Stefan Weil Date: Thu, 1 Oct 2009 20:10:37 +0200 Subject: [PATCH] Check availability of uuid header / library If available, the Universally Unique Identifier library is used by the vdi block driver. Other parts of QEMU (vl.c) could also use it. Signed-off-by: Stefan Weil Signed-off-by: Aurelien Jarno --- block/vdi.c | 4 ++-- configure | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/block/vdi.c b/block/vdi.c index f5e38db..45aa81c 100644 --- a/block/vdi.c +++ b/block/vdi.c @@ -53,7 +53,7 @@ #include "block_int.h" #include "module.h" -#if defined(HAVE_UUID_H) +#if defined(CONFIG_UUID) #include #else /* TODO: move uuid emulation to some central place in QEMU. */ @@ -116,7 +116,7 @@ void uuid_unparse(const uuid_t uu, char *out); /* Unallocated blocks use this index (no need to convert endianess). */ #define VDI_UNALLOCATED UINT32_MAX -#if !defined(HAVE_UUID_H) +#if !defined(CONFIG_UUID) void uuid_generate(uuid_t out) { memset(out, 0, sizeof(out)); diff --git a/configure b/configure index 480c81d..cc3cbd6 100755 --- a/configure +++ b/configure @@ -187,6 +187,7 @@ kvm="" nptl="" sdl="" sparse="no" +uuid="" vde="" vnc_tls="" vnc_sasl="" @@ -452,6 +453,10 @@ for opt do ;; --disable-slirp) slirp="no" ;; + --disable-uuid) uuid="no" + ;; + --enable-uuid) uuid="yes" + ;; --disable-vde) vde="no" ;; --enable-vde) vde="yes" @@ -696,6 +701,8 @@ echo " --fmod-inc path to FMOD includes" echo " --oss-lib path to OSS library" echo " --enable-uname-release=R Return R for uname -r in usermode emulation" echo " --sparc_cpu=V Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9" +echo " --disable-uuid disable uuid support" +echo " --enable-uuid enable uuid support" echo " --disable-vde disable support for vde network" echo " --enable-vde enable support for vde network" echo " --disable-linux-aio disable Linux AIO support" @@ -1048,6 +1055,31 @@ if compile_prog "" "" ; then fi ########################################## +# uuid_generate() probe, used for vdi block driver +if test "$uuid" != "no" ; then + uuid_libs="-luuid" + cat > $TMPC << EOF +#include +int main(void) +{ + uuid_t my_uuid; + uuid_generate(my_uuid); + return 0; +} +EOF + if compile_prog "" "$uuid_libs" ; then + uuid="yes" + libs_softmmu="$uuid_libs $libs_softmmu" + libs_tools="$uuid_libs $libs_tools" + else + if test "$uuid" = "yes" ; then + feature_not_found "uuid" + fi + uuid=no + fi +fi + +########################################## # vde libraries probe if test "$vde" != "no" ; then vde_libs="-lvdeplug" @@ -1752,6 +1784,7 @@ echo "KVM support $kvm" echo "fdt support $fdt" echo "preadv support $preadv" echo "fdatasync $fdatasync" +echo "uuid support $uuid" if test $sdl_too_old = "yes"; then echo "-> Your SDL version is too old - please upgrade to have SDL support" @@ -1862,6 +1895,9 @@ fi if test "$fnmatch" = "yes" ; then echo "CONFIG_FNMATCH=y" >> $config_host_mak fi +if test "$uuid" = "yes" ; then + echo "CONFIG_UUID=y" >> $config_host_mak +fi qemu_version=`head $source_path/VERSION` echo "VERSION=$qemu_version" >>$config_host_mak echo "PKGVERSION=$pkgversion" >>$config_host_mak -- 2.7.4