Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/configure.ac @ 3756

Last change on this file since 3756 was 3592, checked in by bensch, 19 years ago

orxonox/trunk: debug.h: now ability to choose between modular and not modular in configure through —disable-modular-debug. Also made it more runtime-proove. so now you have to set the mode in orxonox.cc too.

File size: 14.8 KB
RevLine 
[3424]1##########################################################################
2#   orxonox - the future of 3D-vertical-scrollers                        #
3#                                                                        #
4#   Copyright (C) 2004 orx                                               #
5#                                                                        #
6#   This program is free software; you can redistribute it and/or modify #
7#   it under the terms of the GNU General Public License as published by #
8#   the Free Software Foundation; either version 2, or (at your option)  #
9#   any later version.                                                   #
10#                                                                        #
11#   ### File Specific:                                                   #
12#   main-programmer: Benjamin Grauer                                     #
13#   co-programmer: ...                                                   #
14#                                                                        #
15#   This is the main configuration File of autoconf.                     #
16#   Please edit this file only, if you exactly know what you are doing.  #
17#   It is quite fragile, and compiling orxonox on different Platforms    #
18#   is only guarantied, if build with the right config.                  #
19##########################################################################
[1945]20
[3424]21#########################
22## AUTOCONF INIT PHASE ##
23#########################
[3218]24AC_PREREQ(2.56)
[3569]25AC_INIT(orxonox, 0.2.2-pre-alpha, [orxonox-dev at mail.datacore.ch])
[2980]26
[3424]27## Detect the canonical host and target build environment.
[2980]28AC_CANONICAL_BUILD
29AC_CANONICAL_HOST
30AC_CANONICAL_TARGET
31
[1959]32AM_INIT_AUTOMAKE
[2618]33
[1951]34AC_CONFIG_SRCDIR([.])
[1945]35AC_CONFIG_HEADER([config.h])
36
[3424]37#########################
38## Checks for programs ##
39#########################
[1945]40AC_PROG_CXX
[2925]41AC_HEADER_STDC
[2701]42
[3424]43##################################
44## CHECKING  OPTIONAL ARGUMENTS ##
45##################################
46
47#-----------------#
48# DEBUG-statement #
49#-----------------#
[3173]50DEBUG=no
51AC_MSG_CHECKING([if DEBUG-mode should be enabled])
[3181]52AC_ARG_ENABLE([debug],
[3205]53        AC_HELP_STRING( [--enable-debug], [compiles in debug mode. Lots of debug info about the game.]),
54         DEBUG=$enableval)
55
[3424]56if test x$DEBUG = xno; then
[3205]57        echo "no"
[3592]58        echo " -> Setting debuglevel to 4. (orxonox is still in Development. It really is needed."
59        DEBUG=4
[3424]60elif test x$DEBUG = xyes; then
[3205]61        echo "yes"
[3424]62        echo " -> Setting debuglevel to 4. HARD DEBUG MODE!!."
63        DEBUG=4
[3205]64else       
[3424]65        echo "yes: setting debuglevel to to $DEBUG"
[3173]66fi
[3205]67        AC_DEFINE_UNQUOTED(DEBUG, $DEBUG, [in which debug mode we are])
68
[3173]69AC_SUBST(DEBUG)
70
[3592]71#---------------#
72# Modular Debug #
73#---------------#
74MODULAR_DEBUG=yes
75AC_MSG_CHECKING([if Modular-DEBUG-mode should be ebabled])
76AC_ARG_ENABLE([modular-debug],
77        AC_HELP_STRING( [--disable-modular-debug], [compiles in modular-debug mode, that logs differently on the many modules of orxonox.]),
78         MODULAR_DEBUG=$enableval)
79
80if test x$MODULAR_DEBUG = xno; then
81        echo "no"
82elif test x$MODULAR_DEBUG = xyes; then
83        echo "yes"
84        AC_DEFINE_UNQUOTED(MODULAR_DEBUG, 1, [if Modular-DUBUG mode is enabled])
85fi
86
[3424]87#--------------#
88# GTK-disabled #
89#--------------#
[3100]90AC_MSG_CHECKING([if gtk should be enabled])
[3181]91AC_ARG_WITH([gtk],
92        AC_HELP_STRING( [--without-gtk],
[3205]93        [Prevents GTK from being loaded]), [def_gtk=no], [def_gtk=yes])
[3424]94if test x$def_gtk = xyes; then
[3100]95  echo "yes"
96fi
[3424]97if test x$def_gtk = xno; then
[3100]98  echo "no"
99fi
[3423]100
[3424]101#------------------#
102# gThread-disabled #
103#------------------#
[3423]104AC_MSG_CHECKING([if gThread should be enabled])
105AC_ARG_WITH([gthread],
[3424]106        AC_HELP_STRING( [--without-gthread],
[3423]107        [Prevents gThread from being loaded]), [def_gthread=no], [def_gthread=yes])
[3424]108if test x$def_gthread = xyes; then
[3423]109  echo "yes"
110fi
[3424]111if test x$def_gthread = xno; then
[3423]112  echo "no"
113fi
114
[3424]115#------------------#
116# pthread-disabled #
117#------------------#
[3423]118AC_MSG_CHECKING([if pthread should be enabled])
119AC_ARG_WITH([pthread],
120        AC_HELP_STRING( [--without-pthread],
121        [Prevents pthread from being loaded]), [def_pthread=no], [def_pthread=yes])
[3424]122if test x$def_pthread = xyes; then
[3423]123  echo "yes"
124fi
[3424]125if test x$def_pthread = xno; then
[3423]126  echo "no"
127fi
128
[3424]129#------------------#
130# libCurl-disabled #
131#------------------#
[3423]132AC_MSG_CHECKING([if libcURL should be enabled])
133AC_ARG_WITH([curl],
134        AC_HELP_STRING( [--without-curl],
135        [Prevents libcURL from being loaded]), [def_curl=no], [def_curl=yes])
[3424]136if test x$def_curl = xyes; then
[3423]137  echo "yes"
138fi
[3424]139if test x$def_curl = xno; then
[3423]140  echo "no"
141fi
142
[3424]143#-------------------#
144# SDL_image-disable #
145#-------------------#
[3140]146def_sdl_image=yes
147AC_MSG_CHECKING([if SDL_image should be enabled])
[3181]148AC_ARG_WITH([sdl_image],
149        AC_HELP_STRING( [--without-sdl-image],
[3140]150        [Prevents SDL_image from being loaded]), [def_sdl_image=no])
[3424]151if test x$def_sdl_image = xyes; then
[3140]152  echo "yes"
153fi
[3424]154if test x$def_sdl_image = xno; then
[3140]155  echo "no"
156fi
[3558]157
[3424]158#-------------------#
159# SubProject-enable #
160#-------------------#
161def_sub_projects=no
[3377]162AC_MSG_CHECKING([if the SubProjects should be built])
163AC_ARG_ENABLE([sub-projects],
164        AC_HELP_STRING( [--enable-sub-projects],
[3424]165        [also builds the subProjects while make from srcdir]), [def_sub_projects=yes])
166if test x$def_sub_projects = xyes; then
[3377]167  echo "yes"
168fi
[3424]169if test x$def_sub_projects = xno; then
[3377]170  echo "no"
171fi
172AM_CONDITIONAL(SUB_PROJECTS, test x$def_sub_projects = xyes)
173
[3558]174#----------------------#
175# Documentation-enable #
176#----------------------#
177def_documentation=no
178AC_MSG_CHECKING([if the Documentation should be build by default])
179AC_ARG_ENABLE([documentation],
180        AC_HELP_STRING( [--enable-documentation],
181        [also builds the sDocumentation while make from srcdir]), [def_documentation=yes])
182if test x$def_documentation = xyes; then
183  echo "yes"
184fi
185if test x$def_documentation = xno; then
186  echo "no"
187fi
188AM_CONDITIONAL(DOCUMENTATION, test x$def_documentation = xyes)
[3424]189#######################
190## PROGRAMM CHECKING ##
191## 3. party Programs ##
192#######################
193
194#----------------------#
195# checking for Doxygen #
196#----------------------#
[3219]197AC_PATH_PROG(DOXYGEN, doxygen)
198AM_CONDITIONAL(DOXYGEN, test $DOXYGEN)
199
[3424]200#########################
201## CHECKING FOR SYSTEM ##
202#########################
203## here the system is checked, and openGL is included
204## also checking for SDL on differen Systems
[2701]205
206AC_MSG_CHECKING([for System])
[2980]207## checking for openGL-environment and other sys-specific parameters
208case "$target" in
[3424]209#---------#
210# WINDOWS #
211#---------#
[2980]212  *-*-mingw32*)
[2701]213echo "mingw-WINDOWS detected"
214
215    mingw="yes"
216    MSBITFIELDS="-mms-bitfields"
217    MWINDOWS="-mwindows"
218
219# checking gl header
220        #done before loop
221
[2925]222# checking gl header
[2879]223   AC_CHECK_HEADERS(GL/gl.h ,,
224      [AC_MSG_ERROR([cannot find opengl headers]) ])
[2701]225#   checking for Windows openGl library
[1971]226    AC_CHECK_LIB([opengl32], [main], FOUND_opengl32=yes, "gl/gl.h")
[3424]227    if test x$FOUND_opengl32 = xyes ; then
[1959]228        LIBS="$LIBS -lopengl32"
[1971]229    else
[1959]230         echo "------------------"
231         echo "opengl not found."
232         echo "please install the opengl package which can be found at http://www.opengl.org"
233         echo "------------------"
234         exit -1
235    fi
236
[2701]237# cheking for GLU-header
[3424]238    AC_CHECK_HEADERS([GL/glu.h] ,,
[1971]239      [AC_MSG_ERROR([cannot find opengl headers]) ])
240
[2701]241# checking for libGLU
[1971]242    AC_CHECK_LIB([glu32], [main], FOUND_glu32=yes)
[3424]243    if test x$FOUND_glu32 = xyes ; then
[1959]244        LIBS="$LIBS -lGLU32"
[2701]245    else
[1959]246         echo "------------------"
247         echo "GLU library not found."
248         echo "please install the GLU library, that should come with openGL, which can be found at http://www.opengl.org"
249         echo "------------------"
250         exit -1
251    fi
[1971]252
[2701]253# checking for mingw32
254    AC_CHECK_LIB([mingw32], [main], FOUND_mingw32=yes)
[3424]255    if test x$FOUND_mingw32 = xyes; then
[2701]256        LIBS="$LIBS -lmingw32"
257    fi
[2982]258# checking for SDL-headers
[3424]259    AC_CHECK_HEADERS([SDL/SDL.h] ,,
[2982]260      [AC_MSG_ERROR([cannot find SDL headers]) ])
[2701]261
[2982]262#checking for libSDL
263    AC_CHECK_LIB([sdlmain], [main], FOUND_sdlmain=yes)
[3424]264    if test x$FOUND_sdlmain = xyes ; then
[2982]265       LIBS="$LIBS -lsdlmain"
266    else
267        echo "------------------"
268        echo "SDL library not found."
269        echo "please install the SDL library, which can be found at http://www.libsdl.org"
270        echo "------------------"
271        exit 1
272    fi
273    AC_CHECK_LIB([sdl], [main], FOUND_sdl=yes)
[3424]274    if test x$FOUND_sdl = xyes ; then
[2982]275       LIBS="$LIBS -lsdl"
276    else
277        echo "------------------"
278        echo "SDL library not found."
279        echo "please install the SDL library, which can be found at http://www.libsdl.org"
280        echo "------------------"
281        exit -1
282    fi
283
[2701]284    ;;
[3424]285#-------#
286# LINUX #
287#-------#
[2980]288 *-*-linux*)
[2701]289echo "Linux detected"
290
291 Linux="yes"
292
[3180]293CPPFLAGS="-I/usr/X11R6/include"
[3385]294LDFLAGS="-L/usr/lib/opengl/xorg-x11/lib -L/usr/Mesa-6.0.1/lib -L/usr/X11R6/lib $LDFLAGS"
[2925]295# checking gl header
[3424]296   AC_CHECK_HEADERS([GL/gl.h] ,,
[2879]297      [AC_MSG_ERROR([cannot find opengl headers]) ])
[2701]298
299#  checking for Unix GL
[3385]300   AC_CHECK_LIB([GL], [glLoadIdentity], FOUND_GL=yes)
[3424]301   if test x$FOUND_GL = xyes ; then
[2701]302     LIBS="$LIBS -lGL"
303   else
304         echo "------------------"
305         echo "opengl not found."
306         echo "please install the opengl package which can be found at http://www.opengl.org"
307         echo "------------------"
308         exit -1
309   fi
310
311# cheking for GLU-header
[3424]312    AC_CHECK_HEADERS([GL/glu.h] ,,
[2701]313      [AC_MSG_ERROR([cannot find opengl headers]) ])
314
315    AC_CHECK_LIB([GLU], [gluProject], FOUND_GLU=yes)
[3424]316    if test x$FOUND_GLU = xyes ; then
[2701]317      LIBS="$LIBS -lGLU"
318    else
319         echo "------------------"
320         echo "GLU library not found."
321         echo "please install the GLU library, that should come with openGL, which can be found at http://www.opengl.org"
322         echo "------------------"
323         exit -1
324    fi   
[2995]325
[2991]326# checking for SDL-headers
[3424]327    AC_CHECK_HEADERS([SDL/SDL.h] ,,
[2991]328      [AC_MSG_ERROR([cannot find SDL headers]) ])
[2982]329
[3140]330# checking for SDL-lib
[2991]331    AC_CHECK_LIB([SDL], [main], FOUND_SDL=yes)
[3424]332     if test x$FOUND_SDL = xyes ; then
[2991]333       LIBS="$LIBS -lSDL"
334     else
335        echo "------------------"
336        echo "SDL library not found."
337        echo "please install the SDL library, which can be found at http://www.libsdl.org"
338        echo "------------------"
339        exit -1
340     fi   
341
[3140]342
[2982]343## checking for SDL
[2991]344#    SDL_VERSION=1.2.7
345#    AM_PATH_SDL($SDL_VERSION,
346#      :,
347#      AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!])
348#      )
349#    CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
350#    LIBS="$LIBS $SDL_LIBS"
[2701]351    ;;
[3424]352#-----------#
353# MAC -OS X #
354#-----------#
[2995]355 *darwin*)
[3424]356 echo "OS X detected"
[2995]357
358 osX="yes"
359
[3140]360 CPPFLAGS="-I/sw/include $CPPFLAGS"
[2995]361# checking gl header
[3424]362   AC_CHECK_HEADERS([OpenGL/gl.h] ,,
[2995]363      [AC_MSG_ERROR([cannot find opengl headers]) ])
364# cheking for GLU-header
[3424]365    AC_CHECK_HEADERS([OpenGL/glu.h] ,,
[2995]366      [AC_MSG_ERROR([cannot find opengl headers]) ])
367
368   LIBS="$LIBS -framework OpenGL"
369
[3424]370       SDL_CFLAGS=`sdl-config --cflags`
371       SDL_LIBS=`sdl-config --libs`
372       CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
373       LIBS="$LIBS $SDL_LIBS"
374
375
[2995]376# checking for SDL-headers
[3001]377#    AC_CHECK_HEADERS(SDL/SDL.h ,,
378#      [AC_MSG_ERROR([cannot find SDL headers]) ])
[2995]379
380## checking for SDL
381#    SDL_VERSION=1.2.7
382#    AM_PATH_SDL($SDL_VERSION,
383#      :,
384#      AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!])
385#      )
386
[3140]387
[2995]388    ;;
389
[2701]390  *)
391    ;;
392esac
[2968]393
[2701]394AC_SUBST(MSBITFIELDS)
395
[3424]396###################################
397## CHECKING FOR HEADERS AND LIBS ##
398###################################
399
400#-----------#
401# SDL_Image #
402#-----------#
403if test x$def_sdl_image = xyes; then
[3140]404# checking for SDL_image-headers
[3424]405  AC_CHECK_HEADERS([SDL/SDL_image.h] ,,
[3178]406      [echo "sdl_image not found. falling back to other options"; def_sdl_image=no ])
[3140]407fi
[3424]408if test x$def_sdl_image = xyes; then
[3140]409# checking for SDL_image-lib
[3424]410  AC_CHECK_LIB([SDL_image], [main], [FOUND_SDL_image=yes])
411     if test x$FOUND_SDL_image = xyes ; then
[3140]412       LIBS="$LIBS -lSDL_image"
413     else
414        echo "------------------"
415        echo "SDL_image library not found."
416        echo "please install the SDL_image library, which can be found at http://www.libsdl.org/projects/SDL_image/"
417        echo "------------------"
418        exit -1
419     fi   
420fi
[2701]421
[3424]422## case no SDL-image:
423if test x$def_sdl_image = xno; then
424#---------#
425# libjpeg #
426#---------#
427 AC_CHECK_HEADERS([jpeglib.h], [jpegHeader="yes"],
428        [jpegHeader="no"])
[3425]429 if test x$jpegHeader = xno; then
[3140]430        echo " not including jpeg."
431 else
[3424]432  AC_CHECK_LIB([jpeg], [main], [FOUND_jpeg=yes])
433    if test x$FOUND_jpeg = xyes ; then
[3140]434      LIBS="$LIBS -ljpeg"
435    else
436         echo "------------------"
437         echo "jpeg library not found."
438         echo "please install the jpeg library from the Independent JPEG Group, which can be found at http://www.ijg.org"
439         echo "------------------"
440         exit -1
441    fi   
442 fi
[2980]443
[3424]444#--------#
445# libpng #
446#--------#
447 AC_CHECK_HEADERS([png.h], [pngHeader="yes"],
448        [pngHeader="no"])
449 if test x$pngHeader = xno; then
[3140]450        echo " not including png."
451 else
452  AC_CHECK_LIB([png], [main], FOUND_png=yes)
[3424]453    if test x$FOUND_png = xyes ; then
[3140]454      LIBS="$LIBS -lpng"
455    else
456         echo "------------------"
457         echo "png library not found."
458         echo "please install the png library, which can be found at http://libpng.org/pub/png/libpng.html"
459         echo "------------------"
460         exit -1
461    fi
462 fi   
463fi
464
[3424]465#-----#
466# GTK #
467#-----#
468if test x$def_gtk = xyes; then
[3100]469
470        #PKG_CHECK_MODULES(GTK2, gtk+-2.0 >= 2.0.3 gthread-2.0 >= 2.0.3, have_gtk2=yes, have_gtk2=no)
471        AC_MSG_CHECKING([for gtk2.0])
472        if `pkg-config --exists gtk+-2.0`; then
473                echo "yes"
474                have_gtk2=yes
475                GTK2_LIBS=`pkg-config --libs gtk+-2.0`
476                GTK2_CFLAGS=`pkg-config --cflags gtk+-2.0`
[3101]477                AC_DEFINE_UNQUOTED(HAVE_GTK2, 1, [if we have GTK2])
[3100]478        else
479                echo "no"
480        fi
[3101]481
[3099]482fi
[2980]483AC_SUBST(GTK2_LIBS)
484AC_SUBST(GTK2_CFLAGS)
[3100]485AM_CONDITIONAL(HAVE_GTK2, test x$have_gtk2 = xyes)
[2980]486
[3424]487#---------#
488# gThread #
489#---------#
490if test x$def_gthread = xyes; then
[2980]491
[3423]492        AC_MSG_CHECKING([for gthread])
493        if `pkg-config --exists gthread-2.0`; then
494                echo "yes"
495                have_gthread=yes
496                GTHREAD_LIBS=`pkg-config --libs gthread-2.0`
497                GTHREAD_CFLAGS=`pkg-config --cflags gthread-2.0`
498                AC_DEFINE_UNQUOTED(HAVE_GTHREAD, 1, [if we have gThread])
499        else
500                echo "no"
501        fi
[3100]502
[3423]503fi
504AC_SUBST(GTHREAD_LIBS)
505AC_SUBST(GTHREAD_CFLAGS)
506AM_CONDITIONAL(HAVE_GTHREAD, test x$have_gthread = xyes)
[2190]507
[3424]508#---------#
509# libcURL #
510#---------#
511if test x$def_curl = xyes; then
[2190]512
[3424]513 AC_CHECK_HEADERS([curl/curl.h], [curlHeader="yes"], [curlHeader="no"])
[3423]514 AC_CHECK_LIB([curl], [main], [FOUND_curl=yes])
515 if test x$curlHeader = xyes & test x$FOUND_curl = xyes ; then
516  have_curl=yes
517  CURL_LIBS=`curl-config --libs`
518  CURLCFLAGS=`curl-config --cflags`
519  AC_DEFINE_UNQUOTED(HAVE_CURL, 1, [if we have CURL])
[3424]520 else
[3423]521  have_curl=no
522 fi
523
524fi
525AC_SUBST(CURL_LIBS)
526AC_SUBST(CURL_CFLAGS)
527AM_CONDITIONAL(HAVE_CURL, test x$have_curl = xyes)
528
[3424]529#---------#
530# pthread #
531#---------#
[3423]532if test x$def_pthread = xyes ; then
533 if test x$have_gthread = xyes ; then
[3424]534  AC_CHECK_HEADERS([pthread.h], [pthreadHeader="yes"], [pthreadHeader="no"])
535  AC_CHECK_LIB([pthread], [main], [FOUND_pthread=yes])
536   if test x$FOUND_pthread = xyes ; then
[3423]537      LIBS="$LIBS -lpthread"
538   fi
539 fi
540fi
[3424]541
542
[1945]543# FIXME: Replace `main' with a function in `-lm':
[2968]544 AC_CHECK_LIB([m], [main])
[1945]545
[3099]546 
[1945]547# Checks for header files.
548AC_HEADER_STDC
549AC_CHECK_HEADERS([stdlib.h string.h])
550
551# Checks for typedefs, structures, and compiler characteristics.
552AC_HEADER_STDBOOL
553
554# Checks for library functions.
555AC_FUNC_MALLOC
556AC_CHECK_FUNCS([bzero sqrt])
557
[3424]558######################
559## OUTPUT CONFIGURE ##
560######################
[1946]561AC_CONFIG_FILES([Makefile
[3377]562                 src/Makefile
[3493]563                 src/lib/Makefile
564                 src/lib/graphics/Makefile
[3485]565                 src/lib/graphics/importer/Makefile
[3493]566                 src/lib/gui/Makefile
[3489]567                 src/lib/gui/console/Makefile
[3549]568                 src/lib/gui/gui/Makefile
569                 src/subprojects/Makefile
570                 src/subprojects/testmain/Makefile])
[3377]571
[1945]572AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.