-dnl Check for required OCaml packages.
-AC_CHECK_OCAML_PKG(unix)
-if test "x$pkg_unix" != "xyes"; then
- AC_MSG_ERROR([Cannot find required OCaml package 'unix'])
-fi
-AC_CHECK_OCAML_PKG(extlib)
-if test "x$pkg_extlib" != "xyes"; then
- AC_MSG_ERROR([Cannot find required OCaml package 'extlib'])
-fi
+if test "x$OCAMLFIND" != "x"; then
+ dnl Use ocamlfind to find the required packages ...
+
+ dnl Check for required OCaml packages.
+ AC_CHECK_OCAML_PKG(unix)
+ if test "x$pkg_unix" != "xyes"; then
+ AC_MSG_ERROR([Cannot find required OCaml package 'unix'])
+ fi
+
+ dnl Check for optional OCaml packages.
+ AC_CHECK_OCAML_PKG(extlib)
+ AC_CHECK_OCAML_PKG(lablgtk2)
+ AC_CHECK_OCAML_PKG(curses)
+ AC_CHECK_OCAML_PKG(gettext)
+ AC_CHECK_OCAML_PKG(xml-light)
+ AC_CHECK_OCAML_PKG(csv)
+ AC_CHECK_OCAML_PKG(calendar)
+
+ AC_SUBST(pkg_unix)
+ AC_SUBST(pkg_extlib)
+ AC_SUBST(pkg_lablgtk2)
+ AC_SUBST(pkg_curses)
+ AC_SUBST(pkg_gettext)
+ AC_SUBST(pkg_xml_light)
+ AC_SUBST(pkg_csv)
+ AC_SUBST(pkg_calendar)
+else
+ dnl Use a basic module test if there is no findlib ...
+
+ dnl Check for required OCaml modules.
+ AC_CHECK_OCAML_MODULE(unix,pkg_unix,Unix,[.])
+ if test "x$pkg_unix" = "xno"; then
+ AC_MSG_ERROR([Cannot find required OCaml package 'unix'])
+ fi