[BACK] Return to configure.in CVS log [TXT][DIR] Up to Nevrax / code / nel

Diff for /code/nel/configure.in between version 1.33 and 1.61

version 1.33, 2001/04/10 14:22:58 version 1.61, 2002/03/21 10:54:37
Line 1 
Line 1 
 dnl dnl ====================================================================
 dnl Configuration script for NeL dnl Configuration script for NeL
  dnl ====================================================================
 dnl dnl
 dnl $Id$ dnl $Id$
 dnl  dnl
  
  
  dnl ====================================================================
 dnl Process this file with autoconf to produce a configure script. dnl Process this file with autoconf to produce a configure script.
  dnl ====================================================================
  
 AC_INIT(include/nel/nel.h) AC_INIT(include/nel/nel.h)
  
  
 dnl MAJOR_VERSION correspond to the CURRENT interface number. dnl MAJOR_VERSION correspond to the CURRENT interface number.
 dnl MINOR_VERSION correspond to the interface's REVISION (implementation) dnl MINOR_VERSION correspond to the interface REVISION (implementation)
 dnl               number. dnl               number.
 dnl PICO_VERSION correspond to the interface's AGE, which is the number dnl PICO_VERSION correspond to the interface AGE, which is the number
 dnl              of previous additional interfaces supported by this library. dnl              of previous additional interfaces supported by this library.
 dnl              It must be less than or equal to CURRENT. dnl              It must be less than or equal to CURRENT.
  
