[Piglit] [PATCH] ext_image_dma_buf_import/intel_external_sampler_only: fix link error
Jordan Justen
jordan.l.justen at intel.com
Fri Apr 11 19:27:16 PDT 2014
Mesa is no longer exporting the symbols of OES_framebuffer_object,
which caused a link error with this test.
In addition, the test needed additional extension checks.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77295
Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
Cc: Ian Romanick <idr at freedesktop.org>
Cc: Dylan Baker <baker.dylan.c at gmail.com>
---
.../intel_external_sampler_only.c | 26 +++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/tests/spec/ext_image_dma_buf_import/intel_external_sampler_only.c b/tests/spec/ext_image_dma_buf_import/intel_external_sampler_only.c
index ee23b7f..fa49793 100644
--- a/tests/spec/ext_image_dma_buf_import/intel_external_sampler_only.c
+++ b/tests/spec/ext_image_dma_buf_import/intel_external_sampler_only.c
@@ -39,6 +39,10 @@ PIGLIT_GL_TEST_CONFIG_BEGIN
PIGLIT_GL_TEST_CONFIG_END
+static PFNGLGENRENDERBUFFERSOESPROC piglit_glGenRenderbuffersOES;
+static PFNGLBINDRENDERBUFFEROESPROC piglit_glBindRenderbufferOES;
+static PFNGLDELETERENDERBUFFERSOESPROC piglit_glDeleteRenderbuffersOES;
+
static EGLImageKHR
create_image(unsigned w, unsigned h, int fd, unsigned stride, unsigned offset)
{
@@ -80,13 +84,13 @@ try_as_render_buffer(EGLImageKHR img)
GLuint rbo;
bool res;
- glGenRenderbuffersOES(1, &rbo);
- glBindRenderbufferOES(GL_RENDERBUFFER_OES, rbo);
+ piglit_glGenRenderbuffersOES(1, &rbo);
+ piglit_glBindRenderbufferOES(GL_RENDERBUFFER_OES, rbo);
glEGLImageTargetRenderbufferStorageOES(GL_RENDERBUFFER_OES, img);
res = piglit_check_gl_error(GL_INVALID_OPERATION);
- glDeleteRenderbuffersOES(1, &rbo);
+ piglit_glDeleteRenderbuffersOES(1, &rbo);
return res;
}
@@ -138,6 +142,22 @@ piglit_init(int argc, char **argv)
piglit_require_egl_extension("EGL_EXT_image_dma_buf_import");
piglit_require_egl_extension("EGL_KHR_image_base");
+ piglit_require_extension("GL_OES_EGL_image");
+ piglit_require_extension("GL_OES_framebuffer_object");
+
+ piglit_glGenRenderbuffersOES =
+ (PFNGLGENRENDERBUFFERSOESPROC)
+ eglGetProcAddress("glGenRenderbuffersOES");
+ piglit_glBindRenderbufferOES =
+ (PFNGLBINDRENDERBUFFEROESPROC)
+ eglGetProcAddress("glBindRenderbufferOES");
+ piglit_glDeleteRenderbuffersOES =
+ (PFNGLDELETERENDERBUFFERSOESPROC)
+ eglGetProcAddress("glDeleteRenderbuffersOES");
+ if (!piglit_glGenRenderbuffersOES ||
+ !piglit_glBindRenderbufferOES ||
+ !piglit_glDeleteRenderbuffersOES)
+ piglit_report_result(PIGLIT_FAIL);
vendor_str = (const char *)glGetString(GL_VENDOR);
if (strncmp(vendor_str, intel_id, sizeof(intel_id) - 1) != 0) {
--
1.9.1
More information about the Piglit
mailing list