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