1AC_INIT(dunelegacy, 0.96.4, http://dunelegacy.sourceforge.net) 2 3AC_CANONICAL_BUILD 4 5AC_USE_SYSTEM_EXTENSIONS 6 7AM_INIT_AUTOMAKE([subdir-objects]) 8 9AC_CONFIG_MACRO_DIR([m4]) 10 11AC_PROG_CXX 12 13if test "$prefix" = "" ; then 14 dunelegacydatadir='data' 15else 16 dunelegacydatadir='${pkgdatadir}' 17fi 18 19AC_SUBST(dunelegacydatadir) 20 21AC_MSG_CHECKING([if compiling with clang]) 22 23AC_COMPILE_IFELSE( 24[AC_LANG_PROGRAM([], [[ 25#ifndef __clang__ 26 not clang 27#endif 28]])], 29[CLANG=yes], [CLANG=no]) 30 31AC_MSG_RESULT([$CLANG]) 32 33if test "x$CLANG" = xyes; then 34 CXXFLAGS="-std=c++11 -O3 -pipe -pedantic -Weverything -Wno-sign-conversion -Wno-conversion -Wno-shadow -Wno-missing-noreturn -Wno-padded -Wno-packed -Wno-weak-vtables -Wno-c++11-narrowing -Wno-cast-align -Wno-unreachable-code -Wno-missing-prototypes -Wno-float-equal -Wno-global-constructors -Wno-exit-time-destructors -Wno-format-nonliteral -Wno-unused-macros -Wextra -Wno-unused-parameter" 35else 36 CXXFLAGS="-O3 -std=gnu++11 -pipe -pedantic -Wall -Wextra -Wno-unused-parameter -DNDEBUG" 37fi 38 39AC_ARG_ENABLE([debug], 40 [AS_HELP_STRING([--enable-debug], 41 [compile with debug information @<:@default=disabled@:>@])], 42 [], 43 []) 44 45if test "$enable_debug" = "yes" ; then 46 CXXFLAGS="$CXXFLAGS -g" 47fi 48 49dnl Check for SDL library 50dnl Check for SDL_mixer library. 51SDL_VERSION=2.0.0 52AM_PATH_SDL2($SDL_VERSION, : , AC_MSG_ERROR([*** SDL2 version $SDL_VERSION not found!])) 53dnl PKG_CHECK_MODULES(SDL, sdl2 SDL2_mixer) 54CFLAGS="$CFLAGS $SDL_CFLAGS" 55CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" 56LIBS="$LIBS $SDL_LIBS" 57 58dnl Check for SDL_mixer library. 59AC_CHECK_LIB(SDL2_mixer, 60 Mix_OpenAudio, 61 LIBS="$LIBS -lSDL2_mixer", 62 AC_MSG_ERROR([*** SDL2_mixer library not found!]) 63) 64 65dnl enet defines 66AC_CHECK_FUNC(gethostbyaddr_r, [AC_DEFINE(HAS_GETHOSTBYADDR_R)]) 67AC_CHECK_FUNC(gethostbyname_r, [AC_DEFINE(HAS_GETHOSTBYNAME_R)]) 68AC_CHECK_FUNC(poll, [AC_DEFINE(HAS_POLL)]) 69AC_CHECK_FUNC(fcntl, [AC_DEFINE(HAS_FCNTL)]) 70AC_CHECK_FUNC(inet_pton, [AC_DEFINE(HAS_INET_PTON)]) 71AC_CHECK_FUNC(inet_ntop, [AC_DEFINE(HAS_INET_NTOP)]) 72 73AC_CHECK_MEMBER(struct msghdr.msg_flags, [AC_DEFINE(HAS_MSGHDR_FLAGS)], , [#include <sys/socket.h>]) 74 75AC_CHECK_TYPE(socklen_t, [AC_DEFINE(HAS_SOCKLEN_T)], , 76 #include <sys/types.h> 77 #include <sys/socket.h> 78) 79 80AC_EGREP_HEADER(MSG_MAXIOVLEN, /usr/include/sys/socket.h, AC_DEFINE(ENET_BUFFER_MAXIMUM, [MSG_MAXIOVLEN])) 81AC_EGREP_HEADER(MSG_MAXIOVLEN, socket.h, AC_DEFINE(ENET_BUFFER_MAXIMUM, [MSG_MAXIOVLEN])) 82 83if test "${host}" = "i686-w64-mingw32" ; then 84 LIBS="$LIBS -lws2_32 -lwinmm -static-libgcc -static-libstdc++ -Wl,-Bstatic -lstdc++ -lpthread -Wl,-Bdynamic resource.o" 85 dunelegacydatadir='.' 86elif test "${host}" = "x86_64-w64-mingw32" ; then 87 LIBS="$LIBS -lws2_32 -lwinmm -static-libgcc -static-libstdc++ -Wl,-Bstatic -lstdc++ -lpthread -Wl,-Bdynamic resource.o" 88 dunelegacydatadir='.' 89fi 90 91AC_CONFIG_FILES(Makefile src/Makefile tests/Makefile) 92AC_OUTPUT 93