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

File: Nevrax / code / nelns / configure.in (download)
Revision 1.8, Mon Oct 29 14:00:28 2001 UTC (8 months, 3 weeks ago) by valignat
Branch: MAIN
Changes since 1.7: +3 -5 lines
REMOVED references to the Log service and the Time service.

dnl
dnl Configuration script for NeLNS
dnl
dnl $Id: configure.in,v 1.8 2001/10/29 14:00:28 valignat Exp $
dnl 

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

AC_INIT(admin_service/admin_service.cpp)

MAJOR_VERSION=0
MINOR_VERSION=3
PICO_VERSION=0

AM_INIT_AUTOMAKE(nelns, $MAJOR_VERSION.$MINOR_VERSION.$PICO_VERSION)

AM_CONFIG_HEADER(config.h)


dnl The following hack should ensure that configure doesn't add optimizing
dnl or debugging flags to CFLAGS or CXXFLAGS
CFLAGS="$CFLAGS "
CXXFLAGS="$CXXFLAGS "


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

AC_PROG_MAKE_SET

AC_PROG_CC
AC_PROG_CXX

AM_PROG_LIBTOOL

AM_SANITY_CHECK

AC_PROG_INSTALL


dnl ====================================================================
dnl Configure Settings

AC_LANG_CPLUSPLUS


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

AC_C_CONST

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


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

AC_STDC_HEADERS
AC_CHECK_HEADERS(fcntl.h unistd.h)


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

dnl Ask user for path to the STLport files location
AC_ARG_WITH( stlport,
    [  --with-stlport=<path>   path to the STLPort install directory.
                          e.g. /usr/local/stlport]
)

AC_ARG_WITH( stlport-include,
    [  --with-stlport-include=<path>
                          path to the STLPort header files directory.
                          e.g. /usr/local/stlport/stlport]
)

AC_ARG_WITH( stlport-lib,
    [  --with-stlport-lib=<path>
                          path to the STLPort library files directory.
                          e.g. /usr/local/stlport/lib]
)

if test "$with_stlport" != "no"
then
    if test -z "$with_stlport" && test -z "$with_stlport_lib" -o -z "$with_stlpo
rt_include"
    then
        AC_MSG_ERROR([You must call configure with the --with-stlport or --with-stlport-lib and with-stlport-include options.
This tells configure where to find the STLPort files.])
    fi

    if test $with_stlport
    then
        AC_MSG_RESULT(using STLPort files located in $with_stlport)

        STLPORT_CFLAGS="-I$with_stlport/stlport"
        STLPORT_LIB="-L$with_stlport/lib"
    fi
else
    no_stlport="no"
    AC_MSG_RESULT(*** Override the use of the STLPorts (EXPERIMENTAL) ***)
fi

if test -z "$no_stlport" -a "$with_stlport_include"
then
    AC_MSG_RESULT(using STLPort header files located in $with_stlport_include)
    STLPORT_CFLAGS="-I$with_stlport_include"
fi

if test -z "$no_stlport" -a  "$with_stlport_lib"
then
    AC_MSG_RESULT(using STLPort library files located in $with_stlport_lib)
    STLPORT_LIB="-L$with_stlport_lib"
fi


dnl ==========
dnl NeL
dnl ==========

dnl Ask user for path to the NeL header files
AC_ARG_WITH( nel,
    [  --with-nel=<prefix>     prefix to the NeL files installation.
                          e.g. /usr/local],
    [ NEL_DIR=$with_nel
      AC_MSG_RESULT(using NeL files located in $with_nel)]
)

if test X"$NEL_DIR" != X"";
then
    CXXFLAGS="-I$NEL_DIR/include $CXXFLAGS"
    LIBS="-L$NEL_DIR/lib $LIBS"
fi

_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CXXFLAGS"

AC_MSG_CHECKING(for NeL)
AC_EGREP_CPP( yo_nel,
[#include <nel/net.h>
#ifdef NL_NET_H
   yo_nel
#endif],
[AC_MSG_RESULT(yes)],
AC_MSG_ERROR([NeL is needed to compile the NeLNS (www.nevrax.org)])
)


dnl ==========
dnl Debug/optimized compilation mode
dnl ==========

MAX_C_OPTIMIZE="-O6"

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 Checks for libraries.

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

if test -z "$no_stlport"
then 
  
    if test X"$STLPORT_CFLAGS" != X
    then
        CXXFLAGS="$STLPORT_CFLAGS $CXXFLAGS"
    fi

    if test X"$STLPORT_LIB" != X
    then
        LIBS="$STLPORT_LIB $LIBS -lstlport_gcc"
    fi

    _CPPFLAGS="$CPPFLAGS"
    CPPFLAGS="$CXXFLAGS $STLPORT_CFLAGS"

    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"
fi


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


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

AC_OUTPUT( Makefile                        \
           login_service/Makefile          \
           naming_service/Makefile         \
           admin_executor_service/Makefile \
           admin_service/Makefile          \
           welcome_service/Makefile        \
)


dnl End of configure.in