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

File: Nevrax / code / nel / configure.in (download)
Revision 1.56, Mon Jan 7 16:09:52 2002 UTC (6 months, 1 week ago) by valignat
Branch: MAIN
Changes since 1.55: +18 -342 lines
Rewrited NeL, NeLNS, and Snowballs configure.in scripts.
ADDED an 'acinclude.m4' file which contain all M4 macros to check paths of the libraries that we need and macros to check the intalation of NeL. This file is placed in the code directory and there is symbolic links to that file in the 'nel', 'nelns' and 'snowballs2' directories.

dnl
dnl Configuration script for NeL
dnl
dnl $Id: configure.in,v 1.56 2002/01/07 16:09:52 valignat Exp $
dnl 

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

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

AC_SUBST(enable_net)
AC_SUBST(enable_3d)
AC_SUBST(enable_pacs)
AC_SUBST(enable_sound)
AC_SUBST(enable_ai)

AC_SUBST(NEL_SUBDIRS)


dnl ====================================================================
dnl Checks for programs.

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 Configure Settings

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

AM_NEL_DEBUG


dnl ====================================================================
dnl Checks for typedefs, structures, and compiler characteristics.

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.

AC_STDC_HEADERS
AC_CHECK_HEADERS(fcntl.h unistd.h)


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

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

AM_PATH_STLPORT


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

AM_PATH_OPENAL( $enable_3d )


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

AM_PATH_PYTHON( $enable_ai )


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

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


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

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

AM_PATH_FREETYPE( $enable_3d )


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

AM_PATH_OPENGL( $enable_3d )


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

AM_PATH_XF86VIDMODE


dnl ====================================================================
dnl Checks for library functions.


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

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                          \
           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     \
           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             \
           nel-config                        \
)


dnl End of configure.in