| Back to the Main Page. | mdl_have_opengl |
Download the M4 Source. |
MDL_HAVE_OPENGL
2002-09-25 0.5.65 : InstalledPackages
Matthew D. Langston <langston@SLAC.Stanford.EDU>
license: GPLWithACException
have_GL have_GLU have_GLX have_glut ftp://ftp.slac.stanford.edu/users/langston/autoconf/ac_opengl-0.01.tar.gz
AC_DEFUN([MDL_HAVE_OPENGL],
[
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([AC_PATH_X])
AC_REQUIRE([AC_PATH_XTRA])
AC_CACHE_CHECK([for OpenGL], mdl_cv_have_OpenGL,
[
dnl Check for Mesa first, unless we were asked not to.
AC_ARG_WITH([--with-Mesa],
[Prefer the Mesa library over a vendors native OpenGL library (default=yes)],
with_Mesa_help_string)
AC_ARG_ENABLE(Mesa, $with_Mesa_help_string, use_Mesa=$enableval, use_Mesa=yes)
if test x"$use_Mesa" = xyes; then
GL_search_list="MesaGL GL"
GLU_search_list="MesaGLU GLU"
GLX_search_list="MesaGLX GLX"
else
GL_search_list="GL MesaGL"
GLU_search_list="GLU MesaGLU"
GLX_search_list="GLX MesaGLX"
fi
AC_LANG_SAVE
AC_LANG_C
dnl If we are running under X11 then add in the appropriate libraries.
if test x"$no_x" != xyes; then
dnl Add everything we need to compile and link X programs to GL_X_CFLAGS
dnl and GL_X_LIBS.
GL_CFLAGS="$X_CFLAGS"
GL_X_LIBS="$X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
fi
GL_save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$GL_CFLAGS"
GL_save_LIBS="$LIBS"
LIBS="$GL_X_LIBS"
# Save the "AC_MSG_RESULT file descriptor" to FD 8.
exec 8>&AC_FD_MSG
# Temporarily turn off AC_MSG_RESULT so that the user gets pretty
# messages.
exec AC_FD_MSG>/dev/null
AC_SEARCH_LIBS(glAccum, $GL_search_list, have_GL=yes, have_GL=no)
AC_SEARCH_LIBS(gluBeginCurve, $GLU_search_list, have_GLU=yes, have_GLU=no)
AC_SEARCH_LIBS(glXChooseVisual, $GLX_search_list, have_GLX=yes, have_GLX=no)
AC_SEARCH_LIBS(glutInit, glut, have_glut=yes, have_glut=no)
# Restore pretty messages.
exec AC_FD_MSG>&8
if test -n "$LIBS"; then
mdl_cv_have_OpenGL=yes
GL_LIBS="$LIBS"
AC_SUBST(GL_CFLAGS)
AC_SUBST(GL_LIBS)
else
mdl_cv_have_OpenGL=no
GL_CFLAGS=
fi
dnl Reset GL_X_LIBS regardless, since it was just a temporary variable
dnl and we don't want to be global namespace polluters.
GL_X_LIBS=
LIBS="$GL_save_LIBS"
CPPFLAGS="$GL_save_CPPFLAGS"
AC_LANG_RESTORE
dnl bugfix: dont forget to cache this variables, too
mdl_cv_GL_CFLAGS="$GL_CFLAGS"
mdl_cv_GL_LIBS="$GL_LIBS"
mdl_cv_have_GL="$have_GL"
mdl_cv_have_GLU="$have_GLU"
mdl_cv_have_GLX="$have_GLX"
mdl_cv_have_glut="$have_glut"
])
GL_CFLAGS="$mdl_cv_GL_CFLAGS"
GL_LIBS="$mdl_cv_GL_LIBS"
have_GL="$mdl_cv_have_GL"
have_GLU="$mdl_cv_have_GLU"
have_GLX="$mdl_cv_have_GLX"
have_glut="$mdl_cv_have_glut"
])
dnl endof bugfix -ainan