1# Process this file with autoconf to produce a configure script. 2AC_INIT(src/driver.c) 3AM_INIT_AUTOMAKE(rss-glx,0.9.0) 4AM_CONFIG_HEADER(config.h) 5 6# Checks for programs. 7AC_PROG_AWK 8 9AC_USE_SYSTEM_EXTENSIONS 10AM_PROG_CC_C_O 11AC_PROG_CC_C99 12AC_C_BIGENDIAN 13 14if test "x$GCC" = xyes; then 15 CFLAGS="-O2" 16fi 17AC_ARG_ENABLE([debug], [AC_HELP_STRING([--enable-debug], 18 [build with debugging information default=no])], 19 [test "$enableval" = "yes" && CFLAGS="-g"]) 20if test "x$GCC" = xyes; then 21 CFLAGS="$CFLAGS -Wall" 22fi 23 24AC_PROG_CXX 25 26if test "x$GXX" = xyes; then 27 CXXFLAGS="-O2" 28fi 29AC_ARG_ENABLE([debug], [AC_HELP_STRING([--enable-debug], 30 [build with debugging information default=no])], 31 [test "$enableval" = "yes" && CXXFLAGS="-g"]) 32if test "x$GXX" = xyes; then 33 CXXFLAGS="$CXXFLAGS -Wall" 34fi 35 36AC_PROG_INSTALL 37AM_DISABLE_SHARED 38AC_PROG_LIBTOOL 39AC_PROG_LN_S 40 41# Checks for libraries. 42AC_CHECK_LIB([m], [pow],,AC_MSG_ERROR(-lm was not found but required.)) 43 44AC_ARG_ENABLE(bzip2, [ --disable-bzip2 Don't compress textures/audio with bzip2.]) 45if test "x$enable_bzip2" != "xno" ; then 46 AC_CHECK_LIB([bz2], [BZ2_bzBuffToBuffCompress], AC_SUBST(BZIP2, -lbz2) AC_DEFINE([HAVE_LIBBZ2], [], [libbz2 exists.])) 47fi 48 49# Checks for header files. 50AC_HEADER_STDC 51AC_PATH_XTRA 52 53if test "x${ac_cv_have_x:0:10}" != "xhave_x=yes"; then 54 AC_MSG_ERROR([X11 is missing but required.]) 55fi 56 57CFLAGS="$CFLAGS $X_CFLAGS" 58CPPFLAGS="$CPPFLAGS $X_CFLAGS" 59LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $LIBS" 60 61# Checks for typedefs, structures, and compiler characteristics. 62AC_C_CONST 63AC_C_INLINE 64AC_HEADER_TIME 65 66# Checks for library functions. 67AC_CHECK_FUNCS(getopt,,AC_MSG_ERROR([getopt is missing but required.])) 68AC_CHECK_HEADERS([getopt.h bzlib.h]) 69 70AC_CHECK_FUNCS(gettimeofday,,AC_MSG_ERROR([gettimeofday is missing but required.])) 71 72AC_CHECK_FUNCS(nanosleep) 73if test "x$ac_cv_func_nanosleep" = "xno" ; then 74 echo "Hrm, maybe nanosleep is in -lrt"; 75 AC_CHECK_LIB([rt], [nanosleep]) 76 77 unset ac_cv_func_nanosleep 78 AC_CHECK_FUNCS(nanosleep) 79fi 80 81AC_CHECK_FUNCS(random_r nrand48) 82 83# Check for ImageMagick. 84PKG_CHECK_MODULES(Wand, Wand >= 6.4) 85 86if test -d src/skyrocket_sounds ; then 87 AC_ARG_ENABLE(sound, [ --disable-sound Don't compile with sound.]) 88else 89 echo "Audio samples not found, disabling sound."; 90 enable_sound=no 91fi 92 93if test "x$enable_sound" != "xno" ; then 94 PKG_CHECK_MODULES(freealut, freealut >= 1.0.0, AM_CONDITIONAL(WITHSOUND, true) AC_DEFINE([HAVE_OPENAL], , [OpenAL is available for use.]), AM_CONDITIONAL(WITHSOUND, false)) 95else 96 AM_CONDITIONAL(WITHSOUND, false) 97fi 98 99AC_CHECK_HEADERS([pthread.h]) 100if test "x$ac_cv_header_pthread_h" = "xyes" ; then 101 # Maybe we don't need to link squat 102 AC_CHECK_FUNCS(pthread_create) 103 104 if test "x$ac_cv_func_pthread_create" = "xno" ; then 105 AC_CHECK_LIB([pthread], [pthread_create], AC_SUBST(PTHREAD_LIBS, "-lpthread")) 106 107 if test "x$ac_cv_lib_pthread_pthread_create" = "xno" ; then 108 AC_CHECK_LIB([c_r], [pthread_create], AC_SUBST(PTHREAD_LIBS, "-lc_r")) 109 110 if test "x$ac_cv_lib_c_r_pthread_create" = "xno"; then 111 missing_pthread=yes 112 fi 113 fi 114 fi 115else 116 missing_pthread=yes 117fi 118 119if test "x$missing_pthread" = "xyes" ; then 120 AC_MSG_ERROR([pthreads is missing but required.]) 121fi 122 123# Check for OpenGL headers first. 124AC_CHECK_HEADER([GL/gl.h]) 125 126if test "x$ac_cv_header_GL_gl_h" = "xno" ; then 127 CFLAGS="$CFLAGS -I/usr/openwin/share/include" 128 CPPFLAGS="$CPPFLAGS -I/usr/openwin/share/include" 129 130 echo "Hrm, maybe GL/gl.h is in /usr/openwin/share/include"; 131 unset ac_cv_header_GL_gl_h 132 AC_CHECK_HEADER(GL/gl.h,,AC_MSG_ERROR([[No gl.h found.]])) 133fi 134 135AC_CHECK_HEADER([GL/glx.h],,AC_MSG_ERROR([[No glx.h found.]])) 136 137AC_CHECK_LIB([GL],[glNewList]) 138if test "x$ac_cv_lib_GL_glNewList" = "xno" ; then 139 dnl Check for MesaGL. 140 AC_CHECK_LIB([MesaGL],[glNewList],,AC_MSG_ERROR(GL library was not found.)) 141fi 142 143# Check for GLU headers. 144AC_CHECK_HEADER(GL/glu.h,,AC_MSG_ERROR([[No glu.h found.]])) 145 146AC_CHECK_LIB([GLU],[gluLookAt]) 147if test "x$ac_cv_lib_GLU_gluLookAt" = "xno"; then 148 dnl Check for MesaGLU. 149 AC_CHECK_LIB([MesaGLU],[gluLookAt],,AC_MSG_ERROR(GLU library was not found.)) 150fi 151 152AC_CHECK_HEADERS([GL/glew.h]) 153 154if test "x$ac_cv_header_GL_glew_h" = "xyes" ; then 155 AC_CHECK_LIB([GLEW], [glewInit], AC_SUBST(GLEW, -lGLEW) AC_DEFINE([HAVE_GLEW], , [GLEW is available for use.]), AC_MSG_ERROR([Install GLEW 1.3.1 or better])) 156 AM_CONDITIONAL(WITHGLEW, test "x$ac_cv_lib_GLEW_glewInit" = "xyes") 157else 158 AM_CONDITIONAL(WITHGLEW, false) 159fi 160 161AC_CHECK_HEADER([X11/extensions/dpms.h], AC_SEARCH_LIBS([DPMSInfo], [Xext], AC_DEFINE([HAVE_DPMS_EXT], [], [DPMS exists.])), [], [#include <X11/Xlib.h>]) 162 163AC_ARG_WITH(configdir, [ --with-configdir Where is xscreensaver stashing its screensaver configs?]) 164 165if test "$with_configdir" != "" ; then 166 AC_SUBST(configdir, $with_configdir) 167 INSTALL_XSCREENSAVER_CONFIG_FILES=yes 168else 169 which_xscreensaverdemo=`which xscreensaver-demo 2> /dev/null` 170 if test -x "$which_xscreensaverdemo" ; then 171 with_configdir=`strings $which_xscreensaverdemo | grep "\/config"` 172 173 if test -d "$with_configdir" ; then 174 AC_SUBST(configdir, $with_configdir) 175 INSTALL_XSCREENSAVER_CONFIG_FILES=yes 176 fi 177 fi 178fi 179 180AM_CONDITIONAL(INSTALL_XSCREENSAVER_CONFIG_FILES, test "$INSTALL_XSCREENSAVER_CONFIG_FILES" = "yes") 181 182AC_ARG_WITH(kdessconfigdir, [ --with-kdessconfigdir Where is KDE stashing its screensaver configs?]) 183 184if test "$with_kdessconfigdir" != "" ; then 185 AC_SUBST(kdessconfigdir, $with_kdessconfigdir) 186 INSTALL_KDE_CONFIG_FILES=yes 187else 188 if `which kde4-config 2> /dev/null`; then 189 for ii in `kde4-config --path services | sed -e 's/:/\n/g' | grep \`kde4-config --prefix\``; do 190 with_kdessconfigdir=$ii/ScreenSavers 191 192 if test -d "$with_kdessconfigdir" ; then 193 AC_SUBST(kdessconfigdir, $with_kdessconfigdir) 194 INSTALL_KDE_CONFIG_FILES=yes 195 break 196 fi 197 done 198 fi 199fi 200 201AM_CONDITIONAL(INSTALL_KDE_CONFIG_FILES, test "$INSTALL_KDE_CONFIG_FILES" = "yes") 202 203PKG_CHECK_MODULES(quesoglc, quesoglc >= 0.7, AC_DEFINE([HAVE_GLC], , [QuesoGLC is available for use.]), AC_DEFINE([MISSING_GLC], , [QuesoGLC not available.])) 204 205AC_OUTPUT([ 206 Makefile 207 src/Makefile 208 src/Implicit/Makefile 209 src/rsMath/Makefile 210 src/PixelCity/Makefile 211 utils/Makefile 212]) 213