1AC_DEFUN([MDL_HAVE_OPENGL], 2[ 3 AC_REQUIRE([AC_PROG_CC]) 4 AC_REQUIRE([AC_PATH_X]) 5 AC_REQUIRE([AC_PATH_XTRA]) 6 7 AC_CACHE_CHECK([for OpenGL], mdl_cv_have_OpenGL, 8 [ 9dnl Check for Mesa first, unless we were asked not to. 10 AC_ARG_WITH([--with-Mesa], 11 [Prefer the Mesa library over a vendors native OpenGL library (default=yes)], 12 with_Mesa_help_string) 13 AC_ARG_ENABLE(Mesa, $with_Mesa_help_string, use_Mesa=$enableval, use_Mesa=yes) 14 15 if test x"$use_Mesa" = xyes; then 16 GL_search_list="MesaGL GL" 17 GLU_search_list="MesaGLU GLU" 18 GLX_search_list="MesaGLX GLX GL" 19 else 20 GL_search_list="GL MesaGL" 21 GLU_search_list="GLU MesaGLU" 22 GLX_search_list="GLX MesaGLX GL" 23 fi 24 25 AC_LANG_SAVE 26 AC_LANG_C 27 28dnl If we are running under X11 then add in the appropriate libraries. 29if test x"$no_x" != xyes; then 30dnl Add everything we need to compile and link X programs to GL_X_CFLAGS 31dnl and GL_X_LIBS. 32 GL_CFLAGS="$X_CFLAGS" 33 GL_X_LIBS="$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS" 34fi 35 GL_save_CPPFLAGS="$CPPFLAGS" 36 CPPFLAGS="$GL_CFLAGS" 37 38 GL_save_LIBS="$LIBS" 39 LIBS="$GL_X_LIBS" 40 41 42 # Save the "AC_MSG_RESULT file descriptor" to FD 8. 43 exec 8>&AC_FD_MSG 44 45 # Temporarily turn off AC_MSG_RESULT so that the user gets pretty 46 # messages. 47 exec AC_FD_MSG>/dev/null 48 49 AC_SEARCH_LIBS(glAccum, $GL_search_list, have_GL=yes, have_GL=no) 50 AC_SEARCH_LIBS(gluBeginCurve, $GLU_search_list, have_GLU=yes, have_GLU=no) 51 AC_SEARCH_LIBS(glXChooseVisual, $GLX_search_list, have_GLX=yes, have_GLX=no) 52 53 54 55 # Restore pretty messages. 56 exec AC_FD_MSG>&8 57 58 if test -n "$LIBS"; then 59 mdl_cv_have_OpenGL=yes 60 GL_LIBS="$LIBS" 61 AC_SUBST(GL_CFLAGS) 62 AC_SUBST(GL_LIBS) 63 else 64 mdl_cv_have_OpenGL=no 65 GL_CFLAGS= 66 fi 67 68dnl Reset GL_X_LIBS regardless, since it was just a temporary variable 69dnl and we don't want to be global namespace polluters. 70 GL_X_LIBS= 71 72 LIBS="$GL_save_LIBS" 73 CPPFLAGS="$GL_save_CPPFLAGS" 74 75 AC_LANG_RESTORE 76 77dnl bugfix: dont forget to cache this variables, too 78 mdl_cv_GL_CFLAGS="$GL_CFLAGS" 79 mdl_cv_GL_LIBS="$GL_LIBS" 80 mdl_cv_have_GL="$have_GL" 81 mdl_cv_have_GLU="$have_GLU" 82 mdl_cv_have_GLX="$have_GLX" 83 ]) 84 GL_CFLAGS="$mdl_cv_GL_CFLAGS" 85 GL_LIBS="$mdl_cv_GL_LIBS" 86 have_GL="$mdl_cv_have_GL" 87 have_GLU="$mdl_cv_have_GLU" 88 have_GLX="$mdl_cv_have_GLX" 89]) 90dnl endof bugfix -ainan 91 92