Checking in miniswig: It's a flex/bison based parser that is able to parse
[supertux.git] / configure.ac
1 dnl ===========================================================================
2 dnl    "configure.in"
3 dnl
4 dnl current contact:
5 dnl          SuperTux development team
6 dnl
7 dnl original author:
8 dnl          Duong-Khang NGUYEN
9 dnl          neoneurone@users.sf.net
10 dnl ===========================================================================
11
12 dnl Process this file with autoconf to produce a configure script.
13 AC_PREREQ([2.54])
14 AC_INIT(supertux, 0.2-cvs)
15 AC_CONFIG_SRCDIR([src/main.cpp])
16 AC_CONFIG_AUX_DIR([mk/autoconf])
17 AC_CANONICAL_TARGET
18
19 AC_CONFIG_HEADERS(config.h)
20
21 # we don't want the stupid autoconf default -g -O2
22 test ".$CXXFLAGS" = "." && CXXFLAGS=" "
23
24 CXXFLAGS="$CXXFLAGS -ffast-math"
25
26 AC_PROG_CC
27 AC_PROG_CXX
28 AC_PROG_INSTALL
29
30 AC_CHECK_PROGS(XGETTEXT, xgettext)
31 if test -n "$XGETTEXT" ; then
32     AC_MSG_CHECKING([if xgettext supports lisp])
33     if echo '(gettext "test")' | xgettext -o - -L Lisp - >& /dev/null; then
34         AC_MSG_RESULT(yes)
35     else
36         AC_MSG_RESULT(no)
37         AC_MSG_WARN([It seems your gettext installation is too old, try updating it])
38         XGETTEXT=""
39     fi
40 fi
41
42 AC_PROG_LEX
43 LEX_LIBS=$LEXLIB
44 AC_SUBST([LEX_LIBS])
45 AC_CHECK_PROGS([BISON], bison)
46 AC_SUBST([BISON])
47
48 dnl Checks for header files.
49 AC_HEADER_DIRENT
50 AC_HEADER_STDC
51 AC_CHECK_HEADERS(unistd.h)
52
53 dnl Checks for typedefs, structures, and compiler characteristics.
54 AC_C_CONST
55
56 dnl ===========================================================================
57 dnl Give advanced users some options to play with
58
59 VARIANT=optimize
60 AC_MSG_CHECKING(for gprof mode)
61 AC_ARG_ENABLE(gprof,
62               AC_HELP_STRING([--enable-gprof], [enable GNU profiling support]),
63               [enable_gprof=$enableval], [enable_gprof=no])
64 if test "$enable_gprof" = "yes"; then
65     #CXXFLAGS="$CXXFLAGS -pg"
66     VARIANT=profile
67     AC_MSG_RESULT([enabled])
68 else
69     AC_MSG_RESULT([disabled])
70 fi
71
72 AC_MSG_CHECKING(for debug mode)
73 AC_ARG_ENABLE(debug,
74               AC_HELP_STRING([--enable-debug], [enable debugging mode]),
75               [enable_debug=$enableval], [enable_debug=no])
76 if test "$enable_debug" = "yes"; then
77     AC_DEFINE([DEBUG], 1, [define to compile in debug checks])
78     VARIANT=debug
79     AC_MSG_RESULT([enabled])
80 else
81     VARIANT=optimize
82     AC_MSG_RESULT([disabled])
83 fi
84 AC_SUBST([VARIANT])
85
86 AC_MSG_CHECKING(wether OpenGL should be used)
87 AC_ARG_ENABLE(opengl,
88               AC_HELP_STRING([--disable-opengl], [disable OpenGL support]),
89               [enable_opengl=$enableval], enable_opengl=yes)
90 if test "$enable_opengl" = "yes"; then
91     AC_MSG_RESULT([yes])
92 else
93     AC_MSG_RESULT([no])
94 fi
95
96 iconv_found=no
97 AC_MSG_CHECKING([for iconv])
98 AC_TRY_LINK([#include <iconv.h>], [iconv_open(0, 0);], [iconv_found="yes"])
99 AS_IF([test "$iconv_found" = no],
100     LIBS="$LIBS -liconv"
101     AC_TRY_LINK([#include <iconv.h>], [iconv_open(0, 0);], [iconv_found="yes"]))
102 AS_IF([test "$iconv_found" = no],
103     AC_MSG_ERROR([Couldn't find iconv library]),
104     AC_MSG_RESULT([found]))
105
106 dnl ===========================================================================
107 dnl Check for SDL
108 SDL_VERSION=1.2.4
109 AM_PATH_SDL($SDL_VERSION,
110             :,
111             AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!]))
112
113 NP_FINDLIB([SDLMIXER], [SDL_mixer], [SDL_mixer >= 1.2],
114         NP_LANG_PROGRAM([#include <SDL_mixer.h>
115 #if MIX_MAJOR_VERSION < 1
116 # error SDLMix too old
117 #else
118 # if MIX_MAJOR_VERSION == 1
119 #  if MIX_MINOR_VERSION < 2
120 #   error SDLMix too old
121 #  endif
122 # endif
123 #endif], [Mix_OpenAudio(0, 0, 0, 0);]),
124         [], [-lSDL_mixer],
125         [],
126         [AC_MSG_ERROR([Please install SDLMixer >=1.2.2])],
127         [$SDL_CFLAGS], [$SDL_LIBS])
128
129 NP_FINDLIB([SDLIMAGE], [SDL_image], [SDL_image >= 1.2],
130         NP_LANG_PROGRAM([#include <SDL_image.h>], [IMG_Load("");]),
131         [], [-lSDL_image],
132         [],
133         [AC_MSG_ERROR([Please install SDLImage >= 1.2.1])],
134         [$SDL_CFLAGS], [$SDL_LIBS])
135
136 if test "$enable_opengl" = "yes"; then
137   AX_CHECK_GL
138 fi
139 if test "$no_gl" = "yes" -o "$enable_opengl" = "no"; then
140   GL_AVAILABLE="no"
141   AC_DEFINE([NOOPENGL],, [Define if opengl should not be used])
142 else
143   GL_AVAILABLE="yes"
144 fi
145 AC_SUBST([GL_AVAILABLE])
146
147 dnl Checks for library functions.
148 AC_CHECK_FUNCS(mkdir strdup strstr)
149
150 AC_INIT_JAM
151 AC_CONFIG_FILES([Jamconfig])
152
153 AC_OUTPUT
154
155 echo ""
156 echo "Features:"
157 echo "========="
158 echo " Profile Mode:   $enable_gprof"
159 echo " Debug Mode:     $enable_debug"
160 echo " OpenGL Support: $enable_opengl"
161 echo ""
162 echo ""
163 echo "       NOTE: This project uses jam (and not make) as build tool"
164 echo ""
165