From: Christian König Date: Wed, 20 Jan 2016 15:19:08 +0000 (+0100) Subject: st/mesa: conditionally enable GL_NV_vdpau_interop X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=37402aa4c6216eec5f60ebef8a8f24fcbd61f646;p=mesa.git st/mesa: conditionally enable GL_NV_vdpau_interop Only enable it when we compile the state tracker as well. Signed-off-by: Christian König Reviewed-by: Ilia Mirkin --- diff --git a/configure.ac b/configure.ac index 3b7703088fb..49be14709df 100644 --- a/configure.ac +++ b/configure.ac @@ -1735,6 +1735,7 @@ AM_CONDITIONAL(HAVE_ST_XVMC, test "x$enable_xvmc" = xyes) if test "x$enable_vdpau" = xyes; then PKG_CHECK_MODULES([VDPAU], [vdpau >= $VDPAU_REQUIRED]) gallium_st="$gallium_st vdpau" + DEFINES="$DEFINES -DHAVE_ST_VDPAU" fi AM_CONDITIONAL(HAVE_ST_VDPAU, test "x$enable_vdpau" = xyes) diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index 063daaec688..42d347c6600 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -1067,12 +1067,14 @@ void st_init_extensions(struct pipe_screen *screen, extensions->ARB_ES3_compatibility = GL_TRUE; } +#ifdef HAVE_ST_VDPAU if (screen->get_video_param && screen->get_video_param(screen, PIPE_VIDEO_PROFILE_UNKNOWN, PIPE_VIDEO_ENTRYPOINT_BITSTREAM, PIPE_VIDEO_CAP_SUPPORTS_INTERLACED)) { extensions->NV_vdpau_interop = GL_TRUE; } +#endif if (screen->get_shader_param(screen, PIPE_SHADER_VERTEX, PIPE_SHADER_CAP_DOUBLES) && diff --git a/src/mesa/state_tracker/st_vdpau.c b/src/mesa/state_tracker/st_vdpau.c index 63af1196af1..71dd15bc4fe 100644 --- a/src/mesa/state_tracker/st_vdpau.c +++ b/src/mesa/state_tracker/st_vdpau.c @@ -49,6 +49,8 @@ #include "st_format.h" #include "st_cb_flush.h" +#ifdef HAVE_ST_VDPAU + static void st_vdpau_map_surface(struct gl_context *ctx, GLenum target, GLenum access, GLboolean output, struct gl_texture_object *texObj, @@ -180,9 +182,13 @@ st_vdpau_unmap_surface(struct gl_context *ctx, GLenum target, GLenum access, st_flush(st, NULL, 0); } +#endif + void st_init_vdpau_functions(struct dd_function_table *functions) { +#ifdef HAVE_ST_VDPAU functions->VDPAUMapSurface = st_vdpau_map_surface; functions->VDPAUUnmapSurface = st_vdpau_unmap_surface; +#endif }