# major/minor/release must be numbers
m4_define([libguestfs_major], [1])
m4_define([libguestfs_minor], [7])
-m4_define([libguestfs_release], [2])
+m4_define([libguestfs_release], [6])
# extra can be any string
m4_define([libguestfs_extra], [])
AM_CONDITIONAL([ENABLE_APPLIANCE],[test "x$enable_appliance" = "xyes"])
AC_MSG_RESULT([$enable_appliance])
-dnl Check for PCRE.
-AC_CHECK_LIB([pcre],[pcre_compile],
- [AC_SUBST([LIBPCRE], ["-lpcre"])],
- [AC_MSG_FAILURE(
- [Perl Compatible Regular Expressions library (PCRE) is required])])
-AC_CHECK_HEADER([pcre.h],[],
- [AC_MSG_FAILURE(
- [Perl Compatible Regular Expressions library (PCRE) header file pcre.h is required])])
-
dnl Check for rpcgen and XDR library. rpcgen is optional.
AC_CHECK_PROG([RPCGEN],[rpcgen],[rpcgen],[no])
AM_CONDITIONAL([HAVE_RPCGEN],[test "x$RPCGEN" != "xno"])
AM_GNU_GETTEXT([external])
AM_GNU_GETTEXT_VERSION([0.17])
-dnl libmagic (required)
-AC_CHECK_LIB([magic],[magic_file],[
- AC_SUBST([LIBMAGIC], ["-lmagic"])
- ],[
- AC_MSG_FAILURE([libmagic is required])
- ])
-AC_CHECK_HEADER([magic.h],[],[
- AC_MSG_FAILURE([magic.h header file is required])
- ])
-
-dnl libvirt (required)
-PKG_CHECK_MODULES([LIBVIRT], [libvirt])
-AC_SUBST([LIBVIRT_CFLAGS])
-AC_SUBST([LIBVIRT_LIBS])
+dnl libmagic (highly recommended)
+AC_CHECK_LIB([magic],[magic_file],
+ [AC_CHECK_HEADER([magic.h],
+ [AC_SUBST([MAGIC_LIBS], ["-lmagic"])
+ AC_DEFINE([HAVE_LIBMAGIC],[1],[libmagic found at compile time.])
+ ], [])
+ ],
+ [AC_MSG_WARN([libmagic not found, some core features will be disabled])])
-dnl libxml2 (required)
-PKG_CHECK_MODULES([LIBXML2], [libxml-2.0])
-AC_SUBST([LIBXML2_CFLAGS])
-AC_SUBST([LIBXML2_LIBS])
+dnl Check for PCRE (highly recommended)
+PKG_CHECK_MODULES([PCRE], [libpcre],
+ [AC_SUBST([PCRE_CFLAGS])
+ AC_SUBST([PCRE_LIBS])
+ AC_DEFINE([HAVE_PCRE],[1],[PCRE found at compile time.])
+ ],
+ [AC_MSG_WARN([PCRE not found, some core features will be disabled])])
-dnl Augeas (required)
-PKG_CHECK_MODULES([AUGEAS], [augeas])
-AC_SUBST([AUGEAS_CFLAGS])
-AC_SUBST([AUGEAS_LIBS])
+dnl libvirt (highly recommended)
+PKG_CHECK_MODULES([LIBVIRT], [libvirt],
+ [AC_SUBST([LIBVIRT_CFLAGS])
+ AC_SUBST([LIBVIRT_LIBS])
+ AC_DEFINE([HAVE_LIBVIRT],[1],[libvirt found at compile time.])
+ ],
+ [AC_MSG_WARN([libvirt not found, some core features will be disabled])])
+AM_CONDITIONAL([HAVE_LIBVIRT],[test "x$LIBVIRT_LIBS" != "x"])
+
+dnl libxml2 (highly recommended)
+PKG_CHECK_MODULES([LIBXML2], [libxml-2.0],
+ [AC_SUBST([LIBXML2_CFLAGS])
+ AC_SUBST([LIBXML2_LIBS])
+ AC_DEFINE([HAVE_LIBXML2],[1],[libxml2 found at compile time.])
+ ],
+ [AC_MSG_WARN([libxml2 not found, some core features will be disabled])])
-dnl hivex library (required)
+dnl hivex library (highly recommended)
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.
-PKG_CHECK_MODULES([HIVEX], [hivex])
-AC_SUBST([HIVEX_CFLAGS])
-AC_SUBST([HIVEX_LIBS])
+PKG_CHECK_MODULES([HIVEX], [hivex],
+ [AC_SUBST([HIVEX_CFLAGS])
+ AC_SUBST([HIVEX_LIBS])
+ AC_DEFINE([HAVE_HIVEX],[1],[hivex library found at compile time.])
+ ],
+ [AC_MSG_WARN([hivex not found, some core features will be disabled])])
dnl FUSE is optional to build the FUSE module.
AC_ARG_ENABLE([fuse],
dnl Check for OCaml (optional, for OCaml bindings).
OCAMLC=no
OCAMLFIND=no
-OCAML_PKG_xml_light=no
AC_ARG_ENABLE([ocaml],
AS_HELP_STRING([--disable-ocaml], [Disable OCaml language bindings]),
[],
OCAMLFIND=
AC_PROG_OCAML
AC_PROG_FINDLIB
-
- dnl Optional xml-light for running the generator.
- if test "x$OCAMLC" != "xno" && test "x$OCAMLFIND" != "xno"; then
- AC_CHECK_OCAML_PKG([xml-light])
- fi])
+ ])
AM_CONDITIONAL([HAVE_OCAML],
[test "x$OCAMLC" != "xno" && test "x$OCAMLFIND" != "xno"])
-AM_CONDITIONAL([HAVE_XML_LIGHT],[test "x$OCAML_PKG_xml_light" != "xno"])
dnl Check for Perl (optional, for Perl bindings).
-dnl XXX This isn't quite right, we should check for Perl devel library.
-AC_CHECK_PROG([PERL],[perl],[perl],[no])
-
-dnl Check for Perl modules that must be present to compile and
-dnl test the Perl bindings.
-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
- AC_MSG_RESULT([no])
- missing_perl_modules=yes
- else
- AC_MSG_RESULT([yes])
- fi
-done
-if test "x$missing_perl_modules" = "xyes"; then
- AC_MSG_WARN([some Perl modules required to compile or test the Perl bindings are missing])
-fi
-
+PERL=no
+AC_ARG_ENABLE([perl],
+ AS_HELP_STRING([--disable-perl], [Disable Perl language bindings]),
+ [],
+ [enable_perl=yes])
+AS_IF([test "x$enable_perl" != "xno"],
+ [
+ PERL=
+ AC_CHECK_PROG([PERL],[perl],[perl],[no])
+
+ dnl Check for Perl modules that must be present to compile and
+ dnl test the Perl bindings.
+ 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
+ AC_MSG_RESULT([no])
+ missing_perl_modules=yes
+ else
+ AC_MSG_RESULT([yes])
+ fi
+ done
+ if test "x$missing_perl_modules" = "xyes"; then
+ AC_MSG_WARN([some Perl modules required to compile or test the Perl bindings are missing])
+ fi
+ ])
AM_CONDITIONAL([HAVE_PERL],
[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])
-
PYTHON_PREFIX=
PYTHON_VERSION=
PYTHON_INCLUDEDIR=
PYTHON_SITE_PACKAGES=
-if test "x$PYTHON" != "xno"; then
- PYTHON_PREFIX=`$PYTHON -c "import sys; print sys.prefix"`
- PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"`
- for d in \
- $PYTHON_PREFIX/include/python$PYTHON_VERSION \
- /usr/include/python$PYTHON_VERSION \
- /usr/local/include/python$PYTHON_VERSION
- do
- AC_MSG_CHECKING([Python.h in $d])
- if test -r "$d/Python.h"; then
- AC_MSG_RESULT([found])
- PYTHON_INCLUDEDIR=$d
- break
- fi
- AC_MSG_RESULT([not found])
- done
- 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
- fi
- AC_MSG_RESULT([not found])
- done
+AC_ARG_ENABLE([python],
+ AS_HELP_STRING([--disable-python], [Disable Python language bindings]),
+ [],
+ [enable_python=yes])
+AS_IF([test "x$enable_python" != "xno"],
+ [
+ AC_CHECK_PROG([PYTHON],[python],[python],[no])
+
+ if test "x$PYTHON" != "xno"; then
+ PYTHON_PREFIX=`$PYTHON -c "import sys; print sys.prefix"`
+ PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"`
+ for d in \
+ $PYTHON_PREFIX/include/python$PYTHON_VERSION \
+ /usr/include/python$PYTHON_VERSION \
+ /usr/local/include/python$PYTHON_VERSION
+ do
+ AC_MSG_CHECKING([Python.h in $d])
+ if test -r "$d/Python.h"; then
+ AC_MSG_RESULT([found])
+ PYTHON_INCLUDEDIR=$d
+ break
+ fi
+ AC_MSG_RESULT([not found])
+ done
+ if test "x$PYTHON_INCLUDEDIR" = "x"; then
+ AC_MSG_WARN([Python include directory not found])
+ fi
- old_LIBS="$LIBS"
- LIBS="$LIBS -lpython$PYTHON_VERSION"
- AC_CHECK_FUNCS([PyCapsule_New])
- LIBS="$old_LIBS"
-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
+ 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
-AC_SUBST(PYTHON_PREFIX)
-AC_SUBST(PYTHON_VERSION)
-AC_SUBST(PYTHON_INCLUDEDIR)
-AC_SUBST(PYTHON_SITE_PACKAGES)
+ old_LIBS="$LIBS"
+ LIBS="$LIBS -lpython$PYTHON_VERSION"
+ AC_CHECK_FUNCS([PyCapsule_New])
+ LIBS="$old_LIBS"
+ fi
+ AC_SUBST(PYTHON_PREFIX)
+ AC_SUBST(PYTHON_VERSION)
+ AC_SUBST(PYTHON_INCLUDEDIR)
+ AC_SUBST(PYTHON_SITE_PACKAGES)
+ ])
AM_CONDITIONAL([HAVE_PYTHON],
[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])
-
+AC_ARG_ENABLE([ruby],
+ AS_HELP_STRING([--disable-ruby], [Disable Ruby language bindings]),
+ [],
+ [enable_ruby=yes])
+AS_IF([test "x$enable_ruby" != "xno"],
+ [
+ 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" && test -n "$HAVE_LIBRUBY"])
AM_CONDITIONAL([HAVE_JAVA],[test -n "$JAVAC"])
dnl Check for Haskell (GHC).
-AC_CHECK_PROG([GHC],[ghc],[ghc],[no])
-
+GHC=no
+AC_ARG_ENABLE([haskell],
+ AS_HELP_STRING([--disable-haskell], [Disable Haskell language bindings]),
+ [],
+ [enable_haskell=yes])
+AS_IF([test "x$enable_haskell" != "xno"],
+ [
+ GHC=
+ AC_CHECK_PROG([GHC],[ghc],[ghc],[no])
+ ])
AM_CONDITIONAL([HAVE_HASKELL],
[test "x$GHC" != "xno"])
+dnl PHP
+PHP=no
+AC_ARG_ENABLE([php],
+ AS_HELP_STRING([--disable-php], [Disable PHP language bindings]),
+ [],
+ [enable_php=yes])
+AS_IF([test "x$enable_php" != "xno"],
+ [
+ PHP=
+ AC_CHECK_PROG([PHP],[php],[php],[no])
+ AC_CHECK_PROG([PHPIZE],[phpize],[phpize],[no])
+ ])
+AM_CONDITIONAL([HAVE_PHP], [test "x$PHP" != "xno" && test "x$PHPIZE" != "xno"])
+
dnl Check for Perl modules needed by virt-df, inspector, etc.
-missing_perl_modules=no
-for pm in Pod::Usage Getopt::Long Sys::Virt Data::Dumper XML::Writer Locale::TextDomain Win::Hivex Win::Hivex::Regedit; do
- AC_MSG_CHECKING([for $pm])
- if ! perl -M$pm -e1 >/dev/null 2>&1; then
- AC_MSG_RESULT([no])
- missing_perl_modules=yes
- else
- AC_MSG_RESULT([yes])
- fi
-done
-if test "x$missing_perl_modules" = "xyes"; then
- AC_MSG_WARN([some Perl modules required to compile virt-inspector and the other virt-* tools are missing])
-fi
+AS_IF([test "x$PERL" != "xno"],
+ [
+ missing_perl_modules=no
+ for pm in Pod::Usage Getopt::Long Sys::Virt Data::Dumper XML::Writer Locale::TextDomain Win::Hivex Win::Hivex::Regedit; do
+ AC_MSG_CHECKING([for $pm])
+ if ! $PERL -M$pm -e1 >/dev/null 2>&1; then
+ AC_MSG_RESULT([no])
+ missing_perl_modules=yes
+ else
+ AC_MSG_RESULT([yes])
+ fi
+ done
+ if test "x$missing_perl_modules" = "xyes"; then
+ AC_MSG_WARN([some Perl modules required to compile virt-inspector and the other virt-* tools are missing])
+ fi
+ ])
AM_CONDITIONAL([HAVE_INSPECTOR],
[test "x$PERL" != "xno" && test "x$missing_perl_modules" != "xyes"])
AC_CHECK_PROG([PO4A],[po4a],[po4a],[no])
AM_CONDITIONAL([HAVE_PO4A], [test "x$PO4A" != "xno"])
-dnl PHP
-AC_CHECK_PROG([PHP],[php],[php],[no])
-AC_CHECK_PROG([PHPIZE],[phpize],[phpize],[no])
-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_SUBST(MAX_PROC_NR)
po-docs/ja/Makefile
php/Makefile
csharp/Makefile
+ cat/Makefile
ocaml/META perl/Makefile.PL])
AC_OUTPUT