dnl dnl Configuration script for NeLNS dnl dnl $Id: configure.in,v 1.1 2001/04/18 13:54:25 valignat Exp $ dnl dnl Process this file with autoconf to produce a configure script. AC_INIT(log_service/log_service.h) MAJOR_VERSION=0 MINOR_VERSION=3 PICO_VERSION=0 AM_INIT_AUTOMAKE(netns, $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 Python dnl ========== AC_ARG_WITH( python, [ --with-python= path to the Python prefix installation directory. e.g. /usr/local], [PYTHON_PREFIX=$withval AC_MSG_RESULT(using Python located in $withval.)] ) if test ! "$PYTHON_PREFIX" = "" then PATH="$PYTHON_PREFIX/bin:$PATH" fi AC_ARG_WITH( python-version, [ --with-python-version= Python version to use, e.g. 1.5], [PYTHON_VERSION=$withval AC_MSG_RESULT(using Python $withval.)] ) if test ! "$PYTHON_VERSION" = "" then PYTHON_EXEC="python$PYTHON_VERSION" else PYTHON_EXEC="python python2.0 python1.5" fi AC_PATH_PROGS(PYTHON, $PYTHON_EXEC, no, $PATH) if test "$PYTHON" = "no"; then AC_MSG_ERROR([Python is needed to compile NeL (www.python.org)]) fi 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 header files AC_ARG_WITH( stlport, [ --with-stlport= 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 Ask user for path to the STLPort library files AC_ARG_WITH( stllib, [ --with-stllib= 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 #ifdef __SGI_STL_PORT yo_stlport #endif], [AC_MSG_RESULT(yes)], AC_MSG_ERROR([STLPort is needed to compile NeLNS (www.stlport.org)]) ) CPPFLAGS="$_CPPFLAGS" dnl ========== dnl NeL dnl ========== dnl Ask user for path to the NeL header files AC_ARG_WITH( nel, [ --with-nel= prefix to the NeL files installation. e.g. /usr/local/include], [NEL_DIR=$with_nel AC_MSG_RESULT(using NeL header 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 #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 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" PYTHON_LIBS="-L$PYTHON_PREFIX/lib/python$PYTHON_VERSION/config -lpython$PYTHON_VERSION" _CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CXXFLAGS ${PYTHON_CFLAGS}" AC_SUBST(PYTHON_CFLAGS) AC_MSG_CHECKING(for Python header files) AC_EGREP_CPP( yo_python, [#include yo_python ], [AC_MSG_RESULT(ok)], AC_MSG_ERROR([Python is needed to compile NeL (www.python.org).]) ) CPPFLAGS="$_CPPFLAGS" AC_SUBST(PYTHON_CFLAGS) AC_SUBST(PYTHON_LIBS) 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 Checks for library functions. dnl ==================================================================== dnl Output files to generate. AC_OUTPUT( Makefile \ login_service/Makefile \ log_service/Makefile \ naming_service/Makefile \ time_service/Makefile \ agent_service/Makefile \ agent_service/creature/Makefile \ agent_service/plugin/Makefile \ admin_executor_service/Makefile \ ) dnl End of configure.in