slave: Use slightly modified event_callback.
[guestfs-browser.git] / configure.ac
index a7db870..6f6fa67 100644 (file)
@@ -1,5 +1,5 @@
 dnl Guestfs Browser.
-dnl Copyright (C) 2010 Red Hat Inc.
+dnl Copyright (C) 2010-2011 Red Hat Inc.
 dnl
 dnl This program is free software; you can redistribute it and/or modify
 dnl it under the terms of the GNU General Public License as published by
@@ -15,7 +15,7 @@ dnl You should have received a copy of the GNU General Public License along
 dnl with this program; if not, write to the Free Software Foundation, Inc.,
 dnl 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
-AC_INIT([guestfs-browser],[0.1.0])
+AC_INIT([guestfs-browser],[0.2.2])
 AM_INIT_AUTOMAKE([foreign])
 AC_CONFIG_MACRO_DIR([m4])
 
@@ -32,16 +32,32 @@ AC_PROG_SED
 
 dnl Check for OCaml compiler.
 AC_PROG_OCAML
-if test "$OCAMLOPT" = "no"; then
-    AC_MSG_ERROR([You must install the OCaml native compiler (ocamlopt)])
+if test "$OCAMLC" = "no"; then
+    AC_MSG_ERROR([You must install the OCaml compiler (ocamlc or ocamlopt)])
 fi
 
+dnl Choose native code if available, but allow the user to specify
+dnl bytecode only (useful for debugging).
+AC_ARG_WITH([native],
+        [AS_HELP_STRING([--without-native],
+                [disable native compilation (slow, but useful for debugging)])],
+        [],
+        [with_native=yes])
+AM_CONDITIONAL([HAVE_OCAMLOPT],
+        [test "x$with_native" != "xno" && test "x$OCAMLBEST" = "xopt"])
+
 dnl Check for OCaml findlib.
 AC_PROG_FINDLIB
 if test "$OCAMLFIND" = "no"; then
     AC_MSG_ERROR([You must install OCaml findlib (ocamlfind)])
 fi
 
+dnl Check for camlp4.
+AC_PROG_CAMLP4
+if test "$CAMLP4" = "no"; then
+    AC_MSG_ERROR([You must install the OCaml 'camlp4' preprocessor package])
+fi
+
 dnl Check for all OCaml packages.
 AC_CHECK_OCAML_PKG([lablgtk2])
 if test "$OCAML_PKG_lablgtk2" = "no"; then
@@ -58,11 +74,31 @@ if test "$OCAML_PKG_guestfs" = "no"; then
     AC_MSG_ERROR([Please install OCaml module 'guestfs'.])
 fi
 
+AC_CHECK_OCAML_PKG([hivex])
+if test "$OCAML_PKG_hivex" = "no"; then
+    AC_MSG_ERROR([Please install OCaml module 'hivex'.])
+fi
+
 AC_CHECK_OCAML_PKG([xml-light])
 if test "$OCAML_PKG_xml_light" = "no"; then
     AC_MSG_ERROR([Please install OCaml module 'xml-light'.])
 fi
 
+AC_CHECK_OCAML_PKG([calendar])
+if test "$OCAML_PKG_calendar" = "no"; then
+    AC_MSG_ERROR([Please install OCaml module 'calendar'.])
+fi
+
+AC_CHECK_OCAML_PKG([camomile])
+if test "$OCAML_PKG_camomile" = "no"; then
+    AC_MSG_ERROR([Please install OCaml module 'camomile' (>= 0.8, including the data module if that is separate).])
+fi
+
+AC_CHECK_OCAML_PKG([bitstring])
+if test "$OCAML_PKG_bitstring" = "no"; then
+    AC_MSG_ERROR([Please install OCaml module 'bitstring'.])
+fi
+
 AC_CHECK_OCAML_PKG([extlib])
 if test "$OCAML_PKG_extlib" = "no"; then
     AC_MSG_ERROR([Please install OCaml module 'extlib'.])
@@ -72,12 +108,18 @@ dnl Check for gdk_pixbuf_mlsource program.
 AC_PATH_PROGS([GDK_PIXBUF_MLSOURCE], [gdk_pixbuf_mlsource])
 
 dnl Optional programs.
-AC_CHECK_PROG(PERLDOC,[perldoc],[perldoc],[no])
+
+dnl XXX Other desktop environments?
+AC_CHECK_PROGS([OPENER], [gnome-open], [no])
+
+AC_CHECK_PROG([HIVEXREGEDIT], [hivexregedit], [hivexregedit], [no])
+
+AC_CHECK_PROG([PERLDOC],[perldoc],[perldoc],[no])
 if test "x$PERLDOC" = "xno" ; then
-  AC_MSG_WARN([perldoc not found - install perl to make man pages])
+    AC_MSG_WARN([perldoc not found - install perl to make man pages])
 fi
-AM_CONDITIONAL(HAVE_PERLDOC,[test "$perldoc" != "no"])
+AM_CONDITIONAL([HAVE_PERLDOC],[test "x$PERLDOC" != "xno"])
 
 AC_CONFIG_HEADERS([config.h])
-AC_CONFIG_FILES([Makefile config.ml guestfs-browser.spec])
+AC_CONFIG_FILES([Makefile])
 AC_OUTPUT