diff options
Diffstat (limited to 'configure.ac')
-rwxr-xr-x | configure.ac | 101 |
1 files changed, 66 insertions, 35 deletions
diff --git a/configure.ac b/configure.ac index a774df8f..89a62d96 100755 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,6 @@ AC_PREREQ(2.59) -AC_INIT([Aethyra], [0.0.29], [irarice@gmail.com], [aethyra]) +AC_INIT([The Mana World], [0.0.29], [themanaworld-devel@lists.sourceforge.net], [tmw]) +AM_INIT_AUTOMAKE AC_CONFIG_HEADERS([config.h:config.h.in]) AC_LANG_CPLUSPLUS @@ -32,26 +33,44 @@ AC_CHECK_LIB([pthread], [pthread_create], , AC_MSG_ERROR([ *** Unable to find pthread library])) AC_CHECK_LIB([guichan], [gcnGuichanVersion], , -AC_MSG_ERROR([ *** Unable to find Guichan library (guichan.sf.net)])) +AC_MSG_ERROR([ *** Unable to find Guichan library (http://guichan.sf.net/)])) +AC_CHECK_HEADERS([guichan.hpp], , +AC_MSG_ERROR([ *** Guichan library found but cannot find headers (http://guichan.sf.net/)])) -#AC_CHECK_LIB([guichan_sdl], [gcnSDL], , -#AC_MSG_ERROR([ *** Unable to find Guichan SDL library (guichan.sf.net)])) +if test -n "$SDL_CONFIG"; then + LIBS="$LIBS `$SDL_CONFIG --libs`" + CPPFLAGS="$CPPFLAGS `$SDL_CONFIG --cflags`" +fi +AC_CHECK_LIB([SDL], [SDL_Init], , +AC_MSG_ERROR([ *** Unable to find SDL library (http://www.libsdl.org/)])) +AC_CHECK_HEADERS([SDL.h], , +AC_MSG_ERROR([ *** SDL library found but cannot find headers (http://www.libsdl.org/)])) AC_CHECK_LIB([z], [inflate], , AC_MSG_ERROR([ *** Unable to find zlib (http://www.gzip.org/zlib/)])) AC_CHECK_LIB([physfs], [PHYSFS_init], , -AC_MSG_ERROR([ *** Unable to find PhysFS library (icculus.org/physfs/)])) +AC_MSG_ERROR([ *** Unable to find PhysFS library (http://icculus.org/physfs/)])) +AC_CHECK_HEADERS([physfs.h], , +AC_MSG_ERROR([ *** PhysFS library found but cannot find headers (http://icculus.org/physfs/)])) +if test -n "$CURL_CONFIG"; then + LIBS="$LIBS `$CURL_CONFIG --libs`" + CPPFLAGS="$CPPFLAGS `$CURL_CONFIG --cflags`" +fi AC_CHECK_LIB([curl], [curl_global_init], , AC_MSG_ERROR([ *** Unable to find CURL library (http://curl.haxx.se/)])) -CURL_LIBS=" `curl-config --libs`" -CURL_CFLAGS=" `curl-config --cflags` " -AC_SUBST(CURL_LIBS) -AC_SUBST(CURL_CFLAGS) +AC_CHECK_HEADERS([curl/curl.h], , +AC_MSG_ERROR([ *** CURL library found but cannot find headers (http://curl.haxx.se/)])) +if test -n "$PKG_CONFIG"; then + LIBS="$LIBS `$PKG_CONFIG --libs libxml-2.0`" + CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags libxml-2.0`" +fi AC_CHECK_LIB([xml2], [xmlInitParser], , -AC_MSG_ERROR([ *** Unable to find libxml2 library (xmlsoft.org)])) +AC_MSG_ERROR([ *** Unable to find libxml2 library (http://xmlsoft.org/)])) +AC_CHECK_HEADERS([libxml/xmlreader.h], , +AC_MSG_ERROR([ *** libxml2 library found but cannot find headers (http://xmlsoft.org/)])) AC_CHECK_LIB(png, png_write_info, , AC_MSG_ERROR([ *** Unable to find png library])) @@ -66,19 +85,13 @@ AC_MSG_ERROR([ *** Unable to find SDL_ttf library (http://www.libsdl.org/project AC_CHECK_LIB([SDL_mixer], [Mix_OpenAudio], , AC_MSG_ERROR([ *** Unable to find SDL_mixer library (http://www.libsdl.org/projects/SDL_mixer/)])) -AC_CHECK_LIB(SDL_net, SDLNet_Init, , -AC_MSG_ERROR([ *** Unable to find SDL_net library])) +AC_CHECK_LIB([guichan_sdl], [gcnSDL], , +AC_MSG_ERROR([ *** Unable to find Guichan SDL library (http://guichan.sf.net/)])) # Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS([arpa/inet.h fcntl.h malloc.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h unistd.h]) -# Check for guichan headers -AC_CHECK_HEADERS([guichan.hpp], , -AC_MSG_ERROR([*** Library found but cannot find headers (guichan.sf.net) *** ])) - -AM_INIT_AUTOMAKE - # Option to enable OpenGL AC_ARG_WITH(opengl,[ --without-opengl don't use OpenGL ] ) if test "x$with_opengl" == "xno"; then @@ -87,26 +100,43 @@ else with_opengl=yes AC_CHECK_LIB([GL], [glBegin], , AC_MSG_ERROR([ *** Unable to find OpenGL library])) - AC_DEFINE(USE_OPENGL, 1, [Defines if aethyra should use an OpenGL display]) + AC_DEFINE(USE_OPENGL, 1, [Defines if tmw should use an OpenGL display]) fi -# Search for sdl-config -AC_PATH_PROG(LIBSDL_CONFIG, sdl-config) - -if test -n "$LIBSDL_CONFIG"; then - LIBSDL_LIBS="`$LIBSDL_CONFIG --libs` -lSDL_image -lSDL_mixer -lSDL_ttf" - LIBSDL_CFLAGS="`$LIBSDL_CONFIG --cflags`" - AC_SUBST(LIBSDL_LIBS) - AC_SUBST(LIBSDL_CFLAGS) - - AC_DEFINE_UNQUOTED(HAVE_LIBSDL, 1, - [Defines if your system has the LIBSDL library]) +# Enable either tmwserv or eAthena +AC_ARG_WITH( + [server], + AS_HELP_STRING( + [--with-server=ARG], + [which server to use [[ARG=tmwserv,eathena]] + [(default=eathena)]] + ), + [if test "$withval" = "yes"; then + # default is eathena + with_server="eathena" + elif test "$withval" = "no"; then + AC_MSG_ERROR([$PACKAGE_NAME cannot run without a server.]) + else + with_server="$withval" + fi], + [with_server="eathena"] +) + +if test "$with_server" = "tmwserv"; then + AC_CHECK_LIB([enet], [enet_initialize], , + AC_MSG_ERROR([ *** Unable to find enet library (http://enet.bespin.org/)])) + AC_DEFINE(TMWSERV_SUPPORT, 1, [Defines if tmwserv support is enabled]) +elif test "$with_server" = "eathena"; then + AC_CHECK_LIB(SDL_net, SDLNet_Init, , + AC_MSG_ERROR([ *** Unable to find SDL_net library])) + AC_DEFINE(EATHENA_SUPPORT, 1, [Defines if eAthena support is enabled]) else - AC_DEFINE_UNQUOTED(HAVE_LIBSDL, 0, - [Defines if your system has the LIBSDL library]) - AC_MSG_ERROR([Could not find sdl-config, check http://www.libsdl.org]) + AC_MSG_ERROR([unknown server: $with_server]) fi +AM_CONDITIONAL(SERVER_TMWSERV, test "$with_server" = "tmwserv") +AM_CONDITIONAL(SERVER_EATHENA, test "$with_server" = "eathena") + AC_CONFIG_FILES([ Makefile src/Makefile @@ -124,7 +154,8 @@ po/Makefile.in AC_OUTPUT echo -echo Build with OpenGL: $with_opengl +echo "Build with OpenGL: $with_opengl" +echo "Supported server: $with_server" echo -echo configure complete, now type \"make\" +echo "configure complete, now type \"make\"" echo |