From 1d3d1732bd46428a857031270d517a80627756dc Mon Sep 17 00:00:00 2001 From: Neil Roberts Date: Tue, 8 May 2012 15:53:25 +0100 Subject: [PATCH] Fixes for building with --disable-gl MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes a few problems that occur when only using a GLES2 header. • The use of GL_CLAMP_TO_BORDER and GL_MIRRORED_REPEAT were moved from cogl-pipelinelayer-state.h to cogl-sampler-cache-private.h but the corresponding defines were not. • cogl-sampler-cache.c was using GL_TEXTURE_WRAP_R but this is only defined as GL_TEXTURE_WRAP_R_OES from the GLES2 header so it needs a #define. • cogl-framebuffer-private.h uses GLuint but it does not include cogl-gl-header.h. It gets away with this when GLX support is enabled because the GL header would be included via glx.h. Reviewed-by: Robert Bragg (cherry picked from commit 9cdb87c864fc262c4b26c13963670d60d7c18058) --- cogl/cogl-framebuffer-private.h | 1 + cogl/cogl-pipeline-layer-private.h | 8 -------- cogl/cogl-sampler-cache-private.h | 8 ++++++++ cogl/cogl-sampler-cache.c | 4 ++++ 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/cogl/cogl-framebuffer-private.h b/cogl/cogl-framebuffer-private.h index 856f90968..4c95f7340 100644 --- a/cogl/cogl-framebuffer-private.h +++ b/cogl/cogl-framebuffer-private.h @@ -31,6 +31,7 @@ #include "cogl-winsys-private.h" #include "cogl-attribute-private.h" #include "cogl-offscreen.h" +#include "cogl-gl-header.h" #ifdef COGL_HAS_XLIB_SUPPORT #include diff --git a/cogl/cogl-pipeline-layer-private.h b/cogl/cogl-pipeline-layer-private.h index b6724735e..84ccd9d6e 100644 --- a/cogl/cogl-pipeline-layer-private.h +++ b/cogl/cogl-pipeline-layer-private.h @@ -39,14 +39,6 @@ #include -/* This isn't defined in the GLES headers */ -#ifndef GL_CLAMP_TO_BORDER -#define GL_CLAMP_TO_BORDER 0x812d -#endif -#ifndef GL_MIRRORED_REPEAT -#define GL_MIRRORED_REPEAT 0x8370 -#endif - typedef struct _CoglPipelineLayer CoglPipelineLayer; #define COGL_PIPELINE_LAYER(OBJECT) ((CoglPipelineLayer *)OBJECT) diff --git a/cogl/cogl-sampler-cache-private.h b/cogl/cogl-sampler-cache-private.h index 4eb750390..0149751d3 100644 --- a/cogl/cogl-sampler-cache-private.h +++ b/cogl/cogl-sampler-cache-private.h @@ -28,6 +28,14 @@ #include "cogl-context.h" #include "cogl-gl-header.h" +/* These aren't defined in the GLES headers */ +#ifndef GL_CLAMP_TO_BORDER +#define GL_CLAMP_TO_BORDER 0x812d +#endif +#ifndef GL_MIRRORED_REPEAT +#define GL_MIRRORED_REPEAT 0x8370 +#endif + /* GL_ALWAYS is just used here as a value that is known not to clash * with any valid GL wrap modes. * diff --git a/cogl/cogl-sampler-cache.c b/cogl/cogl-sampler-cache.c index b7bb4da26..f91983c5d 100644 --- a/cogl/cogl-sampler-cache.c +++ b/cogl/cogl-sampler-cache.c @@ -31,6 +31,10 @@ #include "cogl-sampler-cache-private.h" #include "cogl-context-private.h" +#ifndef GL_TEXTURE_WRAP_R +#define GL_TEXTURE_WRAP_R 0x8072 +#endif + struct _CoglSamplerCache { CoglContext *context;