2 dnl Copyright 2001-2009 Adrian Thurston <thurston@complang.org>
5 dnl This file is part of Ragel.
7 dnl Ragel is free software; you can redistribute it and/or modify
8 dnl it under the terms of the GNU General Public License as published by
9 dnl the Free Software Foundation; either version 2 of the License, or
10 dnl (at your option) any later version.
12 dnl Ragel is distributed in the hope that it will be useful,
13 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
14 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 dnl GNU General Public License for more details.
17 dnl You should have received a copy of the GNU General Public License
18 dnl along with Ragel; if not, write to the Free Software
19 dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 AC_CONFIG_HEADER(ragel/config.h)
28 dnl Choose defaults for the build_parsers and build_manual vars. If the dist
29 dnl file is present in the root then default to no, otherwise go for it.
30 AC_CHECK_FILES( $srcdir/DIST,
32 [ build_parsers=yes; build_manual=yes; ] )
34 dnl Set to true if the build system should generate parsers from ragel and kelbt
35 dnl sources. Set to false if generated files are included and not to be built
37 AM_CONDITIONAL(BUILD_PARSERS, [test "x$build_parsers" = "xyes"])
39 dnl Set to true if the manual should be built.
40 AM_CONDITIONAL(BUILD_MANUAL, [test "x$build_manual" = "xyes"])
42 dnl Checks for programs.
51 dnl Set test on c++ compiler.
54 dnl Check for definition of MAKE.
57 # Checks to carry out if we are building parsers.
58 if test "x$build_parsers" = "xyes"; then
60 AC_CHECK_PROG(RAGEL, ragel, ragel)
61 if test -z "$RAGEL"; then
63 echo "error: ragel is required to build the parsers"
68 AC_CHECK_PROG(KELBT, kelbt, kelbt)
69 if test -z "$KELBT"; then
71 echo "error: kelbt is required to build the parsers"
78 # Checks to carry out if we are building the manual.
79 if test "x$build_manual" = "xyes"; then
81 AC_CHECK_PROG(FIG2DEV, fig2dev, fig2dev)
82 if test -z "$FIG2DEV"; then
84 echo "error: fig2dev is required to build the manual"
89 AC_CHECK_PROG(PDFLATEX, pdflatex, pdflatex)
90 if test -z "$PDFLATEX"; then
92 echo "error: pdflatex is required to build the manual"
99 dnl Check for the D compiler
100 AC_CHECK_PROG(GDC, gdc, gdc)
102 dnl Check for the Objective-C compiler
103 AC_MSG_CHECKING([for the Objective-C compiler])
104 cat > conftest.m <<EOF
105 int main() { return 0; }
108 if gcc -x objective-c conftest.m -o conftest.bin 2>/dev/null; then
109 GOBJC="gcc -x objective-c"
116 dnl Check for the Java compiler.
117 AC_CHECK_PROG(JAVAC, javac, javac)
120 AC_CHECK_PROG(TXL, txl, txl)
123 AC_CHECK_PROG(RUBY, ruby, ruby)
125 dnl Check for the C# compiler.
126 AC_CHECK_PROG(GMCS, gmcs, gmcs)
128 dnl write output files
131 Makefile ragel/Makefile aapl/Makefile
132 doc/Makefile doc/ragel.1
134 test/Makefile test/runtests
137 [chmod +x test/runtests]
140 echo "configuration of ragel complete"