3 [Kim Nguyễn <kn@lri.fr>],
8 AC_ARG_WITH([ocamlfind],
9 AS_HELP_STRING([--with-ocamlfind=PATH], [location of the ocamlfind binary]),
10 [OCAMLFIND="$withval"])
11 AC_MSG_CHECKING([for ocamlfind ($OCAMLFIND)])
12 $OCAMLFIND list >/dev/null 2>&1
14 AC_MSG_RESULT([found])
15 OCAMLC="$OCAMLFIND ocamlc"
16 OCAMLOPT="$OCAMLFIND ocamlopt"
17 OCAMLDEP="$OCAMLFIND ocamldep"
19 AC_MSG_RESULT([not found])
20 AC_MSG_ERROR([Cannot find ocamlfind.])
26 AC_MSG_CHECKING([for $OCAMLC])
27 $OCAMLC >/dev/null 2>&1
31 AC_MSG_RESULT([failed])
32 AC_MSG_ERROR(Cannot find ocamlc.)
37 AC_MSG_CHECKING([for $OCAMLOPT])
38 $OCAMLOPT >/dev/null 2>&1
42 AC_MSG_RESULT([failed])
43 AC_MSG_ERROR(Cannot find ocamlopt.)
48 AC_MSG_CHECKING([for $OCAMLDEP])
49 $OCAMLDEP >/dev/null 2>&1
53 AC_MSG_RESULT([failed])
54 AC_MSG_ERROR(Cannot find ocamldep.)
59 OCAMLVERSION=$($OCAMLC -version)
60 AC_MSG_CHECKING([ocaml version])
61 AC_MSG_RESULT([$OCAMLVERSION])
63 case "$OCAMLVERSION" in
65 *) AC_MSG_ERROR([OCaml $OCAMLVERSION is too old])
69 AC_SUBST(OCAMLVERSION)
73 AC_ARG_WITH([ocamlyacc],
74 AS_HELP_STRING([--with-ocamlyacc=PATH], [location of the ocamlyacc binary]),
75 [OCAMLYACC="$withval"])
76 AC_MSG_CHECKING([for ocamlyacc ($OCAMLYACC)])
77 OCAMLYACC_VERSION=$($OCAMLYACC -version 2>/dev/null || echo foo)
78 case "$OCAMLYACC_VERSION" in
83 AC_MSG_RESULT([failed])
84 AC_MSG_ERROR([Cannot find ocamlyacc])
87 AC_MSG_RESULT([failed])
88 AC_MSG_ERROR([Bad ocamlyacc version])
97 AS_HELP_STRING([--with-camlp4=PATH], [location of the camlp4 binary]),
99 AC_MSG_CHECKING([for camlp4 ($CAMLP4)])
100 CAMLP4_VERSION=$($CAMLP4 -version 2>/dev/null || echo foo)
101 case "$CAMLP4_VERSION" in
106 AC_MSG_RESULT([failed])
107 AC_MSG_ERROR([Cannot find camlp4])
110 AC_MSG_RESULT([failed])
111 AC_MSG_ERROR([Bad camlp4 version])
117 OCAMLBUILD=ocamlbuild
118 AC_ARG_WITH([ocamlbuild],
119 AS_HELP_STRING([--with-ocamlbuild=PATH], [location of the ocamlbuild binary]),
121 AC_MSG_CHECKING([for ocamlbuild ($OCAMLBUILD)])
122 OCAMLBUILD_VERSION=$($OCAMLBUILD -version 2>/dev/null || echo foo)
123 case "$CAMLP4_VERSION" in
128 AC_MSG_RESULT([failed])
129 AC_MSG_ERROR([Cannot find ocamlbuild])
132 AC_MSG_RESULT([failed])
133 AC_MSG_ERROR([Bad ocamlbuild version])
136 AC_SUBST([OCAMLBUILD])
140 AC_MSG_CHECKING([platform])
141 OCAML_PLATFORM=$(echo 'print_endline Sys.os_type;;' | ocaml -noprompt | grep '^@<:@A-Z@:>@')
142 AC_MSG_RESULT([$OCAML_PLATFORM])
143 if test "$OCAML_PLATFORM" = "Win32"; then
148 AC_SUBST(OCAML_PLATFORM)
152 AC_MSG_CHECKING([for ulex])
153 ulex_path=`$OCAMLFIND query ulex 2>/dev/null`
154 if test "$ulex_path" ; then
155 AC_MSG_RESULT([found])
157 AC_MSG_RESULT([not found])
158 AC_MSG_ERROR([Cannot find ulex.])
161 AC_MSG_CHECKING([for expat])
162 expat_path=`$OCAMLFIND query expat 2>/dev/null`
163 if test "$expat_path" ; then
164 AC_MSG_RESULT([found])
166 AC_MSG_RESULT([not found])
167 AC_MSG_ERROR([Cannot find expat.])
172 CAMLP4FLAGS=$CAMLP4FLAGS
173 OCAMLBUILDFLAGS=$OCAMLBUILDFLAGS
175 AC_ARG_ENABLE([debug],
176 [ --enable-debug build in debug mode],
180 if test "x$DEBUG" = "xyes"; then
181 OCAMLBUILDFLAGS="$OCAMLBUILDFLAGS -tag debug"
182 CAMLP4FLAGS="$CAMLP4FLAGS ppopt\(-D\) ppopt\(DEBUG\)"
186 AC_ARG_ENABLE([profile],
187 [ --enable-profile compile in profiling code],
188 [PROFILE=$enableval],
191 if test "x$PROFILE" = "xyes"; then
192 OCAMLBUILDFLAGS="$OCAMLBUILDFLAGS -tag profile"
193 OCAMLC="$OCAMLFIND ocamlcp"
197 AC_ARG_ENABLE([trace],
198 [ --enable-trace add tracing code],
202 if test "x$TRACE" = "xyes"; then
203 CAMLP4FLAGS="$CAMLP4FLAGS ppopt\(-D\) ppopt\(HTMLTRACE\)"
208 AC_ARG_ENABLE([inline],
209 [ --enable-inline set OCaml inlining level (default=100)],
214 AC_ARG_ENABLE([unsafe],
215 [ --enable-unsafe use unsafe array and string accesses],
219 if test "x$UNSAFE" = "xyes"; then
220 CAMLP4FLAGS="$CAMLP4FLAGS ppopt\(-unsafe\)"
226 AC_SUBST(OCAMLBUILDFLAGS)
227 AC_SUBST(CAMLP4FLAGS)
228 AC_CONFIG_FILES(Makefile)