X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=configure.ac;h=54ccbcf1a9ed1d87bca9b4bb916d3b330c960be9;hb=77d00a6f464cc87c6b50cf1f3b38064a7ae9aead;hp=659a864d201ff8df0ecbee2f17bdac4b6fb20bda;hpb=686e360c61c1623969747641ab2e7d4bd8afa965;p=supertux.git diff --git a/configure.ac b/configure.ac index 659a864d2..54ccbcf1a 100644 --- a/configure.ac +++ b/configure.ac @@ -1,23 +1,56 @@ dnl =========================================================================== dnl "configure.in" dnl -dnl author: Duong-Khang NGUYEN -dnl neoneurone@users.sf.net +dnl current contact: +dnl SuperTux development team +dnl +dnl original author: +dnl Duong-Khang NGUYEN +dnl neoneurone@users.sf.net dnl =========================================================================== dnl Process this file with autoconf to produce a configure script. - -AC_INIT(SuperTux, 0.0.7-cvs) -AC_CONFIG_SRCDIR([src/supertux.cpp]) +AC_PREREQ([2.54]) +AC_INIT(supertux, 0.2-svn) +AC_CONFIG_SRCDIR([src/main.cpp]) +AC_CONFIG_AUX_DIR([mk/autoconf]) AC_CANONICAL_TARGET -AM_INIT_AUTOMAKE -SDL_VERSION=1.2.4 +AC_CONFIG_HEADERS(config.h) + +# we don't want the stupid autoconf default -g -O2 +test ".$CXXFLAGS" = "." && CXXFLAGS=" " + +CXXFLAGS="$CXXFLAGS -ffast-math" AC_PROG_CC AC_PROG_CXX AC_PROG_INSTALL -AC_LANG(C++) +AC_PATH_PROG(AR, ar) +if test "$AR" = "" ; then + AC_MSG_ERROR([Couldn't find ar]) +fi +AR="$AR ru" + +AC_C_BIGENDIAN + +AC_CHECK_PROGS(XGETTEXT, [xgettext xgettext.exe]) +if test -n "$XGETTEXT" ; then + AC_MSG_CHECKING([if xgettext supports lisp]) + if echo '(gettext "test")' | xgettext -o - -L Lisp - >& /dev/null; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + AC_MSG_WARN([It seems your gettext installation is too old, try updating it]) + XGETTEXT="" + fi +fi + +AC_PROG_LEX +LEX_LIBS=$LEXLIB +AC_SUBST([LEX_LIBS]) +AC_CHECK_PROGS([BISON], [bison bison.exe]) +AC_SUBST([BISON]) dnl Checks for header files. AC_HEADER_DIRENT @@ -26,101 +59,100 @@ AC_CHECK_HEADERS(unistd.h) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST +AC_C_BIGENDIAN +AC_CHECK_SIZEOF([void *]) +AH_BOTTOM([ +#if SIZEOF_VOID_P == 8 +#define _SQ64 +#endif +]) dnl =========================================================================== dnl Give advanced users some options to play with -AC_MSG_CHECKING(for gprof mode) +VARIANT=optimize +AC_MSG_CHECKING([for build variant]) + AC_ARG_ENABLE(gprof, - AC_HELP_STRING([--enable-gprof], [enable GNU profiling support]),, enable_gprof="no") -if test "x${enable_gprof}" != "xno"; then - CXXFLAGS="$CXXFLAGS -pg" - AC_MSG_RESULT([enabled]) -else - AC_MSG_RESULT([disabled]) + AC_HELP_STRING([--enable-gprof], [enable GNU profiling support]), + [enable_gprof=$enableval], [enable_gprof=no]) +if test "$enable_gprof" = "yes"; then + VARIANT=profile fi -AC_MSG_CHECKING(for debug mode) AC_ARG_ENABLE(debug, - AC_HELP_STRING([--enable-debug], [enable debugging mode]),, enable_debug="yes") -if test "x${enable_debug}" != "xno"; then - CXXFLAGS="$CXXFLAGS -DDEBUG" - AC_MSG_RESULT([enabled]) + AC_HELP_STRING([--enable-debug], [enable debugging mode]), + [enable_debug=$enableval], [enable_debug=no]) +if test "$enable_debug" = "yes"; then + AC_DEFINE([DEBUG], 1, [define to compile in debug checks]) + VARIANT=debug else - AC_MSG_RESULT([disabled]) + VARIANT=optimize fi - -AC_MSG_CHECKING(weather OpenGL should be used) -AC_ARG_ENABLE(opengl, - AC_HELP_STRING([--disable-opengl], [disable OpenGL support]),, enable_opengl="yes") -if test "x${enable_opengl}" != "xno"; then - CXXFLAGS="$CXXFLAGS -D__OPENGL" - AC_MSG_RESULT([yes]) -else - CXXFLAGS="$CXXFLAGS -DNOOPENGL" - AC_MSG_RESULT([no]) +AC_SUBST([VARIANT]) +AC_MSG_RESULT([$VARIANT]) + +AC_ARG_ENABLE(sqdbg, + AC_HELP_STRING([--enable-sqdbg], [enable squirrel remote debugger]), + [enable_sqdbg=$enableval], [enable_sqdbg=no]) +if test "$enable_sqdbg" = "yes"; then + AC_DEFINE([ENABLE_SQDBG], 1, [define if sqdbg should be enabled]) + AC_SUBST([enable_sqdbg]) fi -AC_MSG_CHECKING(weather Sound should be supported) -AC_ARG_ENABLE(sound, - AC_HELP_STRING([--disable-sound], [disable sound support]),, enable_sound="yes") -if test "x${enable_sound}" != "xno"; then - CXXFLAGS="$CXXFLAGS -D__SOUND" - AC_MSG_RESULT([yes]) -else - CXXFLAGS="$CXXFLAGS -DNOSOUND" - AC_MSG_RESULT([no]) -fi +AM_ICONV +AC_SUBST([ICONV_LIBS], [$LIBICONV]) dnl =========================================================================== dnl Check for SDL -AC_LANG_PUSH(C) +SDL_VERSION=1.2.4 AM_PATH_SDL($SDL_VERSION, :, AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!])) -CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" -LDFLAGS="$LDFLAGS $SDL_LIBS" - -dnl Checks for additional libraries. -if test "x${enable_sound}" != "xno"; then - AC_CHECK_LIB(SDL_mixer, SDL_OpenAudio,, - [CXXFLAGS="$CXXFLAGS -DNOSOUND" - enable_sound="no"]) -fi -AC_CHECK_LIB(SDL_image, IMG_Load, ,AC_MSG_ERROR(SDL_image library required)) - -if test "x${enable_opengl}" != "xno"; then - # grumbel: xlib path is needed on my system to get OpenGL right, - # else I end up with a black screen, might be a debian issue or a - # local issue on my system, not sure - AC_PATH_XTRA - CXXFLAGS="$CXXFLAGS $X_CFLAGS" - LDFLAGS="$LDFLAGS $X_LIBS" - - AC_CHECK_LIB(GL, glBegin,, - [CXXFLAGS="$CXXFLAGS -DNOOPENGL" - enable_opengl="no"]) +XIPH_PATH_VORBIS(, [AC_MSG_ERROR([Please install libvorbis])]) +XIPH_PATH_OGG(, [AC_MSG_ERROR([Please install libogg])]) + +NP_FINDLIB([SDLIMAGE], [SDL_image], [SDL_image >= 1.2], + NP_LANG_PROGRAM([#include ], [IMG_Load("");]), + [], [-lSDL_image], + [], + [AC_MSG_ERROR([Please install SDLImage >= 1.2.1])], + [$SDL_CFLAGS], [$SDL_LIBS]) + +NP_FINDLIB([PHYSFS], [physfs], [physfs >= 1.0.0], + NP_LANG_PROGRAM([ +#include +#include +#if PHYSFS_VER_MAJOR < 1 +# error PHYSFS is too old +#endif]), + [], [-lphysfs], + [], + [AC_MSG_ERROR([Please install physfs >= 1.0])]) + +NP_FINDLIB([OPENAL], [OpenAL], [OpenAL], + NP_LANG_PROGRAM([#include ], + [alcOpenDevice(0);]), + [], [-lopenal], + [], + [AC_MSG_ERROR([Please intall OpenAL])], + [], []) + +AX_CHECK_GL +if test "$no_gl" = "yes"; then + AC_MSG_ERROR([Please install opengl libraries and headers]) fi -AC_LANG_POP() - -AC_CHECK_LIB(z, gzopen,, AC_MSG_ERROR([*** zlib is missing])) - -# FIXME: Evil -CXXFLAGS="$CXXFLAGS -DDATA_PREFIX='\"$datadir/supertux/\"' -DLINUX" dnl Checks for library functions. AC_CHECK_FUNCS(mkdir strdup strstr) -AC_OUTPUT(Makefile src/Makefile data/Makefile) +AC_INIT_JAM +AC_CONFIG_FILES([Jamconfig]) + +AC_OUTPUT echo "" -echo "Features:" -echo "=========" -echo " Profile Mode: $enable_gprof" -echo " Debug Mode: $enable_debug" -echo " OpenGL Support: $enable_opengl" -echo " Sound Support: $enable_sound" +echo " NOTE: This project uses jam (and not make) as build tool" echo "" -# EOF #