]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/mathml_editor/configure.ac
* disable-shared doens't bother ocaml
[helm.git] / helm / DEVEL / mathml_editor / configure.ac
index 0dca72c8cb5fec57e629218c746226b52332e5ec..17b35b57ea81075acfc6b646b10d250503f6a40c 100644 (file)
@@ -1,9 +1,13 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_INIT
-AC_CONFIG_SRCDIR([src/TToken.hh])
+AC_INIT(editex, [0.0.1])
+AC_CONFIG_SRCDIR(src/TToken.hh)
+AM_INIT_AUTOMAKE($AC_PACKAGE_NAME, $AC_PACKAGE_VERSION)
+
+PACKAGE=$AC_PACKAGE_NAME
+VERSION=$AC_PACKAGE_VERSION
+AC_SUBST(PACKAGE)
+AC_SUBST(VERSION)
 
-PACKAGE=editex
-VERSION=0.0.1
 EDITEX_VERSION_INFO=`echo $VERSION | awk -F. '{ printf "%d:%d:%d", $1+$2, $3, $2 }'`
 AC_SUBST(EDITEX_VERSION_INFO)
 
@@ -32,7 +36,6 @@ AC_ARG_WITH(gmetadom-prefix,
 )
 
 AC_CONFIG_HEADERS([config.h])
-AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
 AM_CONFIG_HEADER(config.h)
 
 AH_TOP([
@@ -72,12 +75,21 @@ AC_PROG_CXX
 AC_PROG_INSTALL
 AC_HEADER_STDC([])
 
+AC_LANG_PUSH(C++)
+AC_CHECK_HEADERS(hash_map)
+AC_CHECK_HEADERS(ext/hash_map)
+AC_LANG_POP(C++)
+
 AC_SUBST(CFLAGS)
 AC_SUBST(CPPFLAGS)
 AC_SUBST(LDFLAGS)
 
 AM_PROG_LIBTOOL
 
+PKG_CHECK_MODULES(GLIB2, glib-2.0)
+AC_SUBST(GLIB2_CFLAGS)
+AC_SUBST(GLIB2_LIBS)
+
 GMETADOM_CONFIG="gmetadom-config"
 GMETADOM_MIN_VERSION=0.1.0
 AC_MSG_CHECKING([for GMetaDOM C++ library] >= $GMETADOM_MIN_VERSION) 
@@ -110,7 +122,7 @@ AC_SUBST(GMETADOM_CFLAGS)
 AC_SUBST(GMETADOM_LIBS)
 
 GDOMEXSLT_CONFIG="gdome_xslt_cpp_smart-config"
-GDOMEXSLT_MIN_VERSION=0.0.1
+GDOMEXSLT_MIN_VERSION=0.0.4
 AC_MSG_CHECKING([for gdome_xslt C++ library] >= $GDOMEXSLT_MIN_VERSION) 
 if test "x$GDOMEXSLT_PREFIX" != "x"
 then
@@ -171,11 +183,74 @@ fi
 AC_SUBST(GTKMATHVIEW_CFLAGS)
 AC_SUBST(GTKMATHVIEW_LIBS)
 
+AC_CHECK_PROG(HAVE_OCAMLC, ocamlc, yes, no)
+if test $HAVE_OCAMLC = "no"; then
+  AC_MSG_ERROR([could not find ocamlc in PATH, please make sure ocaml is installed])
+else
+  OCAMLC=ocamlc
+  OCAMLSTDLIBDIR="`ocamlc -where`"
+  OCAMLSTUBDIR="`ocamlc -where`/stublibs"
+  AC_SUBST(OCAMLC)
+  AC_SUBST(OCAMLSTDLIBDIR)
+  AC_SUBST(OCAMLSTUBDIR)
+fi
+
+AC_CHECK_PROG(HAVE_OCAMLOPT, ocamlopt, yes, no)
+if test $HAVE_OCAMLOPT = "no"; then
+       AC_MSG_WARN([ocaml native libraries won't be compiled since ocamlopt was not found])
+else
+  OCAMLOPT=ocamlopt
+  AC_SUBST(OCAMLOPT)
+fi
+AM_CONDITIONAL(HAVE_OCAMLOPT_COND, test x$HAVE_OCAMLOPT = xyes)
+
+AC_CHECK_PROG(HAVE_OCAMLFIND, ocamlfind, yes, no)
+if test $HAVE_OCAMLFIND = "no"; then
+  AC_MSG_ERROR([could not find ocamlfind in PATH, please make sure findlib is installed])
+else
+  OCAMLFIND=ocamlfind
+  AC_SUBST(OCAMLFIND)
+fi
+
+AC_CHECK_PROG(HAVE_OCAMLDEP, ocamldep, yes, no)
+if test $HAVE_OCAMLDEP = "yes"; then
+  OCAMLDEP=ocamldep
+  AC_SUBST(OCAMLDEP)
+fi
+
+AC_CHECK_PROG(HAVE_OCAMLMKLIB, ocamlmklib, yes, no)
+if test $HAVE_OCAMLMKLIB = "no"; then
+  AC_MSG_ERROR([could not find ocamlmklib in PATH, please make sure ocamlmklib is installed])
+else
+  OCAMLMKLIB=ocamlmklib
+  AC_SUBST(OCAMLMKLIB)
+fi
+AM_CONDITIONAL(HAVE_SHAREDLIBS_COND, test x$enable_shared = xyes)
+
+AC_MSG_CHECKING(for gdome2 ocaml binding)
+ocamlfind query gdome2 ||
+  AC_MSG_ERROR(gdome2 not installed (according to findlib))
+MLGDOME_CFLAGS="`$OCAMLFIND query -i-format gdome2`"
+AC_SUBST(MLGDOME_CFLAGS)
+
+AC_MSG_CHECKING(for the ocaml library dir)
+OCAML_LIB_DIR=`ocamlc -where`
+AC_MSG_RESULT($OCAML_LIB_DIR)
+
+AC_CHECK_FILE(/usr/include/caml/mlvalues.h,
+       OCAML_INCLUDE_DIR=/usr/include/caml,
+       OCAML_INCLUDE_DIR=$OCAML_LIB_DIR/caml
+)
+
+AC_SUBST(OCAML_INCLUDE_DIR)
+
 AC_CONFIG_FILES([
  Makefile 
  src/Makefile
  test/Makefile
- editex-config
+ textomml/Makefile
+ textomml/config.dirs
+ ocaml/Makefile
+ editex.pc
 ])
-AC_CONFIG_COMMANDS([default],[[chmod +x editex-config]],[[]])
 AC_OUTPUT