added experimental support for demo playback (together with an example demo...)
[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/supertux.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 dnl Checks for header files.
43 AC_HEADER_DIRENT
44 AC_HEADER_STDC
45 AC_CHECK_HEADERS(unistd.h)
46
47 dnl Checks for typedefs, structures, and compiler characteristics.
48 AC_C_CONST
49
50 dnl ===========================================================================
51 dnl Give advanced users some options to play with
52
53 VARIANT=optimize
54 AC_MSG_CHECKING(for gprof mode)
55 AC_ARG_ENABLE(gprof,
56               AC_HELP_STRING([--enable-gprof], [enable GNU profiling support]),
57               [enable_gprof=$enableval], [enable_gprof=no])
58 if test "$enable_gprof" = "yes"; then
59     #CXXFLAGS="$CXXFLAGS -pg"
60     VARIANT=profile
61     AC_MSG_RESULT([enabled])
62 else
63     AC_MSG_RESULT([disabled])
64 fi
65
66 AC_MSG_CHECKING(for debug mode)
67 AC_ARG_ENABLE(debug,
68               AC_HELP_STRING([--enable-debug], [enable debugging mode]),
69               [enable_debug=$enableval], [enable_debug=no])
70 if test "$enable_debug" = "yes"; then
71     AC_DEFINE([DEBUG], 1, [define to compile in debug checks])
72     VARIANT=debug
73     AC_MSG_RESULT([enabled])
74 else
75     VARIANT=optimize
76     AC_MSG_RESULT([disabled])
77 fi
78 AC_SUBST([VARIANT])
79
80 AC_MSG_CHECKING(wether OpenGL should be used)
81 AC_ARG_ENABLE(opengl,
82               AC_HELP_STRING([--disable-opengl], [disable OpenGL support]),
83               [enable_opengl=$enableval], enable_opengl=yes)
84 if test "$enable_opengl" = "yes"; then
85     AC_MSG_RESULT([yes])
86 else
87     AC_MSG_RESULT([no])
88 fi
89
90 iconv_found=no
91 AC_MSG_CHECKING([for iconv])
92 AC_TRY_LINK([#include <iconv.h>], [iconv_open(0, 0);], [iconv_found="yes"])
93 AS_IF([test "$iconv_found" = no],
94     LIBS="$LIBS -liconv"
95     AC_TRY_LINK([#include <iconv.h>], [iconv_open(0, 0);], [iconv_found="yes"]))
96 AS_IF([test "$iconv_found" = no],
97     AC_MSG_ERROR([Couldn't find iconv library]),
98     AC_MSG_RESULT([found]))
99
100 dnl ===========================================================================
101 dnl Check for SDL
102 SDL_VERSION=1.2.4
103 AM_PATH_SDL($SDL_VERSION,
104             :,
105             AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!]))
106
107 NP_FINDLIB([SDLMIXER], [SDL_mixer], [SDL_mixer >= 1.2],
108         NP_LANG_PROGRAM([#include <SDL_mixer.h>
109 #if MIX_MAJOR_VERSION < 1
110 # error SDLMix too old
111 #else
112 # if MIX_MAJOR_VERSION == 1
113 #  if MIX_MINOR_VERSION < 2
114 #   error SDLMix too old
115 #  endif
116 # endif
117 #endif], [Mix_OpenAudio(0, 0, 0, 0);]),
118         [], [-lSDL_mixer],
119         [],
120         [AC_MSG_ERROR([Please install SDLMixer >=1.2.2])],
121         [$SDL_CFLAGS], [$SDL_LIBS])
122
123 NP_FINDLIB([SDLIMAGE], [SDL_image], [SDL_image >= 1.2],
124         NP_LANG_PROGRAM([#include <SDL_image.h>], [IMG_Load("");]),
125         [], [-lSDL_image],
126         [],
127         [AC_MSG_ERROR([Please install SDLImage >= 1.2.1])],
128         [$SDL_CFLAGS], [$SDL_LIBS])
129
130 if test "$enable_opengl" = "yes"; then
131   AX_CHECK_GL
132 fi
133 if test "$no_gl" = "yes" -o "$enable_opengl" = "no"; then
134   GL_AVAILABLE="no"
135   AC_DEFINE([NOOPENGL],, [Define if opengl should not be used])
136 else
137   GL_AVAILABLE="yes"
138 fi
139 AC_SUBST([GL_AVAILABLE])
140
141 dnl Checks for library functions.
142 AC_CHECK_FUNCS(mkdir strdup strstr)
143
144 AC_INIT_JAM
145 AC_CONFIG_FILES([Jamconfig])
146
147 AC_OUTPUT
148
149 echo ""
150 echo "Features:"
151 echo "========="
152 echo " Profile Mode:   $enable_gprof"
153 echo " Debug Mode:     $enable_debug"
154 echo " OpenGL Support: $enable_opengl"
155 echo ""
156 echo ""
157 echo "       NOTE: This project uses jam (and not make) as build tool"
158 echo ""
159