X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=configure.ac;h=d3d55aedbf694a237b489e60647be74a316a568b;hp=813b6b51fb80a0df31ca10f8785fedfccddde44b;hb=00612586426be6d9a976f141a25ffc1f0d284501;hpb=3f6e44698c38b74bb622ad81ea9d2daa636981d2 diff --git a/configure.ac b/configure.ac index 813b6b5..d3d55ae 100644 --- a/configure.ac +++ b/configure.ac @@ -18,7 +18,7 @@ AM_INIT_AUTOMAKE # # Checks for programs. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AC_PROG_CXX AC_PROG_CC @@ -34,7 +34,7 @@ AC_SUBST(DOXYGEN) # # Configure platform-specific stuff. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ case "${host}" in *mingw32*) @@ -62,7 +62,7 @@ AM_CONDITIONAL([WIN32], test "$WIN32" = "yes") # # Checks for configuration arguments. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AC_ARG_ENABLE([debug], [ --enable-debug include debugging symbols and features], @@ -70,12 +70,12 @@ AC_ARG_ENABLE([debug], [debug=no]) AC_ARG_ENABLE([double-precision], - [ --enable-double-precision use double-precision numbers], + [ --enable-double-precision use doubles instead of floats], [double_precision=$enableval], [double_precision=no]) AC_ARG_ENABLE([profile], - [ --enable-profile make a binary for use with gprof profiler], + [ --enable-profile make a binary with code profiling instructions], [profile=$enableval], [profile=no]) @@ -84,26 +84,31 @@ AC_ARG_ENABLE([extra-warnings], [extra_warnings=$enableval], [extra_warnings=no]) +AC_ARG_ENABLE([clock_gettime], + [ --enable-clock_gettime use clock_gettime() instead of SDL_GetTicks()], + [clock_gettime=$enableval], + [clock_gettime=no]) + AC_ARG_ENABLE([threads], - [ --enable-threads use threads for some parallel tasks], + [ --enable-threads use threads for concurrency where appropriate], [threads=$enableval], [threads=no]) AC_ARG_ENABLE([gtk], - [ --enable-gtk enable GTK+ info/warning dialogs], + [ --enable-gtk enable GTK+ modal dialogs], [gtk=$enableval], [gtk=no]) AC_ARG_ENABLE([qt4], - [ --enable-qt4 enable QT info/warning dialogs], + [ --enable-qt4 enable QT modal dialogs], [qt4=$enableval], [qt4=no]) if test x$debug = xyes then - CFLAGS="$CFLAGS -DDEBUG -Wall -Wno-uninitialized" - CXXFLAGS="$CXXFLAGS -DDEBUG -Wall -Wno-uninitialized" + CFLAGS="$CFLAGS -DDEBUG -ggdb -O0 -Wall -Wno-uninitialized" + CXXFLAGS="$CXXFLAGS -DDEBUG -ggdb -O0 -Wall -Wno-uninitialized" else CFLAGS="$CFLAGS -DNDEBUG" CXXFLAGS="$CXXFLAGS -DNDEBUG" @@ -138,11 +143,11 @@ fi if test x$gtk = xyes then AC_DEFINE([USE_GTK], 1, - [Define to 1 if you want to use GTK+ info/error dialogs.]) + [Define to 1 if you want to use GTK+ modal dialogs.]) elif test x$qt4 = xyes then AC_DEFINE([USE_QT4], 1, - [Define to 1 if you want to use QT4 info/error dialogs.]) + [Define to 1 if you want to use QT4 modal dialogs.]) fi @@ -165,7 +170,7 @@ AC_DEFINE_UNQUOTED([YOINK_DATADIR], ["$DATADIR"], # # Split the version number into components. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ VERSION_MAJOR=$(echo $VERSION | cut -d. -f1) VERSION_MINOR=$(echo $VERSION | cut -d. -f2) @@ -191,7 +196,7 @@ fi # # Checks for system functions/headers and compiler characteristics. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AC_C_STRINGIZE AC_C_INLINE @@ -211,14 +216,19 @@ AC_HEADER_STDC AC_CHECK_HEADERS([stddef.h stdint.h stdlib.h string.h unistd.h]) ##### clock_gettime ##### -AC_SEARCH_LIBS([clock_gettime], [rt], - [AC_DEFINE([HAVE_CLOCK_GETTIME], 1, - [Define to 1 if you have the 'clock_gettime' function.])]) +if test x$clock_gettime = xyes +then + AC_SEARCH_LIBS([clock_gettime], [rt], + [AC_DEFINE([HAVE_CLOCK_GETTIME], 1, + [Define to 1 if you have the 'clock_gettime' function.])]) +fi # # Checks for build dependencies. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +echo "checking for dependencies..." ##### boost ##### website="http://www.boost.org/" @@ -229,47 +239,30 @@ BOOST_FUNCTION ##### SDL ##### website="http://www.libsdl.org/" -AM_PATH_SDL([1.2.10], - [CFLAGS="$CFLAGS $SDL_CFLAGS" - CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" - LIBS="$LIBS $SDL_LIBS"]) +PKG_CHECK_MODULES([SDL], [sdl], + [LIBS="$LIBS $SDL_LIBS" + CFLAGS="$CFLAGS $SDL_CFLAGS" + CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"], + [missing=yes + echo "***** Missing SDL ($website) *****"]) ##### opengl, glu ##### website="http://www.mesa3d.org/" -AC_CHECK_HEADERS([GL/gl.h GL/glu.h],, - [missing=yes - echo "***** Missing GL headers ($website) *****"]) -if test x$WIN32 = xyes -then -# autoconf library search macro doesn't find opengl32 on windows because it uses -# different name hashing or something, but it links fine; assume it's there - LIBS="$LIBS -lglu32 -lopengl32" -else - AC_SEARCH_LIBS([glEnable], [GL MesaGL],, - [missing=yes - echo "***** Missing libGL ($website) *****"]) - AC_SEARCH_LIBS([gluDisk], [GLU MesaGLU],, - [missing=yes - echo "***** Missing libGLU ($website) *****"]) -fi - -##### openal ##### -website="http://connect.creativelabs.com/openal/" -AC_CHECK_HEADERS([AL/al.h AL/alc.h],, - [missing=yes - echo "***** Missing OpenAL headers ($website) *****"]) -AC_SEARCH_LIBS([alEnable], [openal OpenAL32],, - [missing=yes - echo "***** Missing libopenal ($website) *****"]) +PKG_CHECK_MODULES([OPENGL], [gl glu], + [LIBS="$LIBS $OPENGL_LIBS" + CFLAGS="$CFLAGS $OPENGL_CFLAGS" + CXXFLAGS="$CXXFLAGS $GLU_CFLAGS"], + [missing=yes + echo "***** Missing OpenGL ($website) *****"]) ##### liblua ##### website="http://www.lua.org/" -AC_CHECK_HEADERS([lua.h],, - [missing=yes - echo "***** Missing lua headers ($website) *****"]) -AC_SEARCH_LIBS([lua_load], [lua],, - [missing=yes - echo "***** Missing liblua ($website) *****"]) +PKG_CHECK_MODULES([LUA], [lua], + [LIBS="$LIBS $LUA_LIBS" + CFLAGS="$CFLAGS $LUA_CFLAGS" + CXXFLAGS="$CXXFLAGS $LUA_CFLAGS"], + [missing=yes + echo "***** Missing liblua ($website) *****"]) ##### libpng ##### website="http://www.libpng.org/pub/png/libpng.html" @@ -280,6 +273,15 @@ PKG_CHECK_MODULES([PNG], [libpng], [missing=yes echo "***** Missing libpng ($website) *****"]) +##### openal ##### +website="http://connect.creativelabs.com/openal/" +PKG_CHECK_MODULES([OPENAL], [openal], + [LIBS="$LIBS $OPENAL_LIBS" + CFLAGS="$CFLAGS $OPENAL_CFLAGS" + CXXFLAGS="$CXXFLAGS $OPENAL_CFLAGS"], + [missing=yes + echo "***** Missing OpenAL ($website) *****"]) + ##### libvorbis ##### website="http://www.xiph.org/downloads/" PKG_CHECK_MODULES([VORBIS], [vorbisfile], @@ -316,13 +318,13 @@ fi if test x$missing == xyes then - AC_MSG_WARN([It looks like you're missing some dependencies--building may fail.]) + AC_MSG_ERROR([Please resolve the missing dependencies, and try again.]) fi # # Find the game resources to install. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ DATA_FILES=$(echo $(cd data && find . -name "*.lua" \ -o -name "*.ogg" \ @@ -333,7 +335,7 @@ AC_SUBST([DATA_FILES]) # # Create the build files. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AC_CONFIG_FILES([Makefile data/Makefile @@ -341,12 +343,6 @@ AC_CONFIG_FILES([Makefile doc/yoink.6 src/Makefile]) -if test x$WIN32 = xyes -then - AC_CONFIG_FILES([win32/Makefile win32/mkpackage.sh win32/yoink.nsi]) -fi - - AC_CONFIG_HEADERS([src/config.h]) AC_OUTPUT @@ -354,18 +350,18 @@ AC_OUTPUT # # Print a friendly little message. -#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ echo "" echo " Configuration complete! :-)" echo "" -echo " Target: $target" -echo " Prefix: $prefix" -echo " Data Directory: $DATADIR" -echo " Debug: $debug" -echo " Double Precision: $double_precision" -echo " Profile: $profile" -echo " Extra Warnings: $extra_warnings" +echo " Host: $target" +echo " Prefix: $prefix" +echo " Data: $DATADIR" +echo "" +echo " CXX: $CXX" +echo " CXXFLAGS: $(echo $CXXFLAGS)" +echo " LIBS: $(echo $LIBS)" echo "" echo " To finish the installation, execute:" echo " make"