diff options
author | Ian Romanick <[email protected]> | 2012-01-03 11:35:59 -0800 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2012-01-04 12:43:10 -0800 |
commit | 4becf676e0b09b421821b6895251549ec98d4e5d (patch) | |
tree | 894ffe597aa356454ea45376726f8b43854c99c3 /configure.ac | |
parent | c2e537fef26be6f9995f99e04015d0c1ac9ed5ae (diff) |
glx: More hacking around versions of XCB that lack GLX_ARB_create_context support
Detect whether a new enough version of XCB is installed at configure
time. If it is not, don't enable the extension and don't build the
unit tests.
v2: Move the AM_CONDIATION outside the case-statement so that it is
invoked even for non-GLX builds. This prevents build failures with
osmesa, for example.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
Tested-by: Robert Hooker <[email protected]>
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 2d31273b9d8..dfffdf933ef 100644 --- a/configure.ac +++ b/configure.ac @@ -1030,12 +1030,34 @@ xyesno) GL_LIB_DEPS="$GL_LIB_DEPS $XCB_LIBS" fi + # Check to see if the xcb-glx library is new enough to support + # GLX_ARB_create_context. This bit of hackery is necessary until XCB 1.8 + # is released. + save_CPPFLAGS="$CPPFLAGS" + save_LDFLAGS="$LDFLAGS" + CPPFLAGS="$CPPFLAGS $X11_INCLUDES" + LDFLAGS="$LDFLAGS $GL_LIB_DEPS" + AC_CHECK_LIB(xcb-glx, xcb_glx_create_context_attribs_arb_checked, + [HAVE_XCB_GLX_CREATE_CONTEXT=yes], + [HAVE_XCB_GLX_CREATE_CONTEXT=no]) + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + + if test x$HAVE_XCB_GLX_CREATE_CONTEXT = xyes; then + X11_INCLUDES="$X11_INCLUDES -DHAVE_XCB_GLX_CREATE_CONTEXT" + fi + # need DRM libs, -lpthread, etc. GL_LIB_DEPS="$GL_LIB_DEPS $LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS" GL_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS" ;; esac +# This is outside the case (above) so that it is invoked even for non-GLX +# builds. +AM_CONDITIONAL(HAVE_XCB_GLX_CREATE_CONTEXT, + test x$HAVE_XCB_GLX_CREATE_CONTEXT = xyes) + GLESv1_CM_LIB_DEPS="$LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS" GLESv1_CM_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS" GLESv2_LIB_DEPS="$LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS" |