configure.ac 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. # -*- Autoconf -*-
  2. # Process this file with autoconf to produce a configure script.
  3. AC_PREREQ(2.60)
  4. AC_INIT(vcmi, VERSION)
  5. AM_INIT_AUTOMAKE
  6. AC_CONFIG_HEADER([config.h])
  7. # Checks for programs.
  8. AC_PROG_CXX
  9. AX_BOOST_BASE([1.33])
  10. AX_BOOST_SYSTEM
  11. AX_BOOST_FILESYSTEM
  12. AX_BOOST_THREAD
  13. AC_PROG_CC
  14. AC_PROG_CPP
  15. AC_ENABLE_SHARED
  16. AC_DISABLE_STATIC
  17. AC_PROG_LIBTOOL
  18. CFLAGS="-g"
  19. CXXFLAGS="-g"
  20. AC_CHECK_LIB([stdc++], [main])
  21. if test "x$GCC" = "xyes"; then
  22. stdcxx_name=`$CXX -print-file-name=libstdc++.so`
  23. stdcxx_path=`dirname $stdcxx_name`
  24. LIBS="-L$stdcxx_path $LIBS"
  25. fi
  26. AC_CHECK_PROG(HAVE_SDL_CONFIG, sdl-config, yes, no)
  27. AC_ARG_WITH(lua-includes,AC_HELP_STRING([--with-lua-includes=INCLUDE_PATH],[Use Lua library headers installed at specified
  28. path(default=check)]),LUA_INCLUDES="$with_lua_includes")
  29. if test "$LUA_INCLUDES" != ""; then
  30. AC_SUBST([CPPFLAGS],["$CPPFLAGS -I$LUA_INCLUDES"])
  31. fi
  32. AC_ARG_WITH(lua-libs,AC_HELP_STRING([--with-lua-libs=INCLUDE_PATH],[Use Lua library installed at specified
  33. path(default=check)]),LUA_LIBS="$with_lua_libs")
  34. if test "$LUA_LIBS" != ""; then
  35. AC_SUBST([LIBS],["$LIBS -L$LUA_LIBS"])
  36. fi
  37. # Checks for libraries.
  38. if test "$HAVE_SDL_CONFIG" = no; then
  39. AC_MSG_ERROR(sdl-config doesn't exist. Try to check the PATH enviroment.)
  40. else
  41. AC_CHECK_LIB(SDL, SDL_Init,SDL_CFLAGS=`sdl-config --cflags`
  42. SDL_LIBS=`sdl-config --libs`)
  43. fi
  44. LIBS="$LIBS $SDL_LIBS"
  45. CPPFLAGS="$CPPFLAGS $SDL_CFLAGS"
  46. AC_CHECK_LIB(SDL_mixer,main,,AC_MSG_ERROR([SDL_mixer library not found. Please install it.]))
  47. AC_CHECK_LIB(SDL_image,IMG_Load,,AC_MSG_ERROR([SDL_image library not found. Please install it.]))
  48. AC_CHECK_LIB(SDL_ttf,main,,AC_MSG_ERROR([SDL_ttf library not found. Please install it.]))
  49. AC_CHECK_LIB(lua,main,,AC_MSG_ERROR([lua library not found. Please install it.]))
  50. # Checks for header files.
  51. AC_HEADER_STDC
  52. AC_CHECK_HEADERS([fcntl.h stdlib.h string.h])
  53. AC_CHECK_HEADER(lstate.h,,AC_MSG_ERROR([lstate.h header not found. Please install it.]))
  54. AC_LANG_PUSH(C++)
  55. CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
  56. AC_CHECK_HEADERS([boost/filesystem.hpp boost/algorithm/string.hpp boost/algorithm/string/replace.hpp boost/filesystem/operations.hpp boost/assign/std/vector.hpp boost/algorithm/string/find.hpp boost/function.hpp boost/bind.hpp],,AC_MSG_ERROR([Required boost headers not found. Please install it.]))
  57. AC_LANG_POP(C++)
  58. # Checks for typedefs, structures, and compiler characteristics.
  59. AC_HEADER_STDBOOL
  60. AC_C_CONST
  61. AC_C_INLINE
  62. # Checks for library functions.
  63. AC_FUNC_ALLOCA
  64. AC_FUNC_MALLOC
  65. AC_FUNC_SELECT_ARGTYPES
  66. AC_CHECK_FUNCS([lua_pushhstring lua_calchash],, AC_MSG_ERROR([Lua required fuctions not found]))
  67. AC_CHECK_FUNCS([atexit memset pow select sqrt])
  68. AC_OUTPUT(Makefile lib/Makefile client/Makefile server/Makefile AI/Makefile)