mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
configure: move XDR check to its own file
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
parent
e18108acb4
commit
438c8c1626
40
configure.ac
40
configure.ac
@ -471,39 +471,7 @@ dnl
|
|||||||
dnl check for XDR
|
dnl check for XDR
|
||||||
dnl
|
dnl
|
||||||
|
|
||||||
if test x"$with_remote" = x"yes" || test x"$with_libvirtd" = x"yes"; then
|
LIBVIRT_CHECK_XDR
|
||||||
dnl Where are the XDR functions?
|
|
||||||
dnl If portablexdr is installed, prefer that.
|
|
||||||
dnl Otherwise try -lrpc (Cygwin) -lxdr (some MinGW), -lnsl (Solaris)
|
|
||||||
dnl -ltirpc (glibc 2.13.90 or newer) or none (most Unix)
|
|
||||||
AC_CHECK_LIB([portablexdr],[xdrmem_create],[],[
|
|
||||||
AC_SEARCH_LIBS([xdrmem_create],[rpc xdr nsl tirpc],[],
|
|
||||||
[AC_MSG_ERROR([Cannot find a XDR library])])
|
|
||||||
])
|
|
||||||
|
|
||||||
dnl check for cygwin's variation in xdr function names
|
|
||||||
AC_CHECK_FUNCS([xdr_u_int64_t],[],[],[#include <rpc/xdr.h>])
|
|
||||||
|
|
||||||
dnl Cygwin/recent glibc requires -I/usr/include/tirpc for <rpc/rpc.h>
|
|
||||||
old_CFLAGS=$CFLAGS
|
|
||||||
AC_CACHE_CHECK([where to find <rpc/rpc.h>], [lv_cv_xdr_cflags], [
|
|
||||||
for add_CFLAGS in '' '-I/usr/include/tirpc' 'missing'; do
|
|
||||||
if test x"$add_CFLAGS" = xmissing; then
|
|
||||||
lv_cv_xdr_cflags=missing; break
|
|
||||||
fi
|
|
||||||
CFLAGS="$old_CFLAGS $add_CFLAGS"
|
|
||||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <rpc/rpc.h>
|
|
||||||
]])], [lv_cv_xdr_cflags=${add_CFLAGS:-none}; break])
|
|
||||||
done
|
|
||||||
])
|
|
||||||
CFLAGS=$old_CFLAGS
|
|
||||||
case $lv_cv_xdr_cflags in
|
|
||||||
none) XDR_CFLAGS= ;;
|
|
||||||
missing) AC_MSG_ERROR([Unable to find <rpc/rpc.h>]) ;;
|
|
||||||
*) XDR_CFLAGS=$lv_cv_xdr_cflags ;;
|
|
||||||
esac
|
|
||||||
AC_SUBST([XDR_CFLAGS])
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
@ -2207,6 +2175,7 @@ LIBVIRT_RESULT_SASL
|
|||||||
LIBVIRT_RESULT_SELINUX
|
LIBVIRT_RESULT_SELINUX
|
||||||
LIBVIRT_RESULT_SSH2
|
LIBVIRT_RESULT_SSH2
|
||||||
LIBVIRT_RESULT_UDEV
|
LIBVIRT_RESULT_UDEV
|
||||||
|
LIBVIRT_RESULT_XDR
|
||||||
LIBVIRT_RESULT_YAJL
|
LIBVIRT_RESULT_YAJL
|
||||||
if test "$with_xen" = "yes" ; then
|
if test "$with_xen" = "yes" ; then
|
||||||
AC_MSG_NOTICE([ xen: $XEN_CFLAGS $XEN_LIBS])
|
AC_MSG_NOTICE([ xen: $XEN_CFLAGS $XEN_LIBS])
|
||||||
@ -2238,11 +2207,6 @@ AC_MSG_NOTICE([ mscom: $MSCOM_LIBS])
|
|||||||
else
|
else
|
||||||
AC_MSG_NOTICE([ mscom: no])
|
AC_MSG_NOTICE([ mscom: no])
|
||||||
fi
|
fi
|
||||||
if test "$with_remote" = "yes" || test "$with_libvirtd" = "yes" ; then
|
|
||||||
AC_MSG_NOTICE([ xdr: $XDR_CFLAGS])
|
|
||||||
else
|
|
||||||
AC_MSG_NOTICE([ xdr: no])
|
|
||||||
fi
|
|
||||||
if test "$with_storage_rbd" = "yes" ; then
|
if test "$with_storage_rbd" = "yes" ; then
|
||||||
AC_MSG_NOTICE([ rbd: $LIBRBD_LIBS])
|
AC_MSG_NOTICE([ rbd: $LIBRBD_LIBS])
|
||||||
else
|
else
|
||||||
|
60
m4/virt-xdr.m4
Normal file
60
m4/virt-xdr.m4
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
dnl The XDR implementation check
|
||||||
|
dnl
|
||||||
|
dnl Copyright (C) 2016 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_XDR], [
|
||||||
|
with_xdr="no"
|
||||||
|
if test x"$with_remote" = x"yes" || test x"$with_libvirtd" = x"yes"; then
|
||||||
|
dnl Where are the XDR functions?
|
||||||
|
dnl If portablexdr is installed, prefer that.
|
||||||
|
dnl Otherwise try -lrpc (Cygwin) -lxdr (some MinGW), -lnsl (Solaris)
|
||||||
|
dnl -ltirpc (glibc 2.13.90 or newer) or none (most Unix)
|
||||||
|
AC_CHECK_LIB([portablexdr],[xdrmem_create],[],[
|
||||||
|
AC_SEARCH_LIBS([xdrmem_create],[rpc xdr nsl tirpc],[],
|
||||||
|
[AC_MSG_ERROR([Cannot find a XDR library])])
|
||||||
|
])
|
||||||
|
with_xdr="yes"
|
||||||
|
|
||||||
|
dnl check for cygwin's variation in xdr function names
|
||||||
|
AC_CHECK_FUNCS([xdr_u_int64_t],[],[],[#include <rpc/xdr.h>])
|
||||||
|
|
||||||
|
dnl Cygwin/recent glibc requires -I/usr/include/tirpc for <rpc/rpc.h>
|
||||||
|
old_CFLAGS=$CFLAGS
|
||||||
|
AC_CACHE_CHECK([where to find <rpc/rpc.h>], [lv_cv_xdr_cflags], [
|
||||||
|
for add_CFLAGS in '' '-I/usr/include/tirpc' 'missing'; do
|
||||||
|
if test x"$add_CFLAGS" = xmissing; then
|
||||||
|
lv_cv_xdr_cflags=missing; break
|
||||||
|
fi
|
||||||
|
CFLAGS="$old_CFLAGS $add_CFLAGS"
|
||||||
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <rpc/rpc.h>
|
||||||
|
]])], [lv_cv_xdr_cflags=${add_CFLAGS:-none}; break])
|
||||||
|
done
|
||||||
|
])
|
||||||
|
CFLAGS=$old_CFLAGS
|
||||||
|
case $lv_cv_xdr_cflags in
|
||||||
|
none) XDR_CFLAGS= ;;
|
||||||
|
missing) AC_MSG_ERROR([Unable to find <rpc/rpc.h>]) ;;
|
||||||
|
*) XDR_CFLAGS=$lv_cv_xdr_cflags ;;
|
||||||
|
esac
|
||||||
|
AC_SUBST([XDR_CFLAGS])
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([LIBVIRT_RESULT_XDR], [
|
||||||
|
LIBVIRT_RESULT_LIB([XDR])
|
||||||
|
])
|
Loading…
Reference in New Issue
Block a user