2005-11-02 20:50:21 +08:00
|
|
|
dnl Process this file with autoconf to produce a configure script.
|
2006-02-10 01:45:11 +08:00
|
|
|
AC_INIT(src/libvirt.c)
|
2005-11-02 20:50:21 +08:00
|
|
|
AM_CONFIG_HEADER(config.h)
|
|
|
|
AC_CANONICAL_HOST
|
|
|
|
|
2006-02-15 21:21:17 +08:00
|
|
|
LIBVIRT_MAJOR_VERSION=0
|
2006-04-10 22:15:33 +08:00
|
|
|
LIBVIRT_MINOR_VERSION=1
|
2006-08-17 01:58:23 +08:00
|
|
|
LIBVIRT_MICRO_VERSION=4
|
2006-02-15 21:21:17 +08:00
|
|
|
LIBVIRT_MICRO_VERSION_SUFFIX=
|
|
|
|
LIBVIRT_VERSION=$LIBVIRT_MAJOR_VERSION.$LIBVIRT_MINOR_VERSION.$LIBVIRT_MICRO_VERSION$LIBVIRT_MICRO_VERSION_SUFFIX
|
|
|
|
LIBVIRT_VERSION_INFO=`expr $LIBVIRT_MAJOR_VERSION + $LIBVIRT_MINOR_VERSION`:$LIBVIRT_MICRO_VERSION:$LIBVIRT_MINOR_VERSION
|
2005-11-02 20:50:21 +08:00
|
|
|
|
2006-02-15 21:21:17 +08:00
|
|
|
LIBVIRT_VERSION_NUMBER=`expr $LIBVIRT_MAJOR_VERSION \* 1000000 + $LIBVIRT_MINOR_VERSION \* 1000 + $LIBVIRT_MICRO_VERSION`
|
2005-11-02 20:50:21 +08:00
|
|
|
|
|
|
|
if test -f CVS/Entries; then
|
2005-12-08 23:08:46 +08:00
|
|
|
extra=`grep ChangeLog CVS/Entries | grep -v LIBVIR | sed -e s\%/ChangeLog/1\.%% -e s\%/.*$%%`
|
2005-11-02 20:50:21 +08:00
|
|
|
echo extra=$extra
|
|
|
|
if test "$extra" != ""
|
|
|
|
then
|
2006-02-15 21:21:17 +08:00
|
|
|
LIBVIRT_VERSION_EXTRA="-CVS$extra"
|
2005-11-02 20:50:21 +08:00
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2006-02-15 21:21:17 +08:00
|
|
|
AC_SUBST(LIBVIRT_MAJOR_VERSION)
|
|
|
|
AC_SUBST(LIBVIRT_MINOR_VERSION)
|
|
|
|
AC_SUBST(LIBVIRT_MICRO_VERSION)
|
|
|
|
AC_SUBST(LIBVIRT_VERSION)
|
|
|
|
AC_SUBST(LIBVIRT_VERSION_INFO)
|
|
|
|
AC_SUBST(LIBVIRT_VERSION_NUMBER)
|
|
|
|
AC_SUBST(LIBVIRT_VERSION_EXTRA)
|
2005-11-02 20:50:21 +08:00
|
|
|
|
2006-02-15 21:21:17 +08:00
|
|
|
VERSION=${LIBVIRT_VERSION}
|
2005-11-02 20:50:21 +08:00
|
|
|
|
2006-02-10 01:45:11 +08:00
|
|
|
AM_INIT_AUTOMAKE(libvirt, $VERSION)
|
2005-11-02 20:50:21 +08:00
|
|
|
|
2005-11-02 21:19:10 +08:00
|
|
|
dnl Checks for programs.
|
|
|
|
AC_PROG_CC
|
|
|
|
AC_PROG_INSTALL
|
|
|
|
AC_PROG_CPP
|
|
|
|
AC_PATH_PROG(RM, rm, /bin/rm)
|
|
|
|
AC_PATH_PROG(MV, mv, /bin/mv)
|
|
|
|
AC_PATH_PROG(TAR, tar, /bin/tar)
|
2005-12-07 17:33:00 +08:00
|
|
|
AC_PATH_PROG(XMLLINT, xmllint, /usr/bin/xmllint)
|
|
|
|
AC_PATH_PROG(XSLTPROC, xsltproc, /usr/bin/xsltproc)
|
|
|
|
|
2005-11-02 21:19:10 +08:00
|
|
|
|
|
|
|
dnl Make sure we have an ANSI compiler
|
|
|
|
AM_C_PROTOTYPES
|
|
|
|
test "x$U" != "x" && AC_MSG_ERROR(Compiler not ANSI compliant)
|
|
|
|
|
|
|
|
AM_PROG_LIBTOOL
|
|
|
|
|
2005-12-07 21:45:20 +08:00
|
|
|
dnl Specific dir for HTML output ?
|
|
|
|
AC_ARG_WITH(html-dir, AC_HELP_STRING([--with-html-dir=path],
|
|
|
|
[path to base html directory, default $datadir/doc/html]),
|
|
|
|
[HTML_DIR=$withval], [HTML_DIR='$(datadir)/doc'])
|
|
|
|
|
|
|
|
AC_ARG_WITH(html-subdir, AC_HELP_STRING([--with-html-subdir=path],
|
|
|
|
[directory used under html-dir, default $PACKAGE-$VERSION/html]),
|
|
|
|
[test "x$withval" != "x" && HTML_DIR="$HTML_DIR/$withval"],
|
|
|
|
[HTML_DIR="$HTML_DIR/\$(PACKAGE)-\$(VERSION)/html"])
|
|
|
|
AC_SUBST(HTML_DIR)
|
|
|
|
|
2005-12-02 20:11:06 +08:00
|
|
|
dnl
|
|
|
|
dnl specific tests to setup DV devel environments with debug etc ...
|
|
|
|
dnl
|
2006-02-10 18:28:59 +08:00
|
|
|
if [[ "${LOGNAME}" = "veillard" -a "`pwd`" = "/u/veillard/libvirt" ]] ; then
|
2005-12-02 20:11:06 +08:00
|
|
|
STATIC_BINARIES="-static"
|
|
|
|
else
|
|
|
|
STATIC_BINARIES=
|
|
|
|
fi
|
|
|
|
AC_SUBST(STATIC_BINARIES)
|
|
|
|
|
2005-12-08 21:26:52 +08:00
|
|
|
dnl
|
|
|
|
dnl make CFLAGS very pedantic at least during the devel phase for everybody
|
|
|
|
dnl
|
|
|
|
if test "${GCC}" = "yes" ; then
|
|
|
|
CFLAGS="-g -O -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -Wall"
|
|
|
|
fi
|
|
|
|
|
2006-03-10 18:21:41 +08:00
|
|
|
dnl
|
|
|
|
dnl Specify the xen-distribution directory to be able to compile on a
|
|
|
|
dnl non-xenified host
|
|
|
|
dnl
|
|
|
|
AC_ARG_WITH(xen-distdir, AC_HELP_STRING([--with-xen-distdir=path],
|
|
|
|
[distribution directory of Xen, default /usr]))
|
|
|
|
if test "x$with_xen_distdir" != "x"
|
|
|
|
then
|
|
|
|
CPPFLAGS="$CPPFLAGS -I$withval/install/usr/include"
|
|
|
|
LDFLAGS="$LDFLAGS -L$withval/install/usr/lib"
|
|
|
|
fi
|
|
|
|
|
2005-12-09 18:16:33 +08:00
|
|
|
dnl
|
|
|
|
dnl To be able to make dist on a non-xenified host
|
|
|
|
dnl
|
|
|
|
AC_ARG_WITH(depends,
|
2006-05-09 23:35:46 +08:00
|
|
|
[ --with-depends check for dependancies (on)])
|
2005-12-09 18:16:33 +08:00
|
|
|
|
|
|
|
if test "$with_depends" != "no"
|
|
|
|
then
|
|
|
|
|
2005-12-08 23:08:46 +08:00
|
|
|
dnl search for the Xen store library
|
2005-11-23 15:47:13 +08:00
|
|
|
AC_SEARCH_LIBS(xs_read, [xenstore], [], [AC_MSG_ERROR([Xen store library not found])])
|
2005-11-02 21:19:10 +08:00
|
|
|
|
2006-02-17 06:50:52 +08:00
|
|
|
dnl ==========================================================================
|
|
|
|
dnl find libxml2 library, borrowed from xmlsec
|
|
|
|
dnl ==========================================================================
|
|
|
|
LIBXML_MIN_VERSION="2.5.0"
|
|
|
|
LIBXML_CONFIG="xml2-config"
|
|
|
|
LIBXML_CFLAGS=""
|
|
|
|
LIBXML_LIBS=""
|
|
|
|
LIBXML_FOUND="no"
|
|
|
|
AC_ARG_WITH(libxml, [ --with-libxml=[PFX] libxml2 location])
|
|
|
|
if test "z$with_libxml" = "zno" ; then
|
|
|
|
AC_MSG_CHECKING(for libxml2 libraries >= $LIBXML_MIN_VERSION)
|
|
|
|
AC_MSG_ERROR(libxml2 >= $LIBXML_MIN_VERSION is required for $XMLSEC_PACKAGE)
|
|
|
|
elif test "z$with_libxml" = "z" -a "z$PKG_CONFIG_ENABLED" = "zyes" ; then
|
|
|
|
PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= $LIBXML_MIN_VERSION,
|
|
|
|
[LIBXML_FOUND=yes],
|
|
|
|
[LIBXML_FOUND=no])
|
|
|
|
fi
|
|
|
|
AC_MSG_CHECKING(libxml2 $with_libxml $LIBXML_FOUND )
|
|
|
|
if test "z$LIBXML_FOUND" = "zno" ; then
|
|
|
|
AC_MSG_CHECKING(for libxml2 libraries >= $LIBXML_MIN_VERSION)
|
|
|
|
if test "z$with_libxml" != "z" ; then
|
|
|
|
LIBXML_CONFIG=$with_libxml/bin/$LIBXML_CONFIG
|
|
|
|
fi
|
|
|
|
AC_MSG_CHECKING(libxml2 $with_libxml $LIBXML_CONFIG )
|
|
|
|
if ! $LIBXML_CONFIG --version > /dev/null 2>&1 ; then
|
|
|
|
AC_MSG_ERROR(Could not find libxml2 anywhere (see config.log for details).)
|
|
|
|
fi
|
|
|
|
vers=`$LIBXML_CONFIG --version | awk -F. '{ printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
|
|
|
|
minvers=`echo $LIBXML_MIN_VERSION | awk -F. '{ printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
|
|
|
|
if test "$vers" -ge "$minvers" ; then
|
|
|
|
LIBXML_LIBS="`$LIBXML_CONFIG --libs`"
|
|
|
|
LIBXML_CFLAGS="`$LIBXML_CONFIG --cflags`"
|
|
|
|
LIBXML_FOUND="yes"
|
|
|
|
AC_MSG_RESULT(yes ('$LIBXML_VERSION'))
|
|
|
|
else
|
|
|
|
AC_MSG_ERROR(You need at least libxml2 $LIBXML_MIN_VERSION for this version of $XMLSEC_PACKAGE)
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
AC_SUBST(LIBXML_CFLAGS)
|
|
|
|
AC_SUBST(LIBXML_LIBS)
|
|
|
|
AC_SUBST(LIBXML_CONFIG)
|
|
|
|
AC_SUBST(LIBXML_MIN_VERSION)
|
|
|
|
|
2005-12-08 18:23:34 +08:00
|
|
|
dnl virsh libraries
|
|
|
|
AC_CHECK_LIB(curses, initscr,
|
2006-04-26 00:54:26 +08:00
|
|
|
[VIRSH_LIBS="$VIRSH_LIBS -lcurses"],
|
|
|
|
[AC_CHECK_LIB(ncurses, initscr,
|
|
|
|
[VIRSH_LIBS="$VIRSH_LIBS -lncurses"],
|
|
|
|
[AC_MSG_ERROR([curses/ncurses library not found])],
|
|
|
|
[$VIRSH_LIBS])],
|
2005-12-08 18:23:34 +08:00
|
|
|
[$VIRSH_LIBS])
|
|
|
|
AC_CHECK_LIB(readline, main,
|
|
|
|
[VIRSH_LIBS="$VIRSH_LIBS -lreadline"],
|
|
|
|
[AC_MSG_ERROR([readline library not found])],
|
|
|
|
[$VIRSH_LIBS])
|
|
|
|
AC_SUBST(VIRSH_LIBS)
|
|
|
|
|
2006-02-10 16:40:20 +08:00
|
|
|
# end of if with_depends
|
|
|
|
fi
|
|
|
|
|
2005-12-20 00:34:11 +08:00
|
|
|
dnl
|
|
|
|
dnl check for python
|
|
|
|
dnl
|
|
|
|
|
|
|
|
PYTHON_VERSION=
|
|
|
|
PYTHON_INCLUDES=
|
|
|
|
PYTHON_SITE_PACKAGES=
|
|
|
|
PYTHON_TESTS=
|
|
|
|
pythondir=
|
|
|
|
if test "$with_python" != "no" ; then
|
|
|
|
if test -x "$with_python/bin/python"
|
|
|
|
then
|
|
|
|
echo Found python in $with_python/bin/python
|
|
|
|
PYTHON="$with_python/bin/python"
|
|
|
|
else
|
|
|
|
if test -x "$with_python"
|
|
|
|
then
|
|
|
|
echo Found python in $with_python
|
|
|
|
PYTHON="$with_python"
|
|
|
|
else
|
|
|
|
if test -x "$PYTHON"
|
|
|
|
then
|
|
|
|
echo Found python in environment PYTHON=$PYTHON
|
2006-08-11 19:57:52 +08:00
|
|
|
with_python=`$PYTHON -c "import sys; print sys.exec_prefix"`
|
2005-12-20 00:34:11 +08:00
|
|
|
else
|
|
|
|
AC_PATH_PROG(PYTHON, python python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5)
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
if test "$PYTHON" != ""
|
|
|
|
then
|
|
|
|
PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"`
|
|
|
|
echo Found Python version $PYTHON_VERSION
|
|
|
|
fi
|
|
|
|
if test "$PYTHON_VERSION" != ""
|
|
|
|
then
|
|
|
|
if test -r $with_python/include/python$PYTHON_VERSION/Python.h -a \
|
|
|
|
-d $with_python/lib/python$PYTHON_VERSION/site-packages
|
|
|
|
then
|
|
|
|
PYTHON_INCLUDES=$with_python/include/python$PYTHON_VERSION
|
2006-08-11 19:57:52 +08:00
|
|
|
PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages
|
2005-12-20 00:34:11 +08:00
|
|
|
else
|
|
|
|
if test -r $prefix/include/python$PYTHON_VERSION/Python.h
|
|
|
|
then
|
2006-08-11 19:57:52 +08:00
|
|
|
PYTHON_INCLUDES=$prefix/include/python$PYTHON_VERSION
|
|
|
|
PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages
|
2005-12-20 00:34:11 +08:00
|
|
|
else
|
|
|
|
if test -r /usr/include/python$PYTHON_VERSION/Python.h
|
|
|
|
then
|
|
|
|
PYTHON_INCLUDES=/usr/include/python$PYTHON_VERSION
|
2006-08-11 19:57:52 +08:00
|
|
|
PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages
|
2005-12-20 00:34:11 +08:00
|
|
|
else
|
|
|
|
echo could not find python$PYTHON_VERSION/Python.h
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
if test ! -d "$PYTHON_SITE_PACKAGES"
|
|
|
|
then
|
|
|
|
PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib()"`
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
if test "$with_python" != ""
|
|
|
|
then
|
|
|
|
pythondir='$(PYTHON_SITE_PACKAGES)'
|
|
|
|
else
|
2006-08-11 19:57:52 +08:00
|
|
|
pythondir='$(libdir)/python$(PYTHON_VERSION)/site-packages'
|
2005-12-20 00:34:11 +08:00
|
|
|
fi
|
|
|
|
else
|
|
|
|
PYTHON=
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(WITH_PYTHON, test "$PYTHON_INCLUDES" != "")
|
|
|
|
if test "$PYTHON_INCLUDES" != ""
|
|
|
|
then
|
|
|
|
PYTHON_SUBDIR=python
|
|
|
|
else
|
|
|
|
PYTHON_SUBDIR=
|
|
|
|
fi
|
|
|
|
AC_SUBST(pythondir)
|
2006-08-11 19:57:52 +08:00
|
|
|
AC_SUBST(PYTHON_SUBDIR)
|
2005-12-20 00:34:11 +08:00
|
|
|
AC_SUBST(PYTHON_VERSION)
|
|
|
|
AC_SUBST(PYTHON_INCLUDES)
|
|
|
|
AC_SUBST(PYTHON_SITE_PACKAGES)
|
|
|
|
|
2005-12-09 18:37:37 +08:00
|
|
|
# very annoying
|
|
|
|
rm -f COPYING
|
2006-02-10 16:40:20 +08:00
|
|
|
cp COPYING.LIB COPYING
|
2005-12-09 18:37:37 +08:00
|
|
|
|
2005-12-08 23:08:46 +08:00
|
|
|
AC_OUTPUT(Makefile src/Makefile include/Makefile docs/Makefile \
|
2006-02-22 18:54:54 +08:00
|
|
|
docs/examples/Makefile docs/devhelp/Makefile \
|
2006-04-26 00:08:48 +08:00
|
|
|
docs/examples/python/Makefile \
|
2006-06-26 23:02:18 +08:00
|
|
|
libvirt.pc libvirt.spec \
|
|
|
|
include/libvirt/Makefile include/libvirt/libvirt.h \
|
2006-05-09 23:35:46 +08:00
|
|
|
python/Makefile python/tests/Makefile \
|
2006-06-29 02:19:13 +08:00
|
|
|
tests/Makefile proxy/Makefile)
|