Line 20 
Line 24 
 MINOR_VERSION=3 MINOR_VERSION=3
 PICO_VERSION=0 PICO_VERSION=0
  
 AM_INIT_AUTOMAKE(nel,$MAJOR_VERSION.$MINOR_VERSION.$PICO_VERSION) VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PICO_VERSION
  
  AM_INIT_AUTOMAKE(nel,$VERSION)
  
 LIBTOOL_VERSION=$MAJOR_VERSION:$MINOR_VERSION:$PICO_VERSION LIBTOOL_VERSION=$MAJOR_VERSION:$MINOR_VERSION:$PICO_VERSION
  
  AC_SUBST(VERSION)
 AC_SUBST(LIBTOOL_VERSION) AC_SUBST(LIBTOOL_VERSION)
  
 AM_CONFIG_HEADER(include/nelconfig.h) AM_CONFIG_HEADER(include/nelconfig.h)
  
  
 dnl The following hack should ensure that configure doesn't add optimizing dnl The following hack should ensure that configure doesnt add optimizing
 dnl or debugging flags to CFLAGS or CXXFLAGS dnl or debugging flags to CFLAGS or CXXFLAGS
 CFLAGS="$CFLAGS " CFLAGS="$CFLAGS -ftemplate-depth-24"
 CXXFLAGS="$CXXFLAGS " CXXFLAGS="$CXXFLAGS -ftemplate-depth-24"
  
  
 dnl ==================================================================== dnl ====================================================================
 dnl Checks for programs. dnl Checks NeL modules (net, 3d, ai) to install / Disable
  dnl ====================================================================
 AC_PROG_MAKE_SET 
  
 AC_PROG_CC dnl the misc is mandatory, it is use by the other modules.
 AC_PROG_CXX NEL_SUBDIRS="misc"
  
 AM_PROG_LIBTOOL dnl Network library
  AC_ARG_ENABLE( net,
      [  --disable-net           disable compilation and install of NeL Network.],
      , enable_net=yes )
  
 AM_SANITY_CHECK if test $enable_net = "no";
  then
     AC_MSG_RESULT(disable NEL Network.)
  else
     NEL_SUBDIRS="$NEL_SUBDIRS net"
  fi
  
 AC_PROG_YACC dnl 3D library
 AM_PROG_LEX AC_ARG_ENABLE( 3d,
      [  --disable-3d            disable compilation and install of NeL 3D.],
      , enable_3d=yes )
  
 AC_PROG_INSTALL if test $enable_3d = "no";
  then
     AC_MSG_RESULT(disable NEL 3D.)
  else
     NEL_SUBDIRS="$NEL_SUBDIRS 3d"
  fi
  
  dnl PACS library
  AC_ARG_ENABLE( pacs,
      [  --disable-pacs          disable compilation and install of NeL PACS.],
      , enable_pacs=yes )
  
 dnl ========== if test $enable_pacs = "no";
 dnl Python then
 dnl ==========    AC_MSG_RESULT(disable NEL PACS.)
  else
     NEL_SUBDIRS="$NEL_SUBDIRS pacs"
  fi
  
 AC_ARG_WITH( python, dnl Sound library
     [  --with-python=<path>    path to the Python prefix installation directory. AC_ARG_ENABLE( sound,
                           e.g. /usr/local],     [  --enable-sound          enable compilation and install of NeL Sound.],
     [PYTHON_PREFIX=$withval     , enable_sound=no )
       AC_MSG_RESULT(using Python located in $withval.)] 
 ) 
  
 if test ! "$PYTHON_PREFIX" = "" if test $enable_sound = "yes";
 then then
     PATH="$PYTHON_PREFIX/bin:$PATH"    AC_MSG_RESULT(enable NEL Sound.)
     NEL_SUBDIRS="$NEL_SUBDIRS sound"
 fi fi
  
 AC_ARG_WITH( python-version, dnl AI library
     [  --with-python-version=<version> AC_ARG_ENABLE( ai,
                           Python version to use, e.g. 1.5],     [  --enable-ai             enable compilation and install of NeL AI.],
     [PYTHON_VERSION=$withval     , enable_ai=no )
       AC_MSG_RESULT(using Python $withval.)] 
 ) 
  
 if test ! "$PYTHON_VERSION" = "" if test $enable_ai = "yes";
 then then
     PYTHON_EXEC="python$PYTHON_VERSION"    AC_MSG_RESULT(enable NEL AI.)
 else    NEL_SUBDIRS="$NEL_SUBDIRS ai"
     PYTHON_EXEC="python python2.0 python1.5" 
 fi fi
  
 AC_PATH_PROGS(PYTHON, $PYTHON_EXEC, no, $PATH) dnl Georges library
 if test "$PYTHON" = "no"; AC_ARG_ENABLE( georges,
      [  --enable-georges        enable compilation and install of NeL Georges.],
      , enable_georges=no )
  
  if test $enable_georges = "yes";
 then then
     AC_MSG_ERROR([Python is needed to compile NeL (www.python.org)])    AC_MSG_RESULT(enable NEL Georges.)
     NEL_SUBDIRS="$NEL_SUBDIRS georges"
 fi fi
  
  AC_SUBST(enable_net)
  AC_SUBST(enable_3d)
  AC_SUBST(enable_pacs)
  AC_SUBST(enable_sound)
  AC_SUBST(enable_ai)
  AC_SUBST(enable_georges)
  
  AC_SUBST(NEL_SUBDIRS)
  
  
  dnl ====================================================================
  dnl Checks for programs.
  dnl ====================================================================
  
  AC_PROG_MAKE_SET
  
  AC_PROG_CC
  AC_PROG_CXX
  
  AM_PROG_LIBTOOL
  
  AM_SANITY_CHECK
  
  AC_PROG_YACC
  AM_PROG_LEX
  
  AC_PROG_INSTALL
  
  
 dnl ==================================================================== dnl ====================================================================
 dnl Configure Settings dnl Configure Settings
  dnl ====================================================================
  
  dnl Disable the static linking by default
  dnl AC_DISABLE_STATIC
  
 dnl Use C++ compiler as a default for the compilation test. dnl Use C++ compiler as a default for the compilation tests.
 AC_LANG_CPLUSPLUS AC_LANG_CPLUSPLUS
  
  
 dnl ==================================================================== dnl ====================================================================
  dnl Debug/optimized compilation mode
  dnl ====================================================================
  
  AM_NEL_DEBUG
  
  AC_ARG_WITH([logging],
      [  --without-logging  be silent on stdout and in no log.log],
      [
  if test "$with_logging" = "no"
  then
          AC_DEFINE(NEL_DEFAULT_DISPLAYER, 0)
          AC_DEFINE(NEL_LOG_IN_FILE, 0)
  else
          AC_MSG_ERROR([--with-logging is the default: do not use this option])
  fi
  ])
                            
  
  dnl ====================================================================
 dnl Checks for typedefs, structures, and compiler characteristics. dnl Checks for typedefs, structures, and compiler characteristics.
  dnl ====================================================================
  
 dnl Supress GCC's "multi-character character constant" warnings. dnl Supress GCC "multi-character character constant" warnings.
 if test "X$CC" = "Xgcc"; if test "X$CC" = "Xgcc";
 then then
         CXXFLAGS="$CXXFLAGS -Wno-multichar"         CXXFLAGS="$CXXFLAGS -Wno-multichar"
