-AC_INIT(etc/configuration.xml.in)
+AC_INIT(configuration.ml.in)
+
+PACKAGE=helm_gtk_interface
+MAJOR_VERSION=0
+MINOR_VERSION=0
+MICRO_VERSION=2
+VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION
if test "x$prefix" != xNONE; then
RESOLVED_PREFIX=$prefix
RESOLVED_EXEC_PREFIX=$RESOLVED_PREFIX
fi
-dnl General
-AC_MSG_CHECKING("for the lib/helm dir")
-HELM_LIB_DIR=$RESOLVED_EXEC_PREFIX/lib/helm
-AC_MSG_RESULT($HELM_LIB_DIR)
-
-AC_MSG_CHECKING("for the etc/helm dir")
-HELM_ETC_DIR=$RESOLVED_PREFIX/etc/helm
-AC_MSG_RESULT($HELM_ETC_DIR)
+dnl The following is the directory where the binary will be installed
+BIN_DIR=$RESOLVED_EXEC_PREFIX/bin
-AC_MSG_CHECKING("for the lib/helm dir")
-HELM_SHARE_DIR=$RESOLVED_PREFIX/share/helm
-AC_MSG_RESULT($HELM_SHARE_DIR)
+AC_PATH_PROG(PERL_BINARY,perl,no)
+if test $PERL_BINARY = no ; then
+ AC_MSG_ERROR(Could not find perl)
+fi
-dnl Only for GtkMathview XML configuration
-HELM_DICTIONARY_PATH=$HELM_ETC_DIR/helm-dictionary.xml
+dnl MISSING CHECKS:
+dnl ocaml-findlib, ocaml-netstring, ocaml-pxp
-AC_CHECK_PROG(HAVE_GTKMATHVIEW_CONFIG,gtkmathview-config,yes,no)
-if test $HAVE_GTKMATHVIEW_CONFIG = no ; then
- AC_MSG_ERROR(Could not find gtkmathview-config)
-fi
-GTKMATHVIEW_PREFIX=`gtkmathview-config --prefix`
-
-AC_MSG_CHECKING("for dictionary.xml")
-AC_CACHE_VAL(helm_cv_GTKMATHVIEW_DICTIONARY_PATH,
- helm_cv_GTKMATHVIEW_DICTIONARY_PATH=$GTKMATHVIEW_PREFIX/share/gtkmathview/dictionary.xml
- if test ! -f $helm_cv_GTKMATHVIEW_DICTIONARY_PATH ; then
- echo ""
- AC_MSG_WARN(Could not find dictionary.xml. Where is it?)
- read helm_cv_GTKMATHVIEW_DICTIONARY_PATH
- RES="Asked"
- fi
-)
-GTKMATHVIEW_DICTIONARY_PATH=$helm_cv_GTKMATHVIEW_DICTIONARY_PATH
-if test "$RES" != "Asked" ; then
- AC_MSG_RESULT($GTKMATHVIEW_DICTIONARY_PATH)
-fi
-AC_CACHE_SAVE
-
-AC_MSG_CHECKING("for font-configuration.xml")
-RES=""
-AC_CACHE_VAL(helm_cv_GTKMATHVIEW_FONT_CONFIGURATION_PATH,
- helm_cv_GTKMATHVIEW_FONT_CONFIGURATION_PATH=$GTKMATHVIEW_PREFIX/share/gtkmathview/font-configuration.xml
- if test ! -f $helm_cv_GTKMATHVIEW_FONT_CONFIGURATION_PATH ; then
- echo ""
- AC_MSG_WARN(Could not find font-configuration.xml. Where is it?)
- read helm_cv_GTKMATHVIEW_FONT_CONFIGURATION_PATH
- RES="Asked"
- fi
-)
-GTKMATHVIEW_FONT_CONFIGURATION_PATH=$helm_cv_GTKMATHVIEW_FONT_CONFIGURATION_PATH
-if test "$RES" != "Asked" ; then
- AC_MSG_RESULT($GTKMATHVIEW_FONT_CONFIGURATION_PATH)
-fi
-AC_CACHE_SAVE
-
-AC_MSG_CHECKING("for t1.config")
-RES=""
-AC_CACHE_VAL(helm_cv_GTKMATHVIEW_T1_CONFIG_FILE,
- helm_cv_GTKMATHVIEW_T1_CONFIG_FILE=$GTKMATHVIEW_PREFIX/share/gtkmathview/t1.config
- if test ! -f $helm_cv_GTKMATHVIEW_T1_CONFIG_FILE ; then
- echo ""
- AC_MSG_WARN(Could not find t1.config. Where is it?)
- read helm_cv_GTKMATHVIEW_T1_CONFIG_FILE
- RES="Asked"
- fi
-)
-GTKMATHVIEW_T1_CONFIG_FILE=$helm_cv_GTKMATHVIEW_T1_CONFIG_FILE
-if test "$RES" != "Asked" ; then
- AC_MSG_RESULT($GTKMATHVIEW_T1_CONFIG_FILE)
+dnl Check for Ocaml
+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)
fi
-AC_CACHE_SAVE
-HELM_FONT_CONFIGURATION_PATH=$HELM_ETC_DIR/helm-font-configuration.xml
+dnl Check for the Ocaml library dir
+AC_MSG_CHECKING("for the ocaml library dir")
+OCAML_ROOT=`ocamlc -v | grep "^Standard" | sed 's/^.*: *//'`
+AC_MSG_RESULT($OCAML_ROOT)
-dnl Only for HELM XML configuration
-
-AC_MSG_CHECKING("for the library path")
-RES=""
-AC_CACHE_VAL(helm_cv_HELM_LIBRARY_DIR,
- echo "Where should I put the downloaded library? Note: the \"library\" subdirectory and all the files and subdirectories recursively in it should be world writeable"
- read helm_cv_HELM_LIBRARY_DIR
- RES="Asked"
+dnl Check for mlminidom
+AC_CHECK_FILE($OCAML_ROOT/mlminidom/minidom.mli,
+ RES="yes"
+ MLMINIDOM_LIB_DIR=$OCAML_ROOT/mlminidom,
+ RES="no"
)
-HELM_LIBRARY_DIR=$helm_cv_HELM_LIBRARY_DIR
-if test "$RES" != "Asked" ; then
- HELM_LIBRARY_DIR=`eval "echo $HELM_LIBRARY_DIR"`
- AC_MSG_RESULT($HELM_LIBRARY_DIR)
-fi
-AC_CACHE_SAVE
+if test $RES = "no"; then
+ echo
+ echo "It seems that mlminidom isn't installed in the default directory"
+ echo "$OCAML_ROOT/mlminidom. Where can I find it?"
+ echo
+ AC_CACHE_VAL(mmlinterface_cv_MLMINIDOM_LIB_DIR,
+ read mmlinterface_cv_MLMINIDOM_LIB_DIR
+ )
+ MLMINIDOM_LIB_DIR=$mmlinterface_cv_MLMINIDOM_LIB_DIR
+fi
-CONFIGURATION_HELM_DIR=$HELM_LIBRARY_DIR/library
+dnl Check for lablgtk
+AC_CHECK_FILE($OCAML_ROOT/lablgtk/gtk.ml,
+ RES="yes"
+ LABLGTK_LIB_DIR=$OCAML_ROOT/lablgtk,
+ RES="no"
+)
-dnl CSC: ERROR: getters should download the DTDs
-CONFIGURATION_DTD_DIR=$HELM_SHARE_DIR/dtd
+if test $RES = "no"; then
+ echo
+ echo "It seems that lablgtk isn't installed in the default directory"
+ echo "$OCAML_ROOT/lablgtk. Where can I find it?"
+ echo
+ AC_CACHE_VAL(mmlinterface_cv_LABLGTK_LIB_DIR,
+ read mmlinterface_cv_LABLGTK_LIB_DIR
+ )
+ LABLGTK_LIB_DIR=$mmlinterface_cv_LABLGTK_LIB_DIR
+fi
-CONFIGURATION_SERVERS_FILE=$HELM_LIBRARY_DIR/servers.txt
-CONFIGURATION_URIS_DBM=$HELM_LIBRARY_DIR/urls_of_uris
+dnl Check for lablgtkmathview
+AC_CHECK_FILE($OCAML_ROOT/lablgtkmathview/gtkMathView.ml,
+ RES="yes"
+ LABLGTKMATHVIEW_LIB_DIR=$OCAML_ROOT/lablgtkmathview,
+ RES="no"
+)
-AC_MSG_CHECKING("for the tmp dir")
-RES=""
-if test -d "/tmp" ; then
- CONFIGURATION_TMPDIR=/tmp
-else
- AC_MSG_WARN(Could not find /tmp. What directory could I use instead?)
- read $CONFIGURATION_TMPDIR
- RES="Asked"
+if test $RES = "no"; then
+ echo
+ echo "It seems that lablgtkmathview isn't installed in the default directory"
+ echo "$OCAML_ROOT/lablgtkmathview. Where can I find it?"
+ echo
+ AC_CACHE_VAL(mmlinterface_cv_LABLGTKMATHVIEW_LIB_DIR,
+ read mmlinterface_cv_LABLGTKMATHVIEW_LIB_DIR
+ )
+ LABLGTKMATHVIEW_LIB_DIR=$mmlinterface_cv_LABLGTKMATHVIEW_LIB_DIR
fi
-if test "$RES" != "Asked" ; then
- AC_MSG_RESULT($CONFIGURATION_TMPDIR)
+
+dnl Check for HELM
+AC_CHECK_PROG(HAVE_HELM_CONFIG, helm-config, yes, no)
+if test $HAVE_HELM_CONFIG = "no"; then
+ AC_MSG_ERROR(Could not find helm-config)
fi
-AC_SUBST(HELM_LIB_DIR)
-AC_SUBST(HELM_ETC_DIR)
-AC_SUBST(HELM_LIBRARY_DIR)
-AC_SUBST(HELM_DICTIONARY_PATH)
-AC_SUBST(GTKMATHVIEW_DICTIONARY_PATH)
-AC_SUBST(HELM_FONT_CONFIGURATION_PATH)
-AC_SUBST(GTKMATHVIEW_FONT_CONFIGURATION_PATH)
-AC_SUBST(GTKMATHVIEW_T1_CONFIG_FILE)
-AC_SUBST(CONFIGURATION_HELM_DIR)
-AC_SUBST(CONFIGURATION_DTD_DIR)
-AC_SUBST(CONFIGURATION_SERVERS_FILE)
-AC_SUBST(CONFIGURATION_URIS_DBM)
-AC_SUBST(CONFIGURATION_TMPDIR)
-
-AC_OUTPUT(
-[Makefile
- lib/configuration.pl
- etc/helm-math-engine-configuration.xml
- etc/configuration.xml
-])
+HELM_DEFAULT_CONFIGURATION_DIR=`helm-config --etc-dir`
+
+AC_SUBST(PACKAGE)
+AC_SUBST(VERSION)
+AC_SUBST(OCAML_ROOT)
+AC_SUBST(MLMINIDOM_LIB_DIR)
+AC_SUBST(LABLGTK_LIB_DIR)
+AC_SUBST(LABLGTKMATHVIEW_LIB_DIR)
+AC_SUBST(BIN_DIR)
+AC_SUBST(HELM_DEFAULT_CONFIGURATION_DIR)
+AC_SUBST(PERL_BINARY)
+
+AC_OUTPUT([
+ Makefile
+ configuration.ml
+ helm_wget
+ helm_gtk_interface.spec
+],
+ chmod +x helm_wget
+)