# major/minor/release must be numbers
m4_define([libguestfs_major], [1])
m4_define([libguestfs_minor], [5])
-m4_define([libguestfs_release], [9])
+m4_define([libguestfs_release], [16])
# extra can be any string
m4_define([libguestfs_extra], [])
AC_SEARCH_LIBS([xdrmem_create],[rpc xdr nsl])
])
+dnl Check for cpio which isn't in the default Pardus install amazingly.
+AC_CHECK_PROG([CPIO],[cpio],[cpio],[no])
+test "x$CPIO" = "xno" &&
+ AC_MSG_ERROR([cpio must be installed])
+
dnl Check for pod2man and pod2text.
AC_CHECK_PROG([POD2MAN],[pod2man],[pod2man],[no])
test "x$POD2MAN" = "xno" &&
test "x$QEMU" = "xno" && AC_MSG_ERROR([qemu must be installed])
AC_DEFINE_UNQUOTED([QEMU],["$QEMU"],[Location of qemu binary.])
-dnl Check that the chosen qemu has vmchannel support or we can
-dnl fallback to null vmchannel (still using SLIRP). See the
-dnl discussion in the README file.
+dnl Check that the chosen qemu has virtio-serial support.
if test "x$vmchannel_test" != "xno"; then
- AC_MSG_CHECKING([for guestfwd support in $QEMU])
- if $QEMU -nographic --help | grep -sq guestfwd; then
+ 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])
- # Note that this test must be conditional on the previous
- # test failing. This is because recent qemu will throw
- # up an SDL window and hang if we try to run this test.
- AC_MSG_CHECKING([for "-net channel" (old guestfwd) support in $QEMU])
- vmchannelout=`$QEMU -nographic -net channel /dev/zero 2>&1 ||:`
- echo "vmchannel test command output: $vmchannelout" >&AS_MESSAGE_LOG_FD
- if echo "$vmchannelout" | grep -sq "vmchannel wrong port number" ; then
- AC_MSG_RESULT([yes])
- vmchannel_guestfwd=net_channel
- else
- AC_MSG_RESULT([no])
- vmchannel_guestfwd=no
- fi
- fi
-
- AC_MSG_CHECKING([for "-net user" (user mode network) support in $QEMU])
- if $QEMU -nographic --help | grep -sq -- "-net user"; then
- AC_MSG_RESULT([yes])
- vmchannel_net_user=yes
- else
- AC_MSG_RESULT([no])
- vmchannel_net_user=no
- fi
-
- if test "x$vmchannel_net_user" = "xno" -a "x$vmchannel_guestfwd" = "xno"; then
AC_MSG_FAILURE(
-[I did not find user mode network or vmchannel support in
+[I did not find virtio-serial support in
$QEMU.
-Either user mode networking or vmchannel support is vital for
-libguestfs to operate.
+virtio-serial support in qemu or KVM is essential for libguestfs
+to operate.
-Please read the relevant section in the README file for more
-information about this.
+Usually this means that you have to install a newer version of qemu
+and/or KVM. Please read the relevant section in the README file for
+more information about this.
You can override this test by setting the environment variable
vmchannel_test=no However if you don't have the right support
AC_MSG_RESULT([$fakechroot_version])
fakechroot_major=`echo "$fakechroot_version" | awk -F. '{print $1}'`
fakechroot_minor=`echo "$fakechroot_version" | awk -F. '{print $2}'`
- if test "$fakechroot_major" -lt 2 -o \
- \( "$fakechroot_major" -eq 2 -a "$fakechroot_minor" -lt 9 \); then
+ if test "$fakechroot_major" -lt 2 || \
+ ( test "$fakechroot_major" -eq 2 && test "$fakechroot_minor" -lt 9 ); then
AC_MSG_ERROR([fakechroot version must be >= 2.9])
fi
fi
dnl --with-repo to specify a Fedora repository.
AC_ARG_WITH([repo],
[AS_HELP_STRING([--with-repo],
- [set name of Fedora repository @<:@default=fedora-12@:>@])],
+ [set name of Fedora repository @<:@default=fedora-13@:>@])],
[],
- [with_repo=fedora-12])
+ [with_repo=fedora-13])
REPO="$with_repo"
AC_SUBST(REPO)
AC_DEFINE_UNQUOTED([REPO],["$REPO"],[Name of Fedora repository.])
AC_SUBST([LIBXML2_CFLAGS])
AC_SUBST([LIBXML2_LIBS])
-dnl hivex library (highly recommended).
+dnl Augeas (required)
+PKG_CHECK_MODULES([AUGEAS], [augeas])
+AC_SUBST([AUGEAS_CFLAGS])
+AC_SUBST([AUGEAS_LIBS])
+
+dnl hivex library (required)
dnl This used to be a part of libguestfs, but was spun off into its
dnl own separate upstream project in libguestfs 1.0.85.
-HAVE_HIVEX=yes
-PKG_CHECK_MODULES([HIVEX], [hivex],,[
- HAVE_HIVEX=no
- AC_MSG_WARN([Hivex library and headers are missing, so optional Windows Registry tools won't be built])])
-AM_CONDITIONAL([HAVE_HIVEX],[test "x$HAVE_HIVEX" = "xyes"])
+PKG_CHECK_MODULES([HIVEX], [hivex])
AC_SUBST([HIVEX_CFLAGS])
AC_SUBST([HIVEX_LIBS])
dnl Check for OCaml (optional, for OCaml bindings).
AC_PROG_OCAML
AC_PROG_FINDLIB
-AM_CONDITIONAL([HAVE_OCAML],[test "x$OCAMLC" != "xno" -a "x$OCAMLFIND" != "xno"])
+AM_CONDITIONAL([HAVE_OCAML],[test "x$OCAMLC" != "xno" && test "x$OCAMLFIND" != "xno"])
dnl Optional xml-light for running the generator.
OCAML_PKG_xml_light=no
-if test "x$OCAMLC" != "xno" -a "x$OCAMLFIND" != "xno"; then
+if test "x$OCAMLC" != "xno" && test "x$OCAMLFIND" != "xno"; then
AC_CHECK_OCAML_PKG([xml-light])
fi
AM_CONDITIONAL([HAVE_XML_LIGHT],[test "x$OCAML_PKG_xml_light" != "xno"])
fi
AM_CONDITIONAL([HAVE_PERL],
- [test "x$PERL" != "xno" -a "x$missing_perl_modules" != "xyes"])
+ [test "x$PERL" != "xno" && test "x$missing_perl_modules" != "xyes"])
dnl Check for Python (optional, for Python bindings).
AC_CHECK_PROG([PYTHON],[python],[python],[no])
AC_SUBST(PYTHON_SITE_PACKAGES)
AM_CONDITIONAL([HAVE_PYTHON],
- [test "x$PYTHON_INCLUDEDIR" != "x" -a "x$PYTHON_SITE_PACKAGES" != "x"])
+ [test "x$PYTHON_INCLUDEDIR" != "x" && test "x$PYTHON_SITE_PACKAGES" != "x"])
dnl Check for Ruby and rake (optional, for Ruby bindings).
AC_CHECK_LIB([ruby],[ruby_init],[HAVE_LIBRUBY=1],[HAVE_LIBRUBY=0])
AC_CHECK_PROG([RAKE],[rake],[rake],[no])
AM_CONDITIONAL([HAVE_RUBY],
- [test "x$RAKE" != "xno" -a -n "$HAVE_LIBRUBY"])
+ [test "x$RAKE" != "xno" && test -n "$HAVE_LIBRUBY"])
dnl Check for Java.
AC_ARG_WITH(java_home,
[with_java_home=check])
if test "x$with_java_home" != "xno"; then
- if test "x$with_java_home" != "xyes" -a "x$with_java_home" != "xcheck"
+ if test "x$with_java_home" != "xyes" && test "x$with_java_home" != "xcheck"
then
# Reject unsafe characters in $JAVA_HOME
jh_lf='
/usr/lib/jvm/java \
/usr/lib/jvm/java-6-openjdk
do
- if test -d $d -a -f $d/bin/java; then
+ if test -d $d && test -f $d/bin/java; then
JAVA_HOME=$d
break
fi
fi
AM_CONDITIONAL([HAVE_INSPECTOR],
- [test "x$PERL" != "xno" -a "x$missing_perl_modules" != "xyes"])
+ [test "x$PERL" != "xno" && test "x$missing_perl_modules" != "xyes"])
AM_CONDITIONAL([HAVE_TOOLS],
- [test "x$PERL" != "xno" -a "x$missing_perl_modules" != "xyes"])
+ [test "x$PERL" != "xno" && test "x$missing_perl_modules" != "xyes"])
dnl po4a for translating man pages and POD files (optional).
AC_CHECK_PROG([PO4A],[po4a],[po4a],[no])
dnl PHP
AC_CHECK_PROG([PHP],[php],[php],[no])
AC_CHECK_PROG([PHPIZE],[phpize],[phpize],[no])
-AM_CONDITIONAL([HAVE_PHP], [test "x$PHP" != "xno" -a "x$PHPIZE" != "xno"])
+AM_CONDITIONAL([HAVE_PHP], [test "x$PHP" != "xno" && test "x$PHPIZE" != "xno"])
dnl Library versioning.
MAX_PROC_NR=`cat $srcdir/src/MAX_PROC_NR`
AC_CONFIG_FILES([appliance/update.sh],
[chmod +x appliance/update.sh])
AC_CONFIG_FILES([Makefile
+ generator/Makefile
src/Makefile fish/Makefile po/Makefile.in examples/Makefile
appliance/Makefile
appliance/debian/debirf.conf