Line 109 
Line 190 
 dnl Add the define _REENTRANT for a correct use of the threads dnl Add the define _REENTRANT for a correct use of the threads
 if test "X$CC" = "Xgcc"; if test "X$CC" = "Xgcc";
 then then
      CFLAGS="$CFLAGS -D_REENTRANT"
     CXXFLAGS="$CXXFLAGS -D_REENTRANT"     CXXFLAGS="$CXXFLAGS -D_REENTRANT"
 fi fi
  
  
  
 dnl ==================================================================== dnl ====================================================================
 dnl Checks for header files. dnl Checks for header files.
  dnl ====================================================================
  
 AC_STDC_HEADERS AC_STDC_HEADERS
 AC_CHECK_HEADERS(fcntl.h unistd.h) AC_CHECK_HEADERS(fcntl.h unistd.h)
  
  
 dnl ========== dnl ====================================================================
 dnl X11 dnl X11
 dnl ========== 
  
 AC_PATH_X AC_PATH_X
          
 if test ! "$no_x" = "yes" ; then if test ! "$no_x" = "yes"
     if test ! X"$x_libraries" = X ; then then
      if test ! X"$x_libraries" = X
      then
         LIBS="$LIBS -L$x_libraries"         LIBS="$LIBS -L$x_libraries"
     fi     fi
     if test ! X"$x_includes" = X ; then 
      if test ! X"$x_includes" = X
      then
         CXXFLAGS="$CXXFLAGS -I$x_includes"         CXXFLAGS="$CXXFLAGS -I$x_includes"
     fi     fi
 else else
      if test "$enable_3d" = "yes"
      then
     AC_MSG_ERROR(X11 must be installed.)     AC_MSG_ERROR(X11 must be installed.)
 fi fi
  fi
  
  
 dnl ========== dnl ====================================================================
 dnl STLPort dnl STLPort
 dnl ========== 
  
 dnl Ask user for path to the STLport header files AM_PATH_STLPORT
 AC_ARG_WITH( stlport, 
     [  --with-stlport=<path>   path to the STLPort header files directory. 
                           e.g. /usr/local/include/stlport], 
     [STLPORT_DIR=$with_stlport 
       AC_MSG_RESULT(using STLPort header files located in $with_stlport)], 
     AC_MSG_ERROR([You must call configure with the --with-stlport option. 
     This tells configure where to find the STLPort header files. 
     e.g. --with-stlport=/usr/local/include/stlport]) 
 ) 
  
 if test X"$STLPORT_DIR" != X; 
 then 
     CXXFLAGS="-I$STLPORT_DIR $CXXFLAGS" 
 fi 
  
  dnl ====================================================================
  dnl OpenAL
  
 dnl ========== AM_PATH_OPENAL($enable_sound)
 dnl Python 
 dnl ========== 
  
 PYTHON_PREFIX=`$PYTHON -c 'import sys; print "%s" % (sys.prefix)'` 
 PYTHON_VERSION=`$PYTHON -c 'import sys; print "%s" % (sys.version[[:3]])'` 
  
 PYTHON_CFLAGS="-I$PYTHON_PREFIX/include/python$PYTHON_VERSION" dnl ====================================================================
 PYTHON_LIBS="-L$PYTHON_PREFIX/lib/python$PYTHON_VERSION/config -lpython$PYTHON_VERSION" dnl Python
  
 _CPPFLAGS="$CPPFLAGS" AM_PATH_PYTHON(1.5,$enable_ai)
 CPPFLAGS="$CXXFLAGS ${PYTHON_CFLAGS}" 
  
 AC_SUBST(PYTHON_CFLAGS) 
  
 AC_MSG_CHECKING(for Python header files) 
 AC_EGREP_CPP( yo_python, 
 [#include <Python.h> 
    yo_python 
 ], 
 [AC_MSG_RESULT(ok)], 
 AC_MSG_ERROR([Python is needed to compile NeL (www.python.org).]) 
 ) 
  
 CPPFLAGS="$_CPPFLAGS" 
  
 AC_SUBST(PYTHON_CFLAGS) dnl ====================================================================
 AC_SUBST(PYTHON_LIBS) dnl LibXML
  
  dnl Use C++ compiler as a default for the compilation tests.
  AC_LANG_C
  
 dnl ========== AM_PATH_XML2(2.0.0, , AC_MSG_ERROR(libxml2 must be installed.))
 dnl Debug/optimized compilation mode 
 dnl ========== 
  
 MAX_C_OPTIMIZE="-O6" dnl Use C++ compiler as a default for the compilation tests.
  AC_LANG_CPLUSPLUS
 dnl Build optimized or debug version ? 
 dnl First check for gcc and g++ 
 if test "$ac_cv_prog_gcc" = "yes" 
 then 
   DEBUG_CFLAGS="-g" 
   DEBUG_OPTIMIZE_CC="-O" 
   OPTIMIZE_CFLAGS="$MAX_C_OPTIMIZE" 
 else 
   DEBUG_CFLAGS="-g" 
   DEBUG_OPTIMIZE_CC="" 
   OPTIMIZE_CFLAGS="-O" 
 fi 
 if test "$ac_cv_prog_cxx_g" = "yes" 
 then 
   DEBUG_CXXFLAGS="-g" 
   DEBUG_OPTIMIZE_CXX="-O" 
   OPTIMIZE_CXXFLAGS="-O3" 
 else 
   DEBUG_CXXFLAGS="-g" 
   DEBUG_OPTIMIZE_CXX="" 
   OPTIMIZE_CXXFLAGS="-O" 
 fi 
 AC_ARG_WITH(debug, 
     [  --with-debug[=full]     Build a debug version (huge libraries) 
   --without-debug         Build withoug debugging code (default)], 
     [with_debug=$withval], 
     [with_debug=no]) 
 if test "$with_debug" = "yes" 
 then 
   dnl Medium debug. 
   CFLAGS="$DEBUG_CFLAGS $DEBUG_OPTIMIZE_CC $CFLAGS" 
   CXXFLAGS="$DEBUG_CXXFLAGS $DEBUG_OPTIMIZE_CXX $CXXFLAGS" 
 elif test "$with_debug" = "full" 
 then 
   dnl Full debug. Very slow in some cases 
   CFLAGS="$DEBUG_CFLAGS $CFLAGS" 
   CXXFLAGS="$DEBUG_CXXFLAGS $CXXFLAGS" 
 else 
   dnl Optimized version. No debug 
   CFLAGS="$OPTIMIZE_CFLAGS $CFLAGS" 
   CXXFLAGS="$OPTIMIZE_CXXFLAGS $CXXFLAGS" 
 fi 
  
  
 dnl ==================================================================== dnl ====================================================================
 dnl Checks for libraries. dnl Checks for libraries.
  dnl ====================================================================
  
 dnl ========== dnl ====================================================================
 dnl STLPort 
 dnl ========== 
  
 dnl Ask user for path to the STLport header/library files 
 AC_ARG_WITH( stllib, 
     [  --with-stllib=<path>    path to the STLPort installation directory. 
                           e.g. /usr/local/lib/stlport], 
     [STLLIB_DIR=$with_stllib 
       AC_MSG_RESULT(using STLPort library located in $with_stllib.)] 
 ) 
  
 if test X"$STLLIB_DIR" != X; 
 then 
     LIBS="-L$STLLIB_DIR $LIBS" 
 fi 
  
 LIBS="$LIBS -lstlport_gcc" 
  
 _CPPFLAGS="$CPPFLAGS" 
 CPPFLAGS="$CXXFLAGS" 
  
 AC_MSG_CHECKING(for STLPort) 
 AC_EGREP_CPP( yo_stlport, 
 [#include <algorithm> 
 #ifdef __SGI_STL_PORT 
    yo_stlport 
 #endif], 
 [AC_MSG_RESULT(yes)], 
 AC_MSG_ERROR([STLPort is needed to compile NeL (www.stlport.org).]) 
 ) 
  
 CPPFLAGS="$_CPPFLAGS" 
  
  
 dnl ========== 
 dnl FreeType 2 dnl FreeType 2
 dnl ========== 
  
 dnl Check for the FreeType 2 library files AM_PATH_FREETYPE($enable_3d)
 AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no) 
  
 if test "$FREETYPE_CONFIG" = "no"; then 
     AC_MSG_ERROR([Cannot find freetype-config: check your path. 
     FreeType 2 library is needed to compile NeL (freetype.sourceforge.net).]) 
 else 
     FREETYPE_CFLAGS=`freetype-config --cflags` 
     FREETYPE_LIBS=`freetype-config --libs` 
 fi 
  
 AC_SUBST(FREETYPE_CFLAGS) 
 AC_SUBST(FREETYPE_LIBS) 
  
 dnl Checking the FreeType 2 instalation 
 _CPPFLAGS="$CPPFLAGS" 
 CPPFLAGS="$CXXFLAGS ${FREETYPE_CFLAGS}" 
  
 AC_MSG_CHECKING(for FreeType 2 installation) 
 AC_EGREP_CPP( yo_freetype2, 
 [#include <freetype/freetype.h> 
 #if FREETYPE_MAJOR == 2 
    yo_freetype2 
 #endif], 
 [AC_MSG_RESULT(yes)], 
 AC_MSG_ERROR([Freetype 2 library is needed to compile NeL (www.stlport.org).]) 
 ) 
  
 CPPFLAGS="$_CPPFLAGS" dnl ====================================================================
  dnl OpenGL
  
  AM_PATH_OPENGL($enable_3d)
  
 dnl ========== 
 dnl OpenGL 
 dnl ========== 
  
 dnl Checking the OpenGL installation dnl ====================================================================
 AC_MSG_CHECKING(for OpenGL) dnl Check for XF86VidMode extension (-lXxf86vm)
 AC_EGREP_CPP( yo_opengl, 
 [#include <GL/gl.h> 
 #if defined(GL_VERSION_1_2) 
    yo_opengl 
 #endif], 
 [AC_MSG_RESULT(yes)], 
 AC_MSG_ERROR([OpenGL 1.2 is needed to compile NeL (www.mesa3d.org).]) 
 ) 
  
 dnl Checking the GLEXT version AM_PATH_XF86VIDMODE
 AC_MSG_CHECKING(for <GL/glext.h> version) 
 AC_EGREP_CPP( yo_glext_version, 
 [#include <GL/glext.h> 
 #ifdef GL_GLEXT_VERSION 
 #if GL_GLEXT_VERSION >= 7 
    yo_glext_version 
 #endif 
 #endif], 
 [AC_MSG_RESULT(ok)], 
 AC_MSG_ERROR([A newer version of <GL/glext.h> is needed to compile NeL (download it from http://oss.sgi.com/projects/ogl-sample/ABI/).]) 
 ) 
  
  dnl Arrange for the include directory to be in the search path even when
  dnl build is done outside the source tree
  CFLAGS="$CFLAGS -I\${top_srcdir}/include"
  CXXFLAGS="$CXXFLAGS -I\${top_srcdir}/include"
  
 dnl ==================================================================== dnl ====================================================================
 dnl Checks for library functions. dnl Checks for library functions.
  dnl ====================================================================
  
  
 dnl ==================================================================== dnl ====================================================================
 dnl Output files to generate. dnl Output files to generate.
  dnl ====================================================================
 dnl What an ugly hack to try to get something cleanner ... i hope ... 
 AC_OUTPUT_COMMANDS( 
    [cd include/nel && ln -sfv ../nelconfig.h .] 
 ) 
  
 AC_OUTPUT( Makefile                       \ AC_OUTPUT( Makefile                       \
            include/Makefile               \            include/Makefile               \
             include/nel/Makefile              \
             include/nel/misc/Makefile         \
             include/nel/net/Makefile          \
             include/nel/3d/Makefile           \
             include/nel/pacs/Makefile         \
             include/nel/sound/Makefile        \
             include/nel/ai/Makefile           \
             include/nel/ai/agent/Makefile     \
             include/nel/ai/c/Makefile         \
             include/nel/ai/character/Makefile \
             include/nel/ai/e/Makefile         \
             include/nel/ai/fuzzy/Makefile     \
             include/nel/ai/logic/Makefile     \
             include/nel/ai/nimat/Makefile     \
             include/nel/ai/pyserver/Makefile  \
             include/nel/ai/script/Makefile    \
             include/nel/ai/tools/Makefile     \
             include/nel/georges/Makefile      \
            src/Makefile                   \            src/Makefile                   \
            src/misc/Makefile              \            src/misc/Makefile              \
            src/misc/config_file/Makefile  \            src/misc/config_file/Makefile  \
Line 363 
Line 319 
            src/3d/Makefile                \            src/3d/Makefile                \
            src/3d/driver/Makefile         \            src/3d/driver/Makefile         \
            src/3d/driver/opengl/Makefile  \            src/3d/driver/opengl/Makefile  \
             src/pacs/Makefile                 \
             src/sound/Makefile                \
             src/sound/driver/Makefile         \
             src/sound/driver/openal/Makefile  \
            src/ai/Makefile                \            src/ai/Makefile                \
            src/ai/agent/Makefile          \            src/ai/agent/Makefile          \
            src/ai/c/Makefile              \            src/ai/c/Makefile              \
Line 373 
Line 333 
            src/ai/pyserver/Makefile       \            src/ai/pyserver/Makefile       \
            src/ai/script/Makefile         \            src/ai/script/Makefile         \
            src/ai/tools/Makefile          \            src/ai/tools/Makefile          \
             src/georges/Makefile              \
             nel-config                        \
  )
  
  
 dnl End of configure.in dnl End of configure.in


Legend:
Removed from v.1.33 
changed lines
 Added in v.1.61