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

File: Nevrax / code / nel / configure.in (download)
Revision 1.67, Tue Apr 16 12:01:39 2002 UTC (3 months ago) by valignat
Branch: MAIN
Changes since 1.66: +3 -6 lines
ADDED a configure option to explicitly activate the use of the ccache (http://ccache.samba.org) utility.

dnl ====================================================================
dnl Configuration script for NeL
dnl ====================================================================
dnl
dnl $Id: configure.in,v 1.67 2002/04/16 12:01:39 valignat Exp $
dnl 


dnl ====================================================================
dnl Process this file with autoconf to produce a configure script.
dnl ====================================================================

AC_INIT(include/nel/nel.h)


dnl MAJOR_VERSION correspond to the CURRENT interface number.
dnl MINOR_VERSION correspond to the interface REVISION (implementation)
dnl               number.
dnl PICO_VERSION correspond to the interface AGE, which is the number
dnl              of previous additional interfaces supported by this library.
dnl              It must be less than or equal to CURRENT.

MAJOR_VERSION=0
MINOR_VERSION=3
PICO_VERSION=0

VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PICO_VERSION

AM_INIT_AUTOMAKE(nel,$VERSION)

LIBTOOL_VERSION=$MAJOR_VERSION:$MINOR_VERSION:$PICO_VERSION

AC_CANONICAL_HOST
if test "$host_cpu" = "i386" -o "$host_cpu" = "i486" \
        -o "$host_cpu" = "i586" -o "$host_cpu" = "i686" \
        -o "$host_cpu" = "i786" ; then
AC_DEFINE(HAVE_X86)
fi

AC_SUBST(VERSION)
AC_SUBST(LIBTOOL_VERSION)

AM_CONFIG_HEADER(include/nelconfig.h)


dnl The following hack should ensure that configure doesnt add optimizing
dnl or debugging flags to CFLAGS or CXXFLAGS
CFLAGS="$CFLAGS -ftemplate-depth-24"
CXXFLAGS="$CXXFLAGS -ftemplate-depth-24"


dnl ====================================================================
dnl Checks NeL modules (net, 3d, ai) to install / Disable
dnl ====================================================================

dnl the misc is mandatory, it is use by the other modules.
NEL_SUBDIRS="misc"

dnl Network library
AC_ARG_ENABLE( net,
    [  --disable-net           disable compilation and install of NeL Network.],
    , enable_net=yes )

if test $enable_net = "no";
then
   AC_MSG_RESULT(disable NEL Network.)
else
   NEL_SUBDIRS="$NEL_SUBDIRS net"
fi

dnl 3D library
AC_ARG_ENABLE( 3d,
    [  --disable-3d            disable compilation and install of NeL 3D.],
    , enable_3d=yes )

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 )

if test $enable_pacs = "no";
then
   AC_MSG_RESULT(disable NEL PACS.)
else
   NEL_SUBDIRS="$NEL_SUBDIRS pacs"
fi

dnl Sound library
AC_ARG_ENABLE( sound,
    [  --enable-sound          enable compilation and install of NeL Sound.],
    , enable_sound=no )

if test $enable_sound = "yes";
then
   AC_MSG_RESULT(enable NEL Sound.)
   NEL_SUBDIRS="$NEL_SUBDIRS sound"
fi

dnl AI library
AC_ARG_ENABLE( ai,
    [  --enable-ai             enable compilation and install of NeL AI.],
    , enable_ai=no )

if test $enable_ai = "yes";
then
   AC_MSG_RESULT(enable NEL AI.)
   NEL_SUBDIRS="$NEL_SUBDIRS ai"
fi

dnl Georges library
AC_ARG_ENABLE( georges,
    [  --enable-georges        enable compilation and install of NeL Georges.],
    , enable_georges=no )

if test $enable_georges = "yes";
then
   AC_MSG_RESULT(enable NEL Georges.)
   NEL_SUBDIRS="$NEL_SUBDIRS georges"
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

AM_PATH_CCACHE


dnl ====================================================================
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 tests.
AC_LANG_CPLUSPLUS


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 ====================================================================

dnl Supress GCC "multi-character character constant" warnings.
if test "X$CC" = "Xgcc";
then
    CXXFLAGS="$CXXFLAGS -Wno-multichar"
fi

dnl Add the define _REENTRANT for a correct use of the threads
if test "X$CC" = "Xgcc";
then
    CFLAGS="$CFLAGS -D_REENTRANT"
    CXXFLAGS="$CXXFLAGS -D_REENTRANT"
fi


dnl ====================================================================
dnl Checks for header files.
dnl ====================================================================

AC_STDC_HEADERS
AC_CHECK_HEADERS(fcntl.h unistd.h)


dnl ====================================================================
dnl X11

AC_PATH_X
    
if test ! "$no_x" = "yes"
then
    if test ! X"$x_libraries" = X
    then
        LIBS="$LIBS -L$x_libraries"
    fi

    if test ! X"$x_includes" = X
    then
        CXXFLAGS="$CXXFLAGS -I$x_includes"
    fi
else
    if test "$enable_3d" = "yes"
    then
        AC_MSG_ERROR(X11 must be installed.)
    fi
fi


dnl ====================================================================
dnl STLPort

AM_PATH_STLPORT


dnl ====================================================================
dnl Python

AM_PATH_PYTHON(1.5,$enable_ai)


dnl ====================================================================
dnl LibXML

dnl Use C++ compiler as a default for the compilation tests.
AC_LANG_C

AM_PATH_XML2(2.0.0, , AC_MSG_ERROR(libxml2 must be installed.))

CFLAGS="$CFLAGS $XML_CFLAGS"
CXXFLAGS="$CXXFLAGS $XML_CFLAGS"

LIBS="$LIBS $XML_LIBS"

dnl Use C++ compiler as a default for the compilation tests.
AC_LANG_CPLUSPLUS


dnl ====================================================================
dnl Checks for libraries.
dnl ====================================================================

dnl ====================================================================
dnl FreeType 2

AM_PATH_FREETYPE($enable_3d)


dnl ====================================================================
dnl OpenGL

AM_PATH_OPENGL($enable_3d)


dnl ====================================================================
dnl Check for XF86VidMode extension (-lXxf86vm)

AM_PATH_XF86VIDMODE


dnl ====================================================================
dnl OpenAL

AM_PATH_OPENAL($enable_sound)


dnl ====================================================================
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 Checks for library functions.
dnl ====================================================================


dnl ====================================================================
dnl Output files to generate.
dnl ====================================================================

AC_OUTPUT( 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/misc/Makefile                 \
           src/misc/config_file/Makefile     \
           src/net/Makefile                  \
           src/3d/Makefile                   \
           src/3d/driver/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/agent/Makefile             \
           src/ai/c/Makefile                 \
           src/ai/character/Makefile         \
           src/ai/fuzzy/Makefile             \
           src/ai/logic/Makefile             \
           src/ai/nimat/Makefile             \
           src/ai/pyserver/Makefile          \
           src/ai/script/Makefile            \
           src/ai/tools/Makefile             \
           src/georges/Makefile              \
           nel-config                        \
)


dnl End of configure.in