From: "Daniel P. Berrange" <berrange(a)redhat.com>
---
configure.ac | 71 ++++++++++++++++++++-------------------------------------
m4/virt-curl.m4 | 27 ++++++++++++++++++++++
2 files changed, 52 insertions(+), 46 deletions(-)
create mode 100644 m4/virt-curl.m4
diff --git a/configure.ac b/configure.ac
index a1c80c1..85444cf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -102,7 +102,6 @@ POLKIT_REQUIRED="0.6"
PARTED_REQUIRED="1.8.0"
XMLRPC_REQUIRED=1.14.0
DEVMAPPER_REQUIRED=1.0.0
-LIBCURL_REQUIRED="7.18.0"
OPENWSMAN_REQUIRED="2.2.3"
LIBPCAP_REQUIRED="1.0.0"
LIBNL_REQUIRED="1.1"
@@ -152,6 +151,7 @@ LIBVIRT_CHECK_AUDIT
LIBVIRT_CHECK_AVAHI
LIBVIRT_CHECK_BLKID
LIBVIRT_CHECK_CAPNG
+LIBVIRT_CHECK_CURL
LIBVIRT_CHECK_DBUS
LIBVIRT_CHECK_FUSE
LIBVIRT_CHECK_HAL
@@ -703,21 +703,30 @@ if test "$with_xenapi" != "no" ; then
CFLAGS="$CFLAGS $LIBXENSERVER_CFLAGS"
LIBS="$LIBS $LIBXENSERVER_LIBS"
AC_CHECK_LIB([xenserver], [xen_vm_start], [
- with_xenapi=yes
LIBXENSERVER_LIBS="$LIBXENSERVER_LIBS -lxenserver"
],[
if test "$with_xenapi" = "yes"; then
fail=1
fi
- with_xenapi=no
+ with_xenapi=no
])
+ if test "$with_xenapi" != "no" ; then
+ if test "$with_curl" = "no"; then
+ if test "$with_xenapi" = "yes"; then
+ fail=1
+ fi
+ with_xenapi=no
+ else
+ with_xenapi=yes
+ fi
+ fi
fi
LIBS="$old_LIBS"
CFLAGS="$old_CFLAGS"
if test $fail = 1; then
- AC_MSG_ERROR([You must install the XenServer Library to compile XenAPI driver with
-lxenserver])
+ AC_MSG_ERROR([You must install libxenerver and libcurl to compile the XenAPI
driver])
fi
if test "$with_xenapi" = "yes"; then
@@ -1835,46 +1844,20 @@ fi
AM_CONDITIONAL([WITH_STORAGE], [test "$with_storage" = "yes"])
dnl
-dnl check for libcurl (ESX/XenAPI)
+dnl check for (ESX)
dnl
-LIBCURL_CFLAGS=""
-LIBCURL_LIBS=""
-have_curl=no
-
-if test "$with_esx" = "yes" || test "$with_esx" =
"check" || test "$with_xenapi" = "yes" || test
"$with_xenapi" = "check"; then
- PKG_CHECK_MODULES(LIBCURL, libcurl >= $LIBCURL_REQUIRED, [
- have_curl=yes
-
- if test "$with_esx" = "check"; then
- with_esx=yes
- fi
-
- if test "$with_xenapi" = "check"; then
- with_xenapi=yes
- fi
- ], [
- if test "$with_esx" = "check"; then
- with_esx=no
- AC_MSG_NOTICE([libcurl is required for the ESX driver, disabling it])
- elif test "$with_esx" = "yes"; then
- AC_MSG_ERROR([libcurl >= $LIBCURL_REQUIRED is required for the ESX
driver])
- fi
-
- if test "$with_xenapi" = "check"; then
- with_xenapi=no
- AC_MSG_NOTICE([libcurl is required for the XenAPI driver, disabling it])
- elif test "$with_xenapi" = "yes"; then
- AC_MSG_ERROR([libcurl >= $LIBCURL_REQUIRED is required for the XenAPI
driver])
- fi
- ])
-fi
-
-if test "$have_curl" = "yes" ; then
- AC_DEFINE_UNQUOTED([WITH_CURL], 1, [whether libcurl is available])
+if test "$with_curl" != "yes" ; then
+ if test "$with_esx" = "check"; then
+ with_esx=no
+ else
+ AC_MSG_ERROR([Curl is required for the ESX driver])
+ fi
+else
+ if test "$with_esx" = "check"; then
+ with_esx=yes
+ fi
fi
-AM_CONDITIONAL([WITH_CURL], [test "$have_curl" = "yes"])
-
if test "$with_esx" = "yes" ; then
AC_DEFINE_UNQUOTED([WITH_ESX], 1, [whether ESX driver is enabled])
@@ -2535,6 +2518,7 @@ LIBVIRT_RESULT_AUDIT
LIBVIRT_RESULT_AVAHI
LIBVIRT_RESULT_BLKID
LIBVIRT_RESULT_CAPNG
+LIBVIRT_RESULT_CURL
LIBVIRT_RESULT_DBUS
LIBVIRT_RESULT_FUSE
LIBVIRT_RESULT_HAL
@@ -2548,11 +2532,6 @@ LIBVIRT_RESULT_UDEV
LIBVIRT_RESULT_YAJL
AC_MSG_NOTICE([ libxml: $LIBXML_CFLAGS $LIBXML_LIBS])
AC_MSG_NOTICE([ dlopen: $DLOPEN_LIBS])
-if test "$have_curl" = "yes" ; then
-AC_MSG_NOTICE([ libcurl: $LIBCURL_CFLAGS $LIBCURL_LIBS])
-else
-AC_MSG_NOTICE([ libcurl: no])
-fi
if test "$with_hyperv" = "yes" ; then
AC_MSG_NOTICE([openwsman: $OPENWSMAN_CFLAGS $OPENWSMAN_LIBS])
else
diff --git a/m4/virt-curl.m4 b/m4/virt-curl.m4
new file mode 100644
index 0000000..8a440bb
--- /dev/null
+++ b/m4/virt-curl.m4
@@ -0,0 +1,27 @@
+dnl The libcurl.so library
+dnl
+dnl Copyright (C) 2012-2013 Red Hat, Inc.
+dnl
+dnl This library is free software; you can redistribute it and/or
+dnl modify it under the terms of the GNU Lesser General Public
+dnl License as published by the Free Software Foundation; either
+dnl version 2.1 of the License, or (at your option) any later version.
+dnl
+dnl This library is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl Lesser General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU Lesser General Public
+dnl License along with this library. If not, see
+dnl <
http://www.gnu.org/licenses/>.
+dnl
+
+AC_DEFUN([LIBVIRT_CHECK_CURL],[
+ LIBVIRT_CHECK_PKG([CURL], [libcurl], [7.18.0])
+])
+
+AC_DEFUN([LIBVIRT_RESULT_CURL],[
+ LIBVIRT_RESULT_LIB([CURL])
+])
+
--
1.7.11.7