Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

Last change on this file since 3789 was 3789, checked in by bensch, 21 years ago

orxonox/trunk: also checking for gprof

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