# libguestfs
-# Copyright (C) 2009-2010 Red Hat Inc.
+# Copyright (C) 2009-2011 Red Hat Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# major/minor/release must be numbers
m4_define([libguestfs_major], [1])
-m4_define([libguestfs_minor], [7])
-m4_define([libguestfs_release], [20])
+m4_define([libguestfs_minor], [8])
+m4_define([libguestfs_release], [9])
# extra can be any string
m4_define([libguestfs_extra], [])
***])
])
-dnl Die if the user tries to configure as root, see:
-dnl https://www.redhat.com/archives/libguestfs/2010-April/msg00098.html
-AC_MSG_CHECKING([if you are trying to configure as root])
-AS_IF([test "`id -u`" = 0 ],[
- AC_MSG_RESULT([yes])
- AC_MSG_FAILURE([Don't run './configure' or 'make' as root.])
- ],[
- AC_MSG_RESULT([no])
- ])
-
dnl Early gnulib initialization.
gl_EARLY
gl_INIT
AC_CHECK_HEADERS([errno.h sys/types.h sys/un.h sys/wait.h sys/socket.h endian.h byteswap.h])
dnl Functions.
-AC_CHECK_FUNCS([posix_fallocate])
+AC_CHECK_FUNCS([futimens posix_fallocate])
dnl Build the daemon?
AC_MSG_CHECKING([if we should build the daemon])
test "x$FEBOOTSTRAP" = "xno" &&
AC_MSG_ERROR([febootstrap must be installed])
dnl febootstrap 2.x did not support the --version parameter
- $FEBOOTSTRAP --version >/dev/null 2>&1 ||
+ $FEBOOTSTRAP --version >&AS_MESSAGE_LOG_FD 2>&1 ||
AC_MSG_ERROR([febootstrap >= 3.0 must be installed, your version is too old])
dnl Pass a febootstrap --yum-config option.
dnl
dnl This used to be Very Important but is now just used to select
dnl which packages to install in the appliance, since the package
- dnl names vary slightly across distros. (See appliance/packagelist.in)
+ dnl names vary slightly across distros. (See
+ dnl appliance/packagelist.in and appliance/excludelist.in)
AC_MSG_CHECKING([which Linux distro for package names])
DISTRO=REDHAT
if test -f /etc/debian_version; then
DISTRO=DEBIAN
- if grep -q 'DISTRIB_ID=Ubuntu' /etc/lsb-release 2>/dev/null; then
+ if grep -q 'DISTRIB_ID=Ubuntu' /etc/lsb-release 2>&AS_MESSAGE_LOG_FD; then
DISTRO=UBUNTU
fi
fi
+ if test -f /etc/arch-release; then
+ DISTRO=ARCHLINUX
+ fi
AC_MSG_RESULT([$DISTRO])
AC_SUBST([DISTRO])
fi
test "x$POD2HTML" = "xno" &&
AC_MSG_ERROR([pod2html must be installed])
+dnl Check if pod2man, pod2text take --stderr and -u options (not in RHEL 5).
+AC_MSG_CHECKING([if pod2man takes --stderr option])
+if "$POD2MAN" --stderr >&AS_MESSAGE_LOG_FD 2>&1; then
+ AC_MSG_RESULT([yes])
+ POD2_STDERR_OPTION="--stderr"
+else
+ AC_MSG_RESULT([no])
+ POD2_STDERR_OPTION=""
+fi
+AC_SUBST([POD2_STDERR_OPTION])
+
+AC_MSG_CHECKING([if pod2man takes -u option])
+if "$POD2MAN" -u >&AS_MESSAGE_LOG_FD 2>&1; then
+ AC_MSG_RESULT([yes])
+ POD2_UTF8_OPTION="-u"
+else
+ AC_MSG_RESULT([no])
+ POD2_UTF8_OPTION=""
+fi
+AC_SUBST([POD2_UTF8_OPTION])
+
dnl Check for mkisofs.
AC_PATH_PROGS([MKISOFS],[mkisofs],[no],
[$PATH$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR/sbin])
dnl Check that the chosen qemu has virtio-serial support.
if test "x$vmchannel_test" != "xno"; then
+ AC_MSG_CHECKING([that $QEMU -help works])
+ if $QEMU -help >&AS_MESSAGE_LOG_FD 2>&1; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ AC_MSG_FAILURE(
+[$QEMU -help: command failed.
+
+This could be a very old version of qemu, or qemu might not be
+working.
+])
+ fi
+
AC_MSG_CHECKING([for virtio-serial support in $QEMU])
if $QEMU -nographic -device \? 2>&1 | grep -sq virtio-serial; then
AC_MSG_RESULT([yes])
- vmchannel_guestfwd=guestfwd
else
AC_MSG_RESULT([no])
AC_MSG_FAILURE(
missing_perl_modules=no
for pm in Test::More ExtUtils::MakeMaker; do
AC_MSG_CHECKING([for $pm])
- if ! perl -M$pm -e1 >/dev/null 2>&1; then
+ if ! perl -M$pm -e1 >&AS_MESSAGE_LOG_FD 2>&1; then
AC_MSG_RESULT([no])
missing_perl_modules=yes
else
PYTHON_PREFIX=
PYTHON_VERSION=
PYTHON_INCLUDEDIR=
-PYTHON_SITE_PACKAGES=
+PYTHON_INSTALLDIR=
AC_ARG_ENABLE([python],
AS_HELP_STRING([--disable-python], [Disable Python language bindings]),
AC_CHECK_PROG([PYTHON],[python],[python],[no])
if test "x$PYTHON" != "xno"; then
+ AC_MSG_CHECKING([Python prefix])
PYTHON_PREFIX=`$PYTHON -c "import sys; print sys.prefix"`
+ AC_MSG_RESULT([$PYTHON_PREFIX])
+
+ AC_MSG_CHECKING([Python version])
PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"`
+ AC_MSG_RESULT([$PYTHON_VERSION])
+
for d in \
$PYTHON_PREFIX/include/python$PYTHON_VERSION \
/usr/include/python$PYTHON_VERSION \
AC_MSG_WARN([Python include directory not found])
fi
- for d in \
- $PYTHON_PREFIX/lib64/python$PYTHON_VERSION/site-packages \
- $PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages \
- /usr/lib64/python$PYTHON_VERSION/site-packages \
- /usr/lib/python$PYTHON_VERSION/site-packages \
- /usr/local/lib/python$PYTHON_VERSION/site-packages
- do
- AC_MSG_CHECKING([for $d])
- if test -d "$d"; then
- AC_MSG_RESULT([found])
- PYTHON_SITE_PACKAGES=$d
- break
+ AC_ARG_WITH([python-installdir],
+ [AS_HELP_STRING([--with-python-installdir],
+ [directory to install python modules @<:@default=check@:>@])],
+ [PYTHON_INSTALLDIR="$withval"
+ AC_MSG_NOTICE([Python install dir $PYTHON_INSTALLDIR])],
+ [PYTHON_INSTALLDIR=check])
+
+ if test "x$PYTHON_INSTALLDIR" = "xcheck"; then
+ PYTHON_INSTALLDIR=
+ for d in \
+ $PYTHON_PREFIX/lib64/python$PYTHON_VERSION/site-packages \
+ $PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages \
+ /usr/lib64/python$PYTHON_VERSION/site-packages \
+ /usr/lib/python$PYTHON_VERSION/site-packages \
+ /usr/local/lib/python$PYTHON_VERSION/site-packages
+ do
+ AC_MSG_CHECKING([for $d])
+ if test -d "$d"; then
+ AC_MSG_RESULT([found])
+ PYTHON_INSTALLDIR=$d
+ break
+ fi
+ AC_MSG_RESULT([not found])
+ done
+ if test "x$PYTHON_INSTALLDIR" = "x"; then
+ AC_MSG_WARN([Python site-packages directory not found])
fi
- AC_MSG_RESULT([not found])
- done
- if test "x$PYTHON_SITE_PACKAGES" = "x"; then
- AC_MSG_WARN([Python site-packages directory not found])
fi
old_LIBS="$LIBS"
AC_SUBST(PYTHON_PREFIX)
AC_SUBST(PYTHON_VERSION)
AC_SUBST(PYTHON_INCLUDEDIR)
- AC_SUBST(PYTHON_SITE_PACKAGES)
+ AC_SUBST(PYTHON_INSTALLDIR)
])
AM_CONDITIONAL([HAVE_PYTHON],
- [test "x$PYTHON_INCLUDEDIR" != "x" && test "x$PYTHON_SITE_PACKAGES" != "x"])
+ [test "x$PYTHON" != "xno" && test "x$PYTHON_INCLUDEDIR" != "x" && test "x$PYTHON_INSTALLDIR" != "x"])
dnl Check for Ruby and rake (optional, for Ruby bindings).
AC_ARG_ENABLE([ruby],
missing_perl_modules=no
for pm in Pod::Usage Getopt::Long Sys::Virt Data::Dumper Locale::TextDomain Win::Hivex Win::Hivex::Regedit String::ShellQuote; do
AC_MSG_CHECKING([for $pm])
- if ! $PERL -M$pm -e1 >/dev/null 2>&1; then
+ if ! $PERL -M$pm -e1 >&AS_MESSAGE_LOG_FD 2>&1; then
AC_MSG_RESULT([no])
missing_perl_modules=yes
else
appliance/Makefile
images/Makefile
capitests/Makefile
+ caution/Makefile
regressions/Makefile
test-tool/Makefile
ocaml/Makefile ocaml/examples/Makefile
cat/Makefile
df/Makefile
rescue/Makefile
+ debian/changelog
ocaml/META perl/Makefile.PL])
AC_OUTPUT