summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2024-08-01 14:06:10 +0000
committerCoprDistGit <infra@openeuler.org>2024-08-01 14:06:10 +0000
commiteb94d0847d2cbe88dc61aed72f00e603621a8540 (patch)
tree91547e3f60a5057201e3e849dfede95256e9e561
parent02a02787e645d8fe7dca050e5219d3320f59de2f (diff)
automatic import of coglopeneuler24.03_LTSopeneuler23.09
-rw-r--r--.gitignore1
-rw-r--r--0001-egl-Use-eglGetPlatformDisplay-not-eglGetDisplay.patch117
-rw-r--r--0002-add-GL_ARB_shader_texture_lod-support.patch96
-rw-r--r--0003-texture-support-copy_sub_image.patch373
-rw-r--r--cogl.spec452
-rw-r--r--sources1
6 files changed, 1040 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..f74f324 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/cogl-1.22.8.tar.xz
diff --git a/0001-egl-Use-eglGetPlatformDisplay-not-eglGetDisplay.patch b/0001-egl-Use-eglGetPlatformDisplay-not-eglGetDisplay.patch
new file mode 100644
index 0000000..a507b2a
--- /dev/null
+++ b/0001-egl-Use-eglGetPlatformDisplay-not-eglGetDisplay.patch
@@ -0,0 +1,117 @@
+From 988e021960eb372be50038fdf0b2874f063c02b6 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 11 Oct 2016 16:16:38 -0400
+Subject: [PATCH] egl: Use eglGetPlatformDisplay not eglGetDisplay
+
+The latter requires the implementation to guess which kind of display it
+is. Different implementations do different thing, in particular glvnd
+does something different from Mesa, and it's better to be explicit about
+what we need.
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+ cogl/cogl-egl.h | 1 -
+ cogl/winsys/cogl-winsys-egl-kms.c | 3 ++-
+ cogl/winsys/cogl-winsys-egl-private.h | 33 +++++++++++++++++++++++++++++++++
+ cogl/winsys/cogl-winsys-egl-wayland.c | 3 ++-
+ cogl/winsys/cogl-winsys-egl-x11.c | 2 +-
+ 5 files changed, 38 insertions(+), 4 deletions(-)
+
+diff --git a/cogl/cogl-egl.h b/cogl/cogl-egl.h
+index cea7b10..5dac55f 100644
+--- a/cogl/cogl-egl.h
++++ b/cogl/cogl-egl.h
+@@ -98,7 +98,6 @@ cogl_egl_context_get_egl_display (CoglContext *context);
+ EGLContext
+ cogl_egl_context_get_egl_context (CoglContext *context);
+
+-
+ COGL_END_DECLS
+
+ /* The gobject introspection scanner seems to parse public headers in
+diff --git a/cogl/winsys/cogl-winsys-egl-kms.c b/cogl/winsys/cogl-winsys-egl-kms.c
+index 4da1f14..ae9f6fc 100644
+--- a/cogl/winsys/cogl-winsys-egl-kms.c
++++ b/cogl/winsys/cogl-winsys-egl-kms.c
+@@ -342,7 +342,8 @@ _cogl_winsys_renderer_connect (CoglRenderer *renderer,
+ goto fail;
+ }
+
+- egl_renderer->edpy = eglGetDisplay ((EGLNativeDisplayType)kms_renderer->gbm);
++ egl_renderer->edpy = cogl_winsys_egl_get_display(EGL_PLATFORM_GBM_KHR,
++ kms_renderer->gbm);
+ if (egl_renderer->edpy == EGL_NO_DISPLAY)
+ {
+ _cogl_set_error (error, COGL_WINSYS_ERROR,
+diff --git a/cogl/winsys/cogl-winsys-egl-private.h b/cogl/winsys/cogl-winsys-egl-private.h
+index 5d21b4f..27ac25c 100644
+--- a/cogl/winsys/cogl-winsys-egl-private.h
++++ b/cogl/winsys/cogl-winsys-egl-private.h
+@@ -200,4 +200,37 @@ CoglBool
+ _cogl_winsys_egl_renderer_connect_common (CoglRenderer *renderer,
+ CoglError **error);
+
++static inline EGLDisplay
++cogl_winsys_egl_get_display (EGLint type, void *native)
++{
++ EGLDisplay dpy = NULL;
++ const char *client_exts = eglQueryString (NULL, EGL_EXTENSIONS);
++
++ if (g_strstr_len (client_exts, -1, "EGL_KHR_platform_base"))
++ {
++ PFNEGLGETPLATFORMDISPLAYEXTPROC get_platform_display =
++ (void *) eglGetProcAddress ("eglGetPlatformDisplay");
++
++ if (get_platform_display)
++ dpy = get_platform_display (type, native, NULL);
++
++ if (dpy)
++ return dpy;
++ }
++
++ if (g_strstr_len (client_exts, -1, "EGL_EXT_platform_base"))
++ {
++ PFNEGLGETPLATFORMDISPLAYEXTPROC get_platform_display =
++ (void *) eglGetProcAddress ("eglGetPlatformDisplayEXT");
++
++ if (get_platform_display)
++ dpy = get_platform_display (type, native, NULL);
++
++ if (dpy)
++ return dpy;
++ }
++
++ return eglGetDisplay ((EGLNativeDisplayType) native);
++}
++
+ #endif /* __COGL_WINSYS_EGL_PRIVATE_H */
+diff --git a/cogl/winsys/cogl-winsys-egl-wayland.c b/cogl/winsys/cogl-winsys-egl-wayland.c
+index 2e22052..463041b 100644
+--- a/cogl/winsys/cogl-winsys-egl-wayland.c
++++ b/cogl/winsys/cogl-winsys-egl-wayland.c
+@@ -289,7 +289,8 @@ _cogl_winsys_renderer_connect (CoglRenderer *renderer,
+ }
+
+ egl_renderer->edpy =
+- eglGetDisplay ((EGLNativeDisplayType) wayland_renderer->wayland_display);
++ cogl_winsys_egl_get_display (EGL_PLATFORM_WAYLAND_KHR,
++ wayland_renderer->wayland_display);
+
+ if (!_cogl_winsys_egl_renderer_connect_common (renderer, error))
+ goto error;
+diff --git a/cogl/winsys/cogl-winsys-egl-x11.c b/cogl/winsys/cogl-winsys-egl-x11.c
+index 724a4d0..a7e9c2f 100644
+--- a/cogl/winsys/cogl-winsys-egl-x11.c
++++ b/cogl/winsys/cogl-winsys-egl-x11.c
+@@ -278,7 +278,7 @@ _cogl_winsys_renderer_connect (CoglRenderer *renderer,
+ goto error;
+
+ egl_renderer->edpy =
+- eglGetDisplay ((EGLNativeDisplayType) xlib_renderer->xdpy);
++ cogl_winsys_egl_get_display (EGL_PLATFORM_X11_KHR, xlib_renderer->xdpy);
+
+ if (!_cogl_winsys_egl_renderer_connect_common (renderer, error))
+ goto error;
+--
+2.9.3
+
diff --git a/0002-add-GL_ARB_shader_texture_lod-support.patch b/0002-add-GL_ARB_shader_texture_lod-support.patch
new file mode 100644
index 0000000..7a39df3
--- /dev/null
+++ b/0002-add-GL_ARB_shader_texture_lod-support.patch
@@ -0,0 +1,96 @@
+From 78636289b073d67209a20145ef0dc003f2d77db6 Mon Sep 17 00:00:00 2001
+From: Sian Cao <yinshuiboy@gmail.com>
+Date: Tue, 12 Apr 2016 11:36:51 +0800
+Subject: Add GL_ARB_shader_texture_lod support
+
+The patch is used to do lod biased texturing. I can achieve
+faster blurring of images instead of using large blur radius.
+
+Signed-off-by:
+ Sian Cao <yinshuiboy@gmail.com>: initial
+
+---
+ cogl/cogl-context.h | 1 +
+ cogl/cogl-glsl-shader.c | 13 +++++++++++--
+ cogl/cogl-types.h | 3 ++-
+ cogl/driver/gl/gl/cogl-driver-gl.c | 7 +++++++
+ 4 files changed, 21 insertions(+), 3 deletions(-)
+
+diff --git a/cogl/cogl-context.h b/cogl/cogl-context.h
+index 07badeb..261ce49 100644
+--- a/cogl/cogl-context.h
++++ b/cogl/cogl-context.h
+@@ -290,6 +290,7 @@ typedef enum _CoglFeatureID
+ COGL_FEATURE_ID_PER_VERTEX_POINT_SIZE,
+ COGL_FEATURE_ID_TEXTURE_RG,
+ COGL_FEATURE_ID_BUFFER_AGE,
++ COGL_FEATURE_ID_SHADER_TEXTURE_LOD,
+
+ /*< private >*/
+ _COGL_N_FEATURE_IDS /*< skip >*/
+diff --git a/cogl/cogl-glsl-shader.c b/cogl/cogl-glsl-shader.c
+index 196e0c7..4fb0eb5 100644
+--- a/cogl/cogl-glsl-shader.c
++++ b/cogl/cogl-glsl-shader.c
+@@ -87,8 +87,8 @@ _cogl_glsl_shader_set_source_with_boilerplate (CoglContext *ctx,
+ const char *vertex_boilerplate;
+ const char *fragment_boilerplate;
+
+- const char **strings = g_alloca (sizeof (char *) * (count_in + 4));
+- GLint *lengths = g_alloca (sizeof (GLint) * (count_in + 4));
++ const char **strings = g_alloca (sizeof (char *) * (count_in + 5));
++ GLint *lengths = g_alloca (sizeof (GLint) * (count_in + 5));
+ char *version_string;
+ int count = 0;
+
+@@ -111,6 +111,15 @@ _cogl_glsl_shader_set_source_with_boilerplate (CoglContext *ctx,
+ lengths[count++] = sizeof (texture_3d_extension) - 1;
+ }
+
++ if (_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_GL_PROGRAMMABLE) &&
++ cogl_has_feature (ctx, COGL_FEATURE_ID_SHADER_TEXTURE_LOD))
++ {
++ static const char shader_texture_lod_ext[] =
++ "#extension GL_ARB_shader_texture_lod : enable\n";
++ strings[count] = shader_texture_lod_ext;
++ lengths[count++] = sizeof (shader_texture_lod_ext) - 1;
++ }
++
+ if (shader_gl_type == GL_VERTEX_SHADER)
+ {
+ strings[count] = vertex_boilerplate;
+diff --git a/cogl/cogl-types.h b/cogl/cogl-types.h
+index 6accf8d..77964c6 100644
+--- a/cogl/cogl-types.h
++++ b/cogl/cogl-types.h
+@@ -470,7 +470,8 @@ typedef enum
+ COGL_FEATURE_MAP_BUFFER_FOR_READ = (1 << 21),
+ COGL_FEATURE_MAP_BUFFER_FOR_WRITE = (1 << 22),
+ COGL_FEATURE_ONSCREEN_MULTIPLE = (1 << 23),
+- COGL_FEATURE_DEPTH_TEXTURE = (1 << 24)
++ COGL_FEATURE_DEPTH_TEXTURE = (1 << 24),
++ COGL_FEATURE_SHADER_TEXTURE_LOD = (1 << 25)
+ } CoglFeatureFlags;
+
+ /**
+diff --git a/cogl/driver/gl/gl/cogl-driver-gl.c b/cogl/driver/gl/gl/cogl-driver-gl.c
+index 716d1dd..f305b6a 100644
+--- a/cogl/driver/gl/gl/cogl-driver-gl.c
++++ b/cogl/driver/gl/gl/cogl-driver-gl.c
+@@ -568,6 +568,13 @@ _cogl_driver_update_features (CoglContext *ctx,
+ COGL_FEATURE_ID_TEXTURE_RECTANGLE, TRUE);
+ }
+
++ if (_cogl_check_extension ("GL_ARB_shader_texture_lod", gl_extensions))
++ {
++ flags |= COGL_FEATURE_SHADER_TEXTURE_LOD;
++ COGL_FLAGS_SET (ctx->features,
++ COGL_FEATURE_ID_SHADER_TEXTURE_LOD, TRUE);
++ }
++
+ if (ctx->glTexImage3D)
+ {
+ flags |= COGL_FEATURE_TEXTURE_3D;
+--
+2.9.5
+
diff --git a/0003-texture-support-copy_sub_image.patch b/0003-texture-support-copy_sub_image.patch
new file mode 100644
index 0000000..33f7dcb
--- /dev/null
+++ b/0003-texture-support-copy_sub_image.patch
@@ -0,0 +1,373 @@
+From d8b34ab0604d80d0be22b8b78e9aa6bf4fac7db0 Mon Sep 17 00:00:00 2001
+From: Sian Cao <yinshuiboy@gmail.com>
+Date: Thu, 27 Oct 2016 15:19:32 +0800
+Subject: texture: Support copy_sub_image
+
+The patch is used to implement feature similar with kwin blur effect
+by being abel to copy partial of framebuffer contents as texture and
+do post blurring.
+
+Signed-off-by:
+ Sian Cao <yinshuiboy@gmail.com>: initial
+ Bowen Li <sensor.wen@gmail.com>: fix coding style
+
+---
+ cogl/cogl-atlas-texture.c | 1 +
+ cogl/cogl-driver.h | 10 ++++++++
+ cogl/cogl-sub-texture.c | 1 +
+ cogl/cogl-texture-2d-sliced.c | 1 +
+ cogl/cogl-texture-2d.c | 30 ++++++++++++++++++++++
+ cogl/cogl-texture-3d.c | 1 +
+ cogl/cogl-texture-private.h | 9 +++++++
+ cogl/cogl-texture-rectangle.c | 1 +
+ cogl/cogl-texture.c | 33 ++++++++++++++++++++++++
+ cogl/cogl-texture.h | 9 +++++++
+ cogl/driver/gl/cogl-texture-2d-gl-private.h | 9 +++++++
+ cogl/driver/gl/cogl-texture-2d-gl.c | 39 +++++++++++++++++++++++++++++
+ cogl/driver/gl/gl/cogl-driver-gl.c | 1 +
+ cogl/driver/gl/gles/cogl-driver-gles.c | 1 +
+ cogl/driver/nop/cogl-driver-nop.c | 1 +
+ cogl/winsys/cogl-texture-pixmap-x11.c | 1 +
+ 16 files changed, 148 insertions(+)
+
+diff --git a/cogl/cogl-atlas-texture.c b/cogl/cogl-atlas-texture.c
+index 1c8b569..e411302 100644
+--- a/cogl/cogl-atlas-texture.c
++++ b/cogl/cogl-atlas-texture.c
+@@ -1027,6 +1027,7 @@ cogl_atlas_texture_vtable =
+ FALSE, /* not primitive */
+ _cogl_atlas_texture_allocate,
+ _cogl_atlas_texture_set_region,
++ NULL, /* copy_sub_image */
+ NULL, /* get_data */
+ _cogl_atlas_texture_foreach_sub_texture_in_region,
+ _cogl_atlas_texture_get_max_waste,
+diff --git a/cogl/cogl-driver.h b/cogl/cogl-driver.h
+index 648228c..4a0aeaf 100644
+--- a/cogl/cogl-driver.h
++++ b/cogl/cogl-driver.h
+@@ -192,6 +192,16 @@ struct _CoglDriverVtable
+ int level,
+ CoglError **error);
+
++ CoglBool
++ (* texture_2d_copy_sub_image) (CoglTexture2D *tex_2d,
++ GLint xoffset,
++ GLint yoffset,
++ GLint x,
++ GLint y,
++ GLsizei width,
++ GLsizei height,
++ CoglError **error);
++
+ /* Reads back the full contents of the given texture and write it to
+ * @data in the given @format and with the given @rowstride.
+ *
+diff --git a/cogl/cogl-sub-texture.c b/cogl/cogl-sub-texture.c
+index 7baf95e..0a16193 100644
+--- a/cogl/cogl-sub-texture.c
++++ b/cogl/cogl-sub-texture.c
+@@ -460,6 +460,7 @@ cogl_sub_texture_vtable =
+ FALSE, /* not primitive */
+ _cogl_sub_texture_allocate,
+ _cogl_sub_texture_set_region,
++ NULL, /* copy_sub_image */
+ NULL, /* get_data */
+ _cogl_sub_texture_foreach_sub_texture_in_region,
+ _cogl_sub_texture_get_max_waste,
+diff --git a/cogl/cogl-texture-2d-sliced.c b/cogl/cogl-texture-2d-sliced.c
+index e76bef6..b0b099f 100644
+--- a/cogl/cogl-texture-2d-sliced.c
++++ b/cogl/cogl-texture-2d-sliced.c
+@@ -1526,6 +1526,7 @@ cogl_texture_2d_sliced_vtable =
+ FALSE, /* not primitive */
+ _cogl_texture_2d_sliced_allocate,
+ _cogl_texture_2d_sliced_set_region,
++ NULL, /* copy_sub_image */
+ NULL, /* get_data */
+ _cogl_texture_2d_sliced_foreach_sub_texture_in_region,
+ _cogl_texture_2d_sliced_get_max_waste,
+diff --git a/cogl/cogl-texture-2d.c b/cogl/cogl-texture-2d.c
+index cc28cd9..d9ab188 100644
+--- a/cogl/cogl-texture-2d.c
++++ b/cogl/cogl-texture-2d.c
+@@ -628,6 +628,35 @@ _cogl_texture_2d_set_region (CoglTexture *tex,
+ }
+
+ static CoglBool
++_cogl_texture_2d_copy_sub_image (CoglTexture *tex,
++ GLint xoffset,
++ GLint yoffset,
++ GLint x,
++ GLint y,
++ GLsizei width,
++ GLsizei height,
++ CoglError **error)
++{
++ CoglContext *ctx = tex->context;
++ CoglTexture2D *tex_2d = COGL_TEXTURE_2D (tex);
++
++ cogl_texture_allocate (tex, NULL); /* (abort on error) */
++
++ ctx->driver_vtable->texture_2d_copy_sub_image (tex_2d,
++ xoffset,
++ yoffset,
++ x,
++ y,
++ width,
++ height,
++ error);
++
++ tex_2d->mipmaps_dirty = TRUE;
++
++ return TRUE;
++}
++
++static CoglBool
+ _cogl_texture_2d_get_data (CoglTexture *tex,
+ CoglPixelFormat format,
+ int rowstride,
+@@ -675,6 +704,7 @@ cogl_texture_2d_vtable =
+ TRUE, /* primitive */
+ _cogl_texture_2d_allocate,
+ _cogl_texture_2d_set_region,
++ _cogl_texture_2d_copy_sub_image,
+ _cogl_texture_2d_get_data,
+ NULL, /* foreach_sub_texture_in_region */
+ _cogl_texture_2d_get_max_waste,
+diff --git a/cogl/cogl-texture-3d.c b/cogl/cogl-texture-3d.c
+index 8e2ff08..a59d386 100644
+--- a/cogl/cogl-texture-3d.c
++++ b/cogl/cogl-texture-3d.c
+@@ -741,6 +741,7 @@ cogl_texture_3d_vtable =
+ TRUE, /* primitive */
+ _cogl_texture_3d_allocate,
+ _cogl_texture_3d_set_region,
++ NULL, /* copy_sub_image */
+ _cogl_texture_3d_get_data,
+ NULL, /* foreach_sub_texture_in_region */
+ _cogl_texture_3d_get_max_waste,
+diff --git a/cogl/cogl-texture-private.h b/cogl/cogl-texture-private.h
+index 472c41d..34ff81c 100644
+--- a/cogl/cogl-texture-private.h
++++ b/cogl/cogl-texture-private.h
+@@ -90,6 +90,15 @@ struct _CoglTextureVtable
+ CoglBitmap *bitmap,
+ CoglError **error);
+
++ CoglBool (* copy_sub_image) (CoglTexture *texture,
++ GLint xoffset,
++ GLint yoffset,
++ GLint x,
++ GLint y,
++ GLsizei width,
++ GLsizei height,
++ CoglError **error);
++
+ /* This should copy the image data of the texture into @data. The
+ requested format will have been first passed through
+ ctx->texture_driver->find_best_gl_get_data_format so it should
+diff --git a/cogl/cogl-texture-rectangle.c b/cogl/cogl-texture-rectangle.c
+index 65d2f06..9f533c9 100644
+--- a/cogl/cogl-texture-rectangle.c
++++ b/cogl/cogl-texture-rectangle.c
+@@ -761,6 +761,7 @@ cogl_texture_rectangle_vtable =
+ TRUE, /* primitive */
+ _cogl_texture_rectangle_allocate,
+ _cogl_texture_rectangle_set_region,
++ NULL, /* copy_sub_image */
+ _cogl_texture_rectangle_get_data,
+ NULL, /* foreach_sub_texture_in_region */
+ _cogl_texture_rectangle_get_max_waste,
+diff --git a/cogl/cogl-texture.c b/cogl/cogl-texture.c
+index d93db22..1f4b43c 100644
+--- a/cogl/cogl-texture.c
++++ b/cogl/cogl-texture.c
+@@ -514,6 +514,39 @@ cogl_texture_set_region (CoglTexture *texture,
+ }
+
+ CoglBool
++cogl_texture_copy_sub_image (CoglTexture *texture,
++ int xoffset,
++ int yoffset,
++ int x,
++ int y,
++ size_t width,
++ size_t height)
++{
++ CoglError *ignore_error = NULL;
++ CoglBool status;
++
++ if (!texture->allocated)
++ cogl_texture_allocate (texture, NULL);
++
++ if (!texture->vtable->copy_sub_image)
++ return FALSE;
++
++ status = texture->vtable->copy_sub_image (texture,
++ xoffset,
++ yoffset,
++ x,
++ y,
++ width,
++ height,
++ &ignore_error);
++
++ if (!status)
++ cogl_error_free (ignore_error);
++ return status;
++}
++
++
++CoglBool
+ cogl_texture_set_data (CoglTexture *texture,
+ CoglPixelFormat format,
+ int rowstride,
+diff --git a/cogl/cogl-texture.h b/cogl/cogl-texture.h
+index 2718830..81657d1 100644
+--- a/cogl/cogl-texture.h
++++ b/cogl/cogl-texture.h
+@@ -399,6 +399,15 @@ cogl_texture_set_region (CoglTexture *texture,
+ unsigned int rowstride,
+ const uint8_t *data);
+
++CoglBool
++cogl_texture_copy_sub_image (CoglTexture *texture,
++ int xoffset,
++ int yoffset,
++ int x,
++ int y,
++ size_t width,
++ size_t height);
++
+ #if defined (COGL_ENABLE_EXPERIMENTAL_API)
+
+ /**
+diff --git a/cogl/driver/gl/cogl-texture-2d-gl-private.h b/cogl/driver/gl/cogl-texture-2d-gl-private.h
+index e5c6585..d2f9985 100644
+--- a/cogl/driver/gl/cogl-texture-2d-gl-private.h
++++ b/cogl/driver/gl/cogl-texture-2d-gl-private.h
+@@ -109,6 +109,15 @@ _cogl_texture_2d_gl_copy_from_bitmap (CoglTexture2D *tex_2d,
+ int dst_y,
+ int level,
+ CoglError **error);
++CoglBool
++_cogl_texture_2d_gl_copy_sub_image (CoglTexture2D *tex_2d,
++ GLint xoffset,
++ GLint yoffset,
++ GLint x,
++ GLint y,
++ GLsizei width,
++ GLsizei height,
++ CoglError **error);
+
+ void
+ _cogl_texture_2d_gl_get_data (CoglTexture2D *tex_2d,
+diff --git a/cogl/driver/gl/cogl-texture-2d-gl.c b/cogl/driver/gl/cogl-texture-2d-gl.c
+index 8675f52..bc15ac5 100644
+--- a/cogl/driver/gl/cogl-texture-2d-gl.c
++++ b/cogl/driver/gl/cogl-texture-2d-gl.c
+@@ -35,6 +35,7 @@
+ #include <config.h>
+
+ #include <string.h>
++#include <stdio.h>
+
+ #include "cogl-private.h"
+ #include "cogl-texture-private.h"
+@@ -719,6 +720,44 @@ _cogl_texture_2d_gl_copy_from_bitmap (CoglTexture2D *tex_2d,
+ return status;
+ }
+
++CoglBool
++_cogl_texture_2d_gl_copy_sub_image (CoglTexture2D *tex_2d,
++ GLint xoffset,
++ GLint yoffset,
++ GLint x,
++ GLint y,
++ GLsizei width,
++ GLsizei height,
++ CoglError **error)
++{
++ CoglContext *ctx = COGL_TEXTURE (tex_2d)->context;
++
++ if (ctx->current_read_buffer == NULL)
++ return FALSE;
++
++ if (ctx->current_draw_buffer)
++ _cogl_framebuffer_flush_journal (ctx->current_draw_buffer);
++
++ if (ctx->current_read_buffer != NULL &&
++ ctx->current_read_buffer != ctx->current_draw_buffer)
++ _cogl_framebuffer_flush_journal (ctx->current_read_buffer);
++
++ _cogl_bind_gl_texture_transient (GL_TEXTURE_2D,
++ tex_2d->gl_texture,
++ tex_2d->is_foreign);
++
++ ctx->glCopyTexSubImage2D (GL_TEXTURE_2D,
++ 0,
++ xoffset,
++ yoffset,
++ x,
++ y,
++ width,
++ height);
++
++ return TRUE;
++}
++
+ void
+ _cogl_texture_2d_gl_get_data (CoglTexture2D *tex_2d,
+ CoglPixelFormat format,
+diff --git a/cogl/driver/gl/gl/cogl-driver-gl.c b/cogl/driver/gl/gl/cogl-driver-gl.c
+index f305b6a..f7f5020 100644
+--- a/cogl/driver/gl/gl/cogl-driver-gl.c
++++ b/cogl/driver/gl/gl/cogl-driver-gl.c
+@@ -695,6 +695,7 @@ _cogl_driver_gl =
+ _cogl_texture_2d_gl_get_gl_handle,
+ _cogl_texture_2d_gl_generate_mipmap,
+ _cogl_texture_2d_gl_copy_from_bitmap,
++ _cogl_texture_2d_gl_copy_sub_image,
+ _cogl_texture_2d_gl_get_data,
+ _cogl_gl_flush_attributes_state,
+ _cogl_clip_stack_gl_flush,
+diff --git a/cogl/driver/gl/gles/cogl-driver-gles.c b/cogl/driver/gl/gles/cogl-driver-gles.c
+index e94449f..f5ac771 100644
+--- a/cogl/driver/gl/gles/cogl-driver-gles.c
++++ b/cogl/driver/gl/gles/cogl-driver-gles.c
+@@ -476,6 +476,7 @@ _cogl_driver_gles =
+ _cogl_texture_2d_gl_get_gl_handle,
+ _cogl_texture_2d_gl_generate_mipmap,
+ _cogl_texture_2d_gl_copy_from_bitmap,
++ _cogl_texture_2d_gl_copy_sub_image,
+ NULL, /* texture_2d_get_data */
+ _cogl_gl_flush_attributes_state,
+ _cogl_clip_stack_gl_flush,
+diff --git a/cogl/driver/nop/cogl-driver-nop.c b/cogl/driver/nop/cogl-driver-nop.c
+index 53f5975..9d88955 100644
+--- a/cogl/driver/nop/cogl-driver-nop.c
++++ b/cogl/driver/nop/cogl-driver-nop.c
+@@ -80,6 +80,7 @@ _cogl_driver_nop =
+ _cogl_texture_2d_nop_get_gl_handle,
+ _cogl_texture_2d_nop_generate_mipmap,
+ _cogl_texture_2d_nop_copy_from_bitmap,
++ NULL, /* texture_2d_copy_from_image */
+ NULL, /* texture_2d_get_data */
+ _cogl_nop_flush_attributes_state,
+ _cogl_clip_stack_nop_flush,
+diff --git a/cogl/winsys/cogl-texture-pixmap-x11.c b/cogl/winsys/cogl-texture-pixmap-x11.c
+index 398c357..a44cdaf 100644
+--- a/cogl/winsys/cogl-texture-pixmap-x11.c
++++ b/cogl/winsys/cogl-texture-pixmap-x11.c
+@@ -1164,6 +1164,7 @@ cogl_texture_pixmap_x11_vtable =
+ FALSE, /* not primitive */
+ _cogl_texture_pixmap_x11_allocate,
+ _cogl_texture_pixmap_x11_set_region,
++ NULL, /* copy_sub_image */
+ _cogl_texture_pixmap_x11_get_data,
+ _cogl_texture_pixmap_x11_foreach_sub_texture_in_region,
+ _cogl_texture_pixmap_x11_get_max_waste,
+--
+2.9.5
+
diff --git a/cogl.spec b/cogl.spec
new file mode 100644
index 0000000..e570d5e
--- /dev/null
+++ b/cogl.spec
@@ -0,0 +1,452 @@
+%global with_tests 1
+
+Name: cogl
+Version: 1.22.8
+Release: 5%{?dist}
+Summary: A library for using 3D graphics hardware to draw pretty pictures
+
+License: LGPLv2+
+URL: http://www.clutter-project.org/
+Source0: http://download.gnome.org/sources/cogl/1.22/cogl-%{version}.tar.xz
+
+# Vaguely related to https://bugzilla.gnome.org/show_bug.cgi?id=772419
+# but on the 1.22 branch, and the static inline in the header is gross
+# ajax promises he'll clean this up.
+Patch0: 0001-egl-Use-eglGetPlatformDisplay-not-eglGetDisplay.patch
+
+# "GL_ARB_shader_texture_lod" is used to do lod biased texturing. It
+# make achieve faster blurring of images instead of using large blur radius.
+Patch1: 0002-add-GL_ARB_shader_texture_lod-support.patch
+
+# "copy_sub_image" is used to implement feature similar with kwin blur
+# effect by being abel to copy partial of framebuffer contents as texture
+# and do post blurring.
+Patch2: 0003-texture-support-copy_sub_image.patch
+
+BuildRequires: chrpath
+BuildRequires: pkgconfig(cairo)
+BuildRequires: mesa-libEGL-devel
+BuildRequires: pkgconfig(gbm)
+BuildRequires: pkgconfig(gdk-pixbuf-2.0)
+BuildRequires: pkgconfig(gl)
+BuildRequires: pkgconfig(glib-2.0)
+BuildRequires: pkgconfig(gobject-introspection-1.0)
+BuildRequires: pkgconfig(gtk-doc)
+BuildRequires: pkgconfig(libdrm)
+BuildRequires: pkgconfig(pango)
+BuildRequires: pkgconfig(xcomposite)
+BuildRequires: pkgconfig(xdamage)
+BuildRequires: pkgconfig(xext)
+BuildRequires: pkgconfig(xfixes)
+BuildRequires: pkgconfig(xrandr)
+
+BuildRequires: pkgconfig(wayland-server)
+BuildRequires: pkgconfig(wayland-client)
+BuildRequires: pkgconfig(wayland-cursor)
+BuildRequires: pkgconfig(wayland-egl)
+BuildRequires: pkgconfig(xkbcommon)
+BuildRequires: make
+
+%description
+Cogl is a small open source library for using 3D graphics hardware to draw
+pretty pictures. The API departs from the flat state machine style of
+OpenGL and is designed to make it easy to write orthogonal components that
+can render without stepping on each others toes.
+
+As well aiming for a nice API, we think having a single library as opposed
+to an API specification like OpenGL has a few advantages too; like being
+able to paper over the inconsistencies/bugs of different OpenGL
+implementations in a centralized place, not to mention the myriad of OpenGL
+extensions. It also means we are in a better position to provide utility
+APIs that help software developers since they only need to be implemented
+once and there is no risk of inconsistency between implementations.
+
+Having other backends, besides OpenGL, such as drm, Gallium or D3D are
+options we are interested in for the future.
+
+%package devel
+Summary: %{name} development environment
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+Header files and libraries for building and developing apps with %{name}.
+
+%package doc
+Summary: Documentation for %{name}
+Requires: %{name} = %{version}-%{release}
+BuildArch: noarch
+
+%description doc
+This package contains documentation for %{name}.
+
+%if 0%{?with_tests}
+%package tests
+Requires: %{name} = %{version}-%{release}
+Summary: Tests for %{name}
+
+%description tests
+This package contains the installable tests for %{cogl}.
+%endif
+
+%prep
+%autosetup -p1
+
+%build
+CFLAGS="$RPM_OPT_FLAGS -fPIC"
+%configure \
+ --enable-cairo=yes \
+ --enable-cogl-pango=yes \
+ --enable-gdk-pixbuf=yes \
+ --enable-glx=yes \
+ --enable-gtk-doc \
+ --enable-introspection=yes \
+ --enable-kms-egl-platform \
+ --enable-wayland-egl-platform \
+ --enable-wayland-egl-server \
+ --enable-xlib-egl-platform \
+ %{?with_tests:--enable-installed-tests}
+
+make %{?_smp_mflags} V=1
+
+%install
+%make_install
+
+#Remove libtool archives.
+find %{buildroot} -name '*.la' -delete
+
+# This gets installed by mistake
+rm %{buildroot}%{_datadir}/cogl/examples-data/crate.jpg
+
+# Remove lib64 rpaths
+chrpath --delete $RPM_BUILD_ROOT%{_libdir}/libcogl-path.so
+chrpath --delete $RPM_BUILD_ROOT%{_libdir}/libcogl-pango.so
+
+%find_lang %{name}
+
+%check
+# make check
+
+%ldconfig_scriptlets
+
+%files -f %{name}.lang
+%license COPYING
+%doc NEWS README
+%{_libdir}/libcogl*.so.20*
+%{_libdir}/girepository-1.0/Cogl*.typelib
+
+%files devel
+%{_includedir}/cogl
+%{_libdir}/libcogl*.so
+%{_libdir}/pkgconfig/*.pc
+%{_datadir}/gir-1.0/Cogl*.gir
+
+%files doc
+%{_datadir}/gtk-doc/html/cogl
+%{_datadir}/gtk-doc/html/cogl-2.0-experimental
+
+%if 0%{?with_tests}
+%files tests
+%{_datadir}/installed-tests/%{name}
+%{_libexecdir}/installed-tests/%{name}
+%endif
+
+%changelog
+* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.22.8-5
+- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
+ Related: rhbz#1991688
+
+* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 1.22.8-4
+- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
+
+* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.8-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
+
+* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.8-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
+* Thu Jun 04 2020 Kalev Lember <klember@redhat.com> - 1.22.8-1
+- Update to 1.22.8
+
+* Mon Mar 09 2020 Kalev Lember <klember@redhat.com> - 1.22.6-1
+- Update to 1.22.6
+
+* Sat Mar 07 2020 Leigh Scott <leigh123linux@gmail.com> - 1.22.4-4
+- Fix building against libglvnd-provided EGL headers
+
+* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.4-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
+* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.4-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
+
+* Wed Apr 24 2019 Peter Robinson <pbrobinson@fedoraproject.org> 1.22.4-1
+- Update to 1.22.4
+
+* Tue Apr 16 2019 Adam Williamson <awilliam@redhat.com> - 1.22.2-13
+- Backport MR#8 to fix builds of cogl-using packages in F31+
+
+* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.2-12
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
+
+* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.2-11
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
+
+* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.2-10
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Sat Feb 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.22.2-9
+- Switch to %%ldconfig_scriptlets
+
+* Wed Nov 22 2017 Troy Dawson <tdawson@redhat.com> - 1.22.2-8
+- Fix spec file conditionals
+
+* Thu Sep 28 2017 mosquito <sensor.wen@gmail.com> - 1.22.2-7
+- Add GL_ARB_shader_texture_lod and copy_sub_image support (#1421055)
+- Add pkgconfig(egl) BReq for rawhide
+- Move BReqs to pkgconfig
+
+* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.2-6
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
+* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.2-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Wed May 17 2017 Owen Taylor <otaylor@redhat.com> - 1.22.2-4
+- Add Requires: %%{name} = %%{version}-%%{release} to the tests subpackage
+
+* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.2-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Tue Oct 11 2016 Adam Jackson <ajax@redhat.com> - 1.22.2-2
+- Prefer eglGetPlatformDisplay to eglGetDisplay
+
+* Fri Aug 26 2016 Kalev Lember <klember@redhat.com> - 1.22.2-1
+- Update to 1.22.2
+- Don't set group tags
+
+* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Wed Oct 21 2015 Ray Strode <rstrode@redhat.com> 1.22.0-2
+- Fix black login screen
+ Resolves: #1272737
+
+* Wed Sep 16 2015 Kalev Lember <klember@redhat.com> - 1.22.0-1
+- Update to 1.22.0
+
+* Fri Aug 21 2015 Kalev Lember <klember@redhat.com> - 1.21.2-2
+- Re-enable parallel make
+
+* Fri Aug 21 2015 Kalev Lember <klember@redhat.com> - 1.21.2-1
+- Update to 1.21.2
+- Use make_install macro
+- Mark COPYING as %%license
+- Drop large ChangeLog file
+
+* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.20.0-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Mon Mar 23 2015 Ray Strode <rstrode@redhat.com> 1.20.0-3
+- Update to upstreamed version of mgag200 fix
+
+* Wed Mar 11 2015 Ray Strode <rstrode@redhat.com> 1.20.0-2
+- Try to fix wayland on mgag200
+
+* Mon Feb 23 2015 Kalev Lember <kalevlember@gmail.com> - 1.20.0-1
+- Update to 1.20.0
+
+* Tue Jan 20 2015 Peter Robinson <pbrobinson@fedoraproject.org> 1.18.2-10
+- Enable tests subpackage (rhbz 1163429)
+
+* Sun Nov 16 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-9
+- Obsolete compat-cogl116 from rhughes-f20-gnome-3-12 copr
+
+* Thu Nov 13 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-8
+- Disable cogl-gst as long as we don't have clutter-gst3 (#1158676)
+
+* Sat Nov 01 2014 Richard Hughes <rhughes@redhat.com> - 1.18.2-7
+- Fix compile on RHEL, harder
+
+* Mon Oct 27 2014 Richard Hughes <rhughes@redhat.com> - 1.18.2-6
+- Fix compile on RHEL
+
+* Fri Aug 22 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-5
+- Remove lib64 rpaths (#1132876)
+
+* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org>
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Tue Jul 22 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-3
+- Rebuilt for gobject-introspection 1.41.4
+
+* Fri Jul 11 2014 Peter Robinson <pbrobinson@fedoraproject.org> 1.18.2-2
+- Run make check but don't fail build on it
+
+* Fri Jul 04 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-1
+- Update to 1.18.2
+
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.18.0-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Fri May 23 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.0-3
+- Backport an upstream fix for a totem crash
+
+* Thu May 08 2014 Adam Jackson <ajax@redhat.com>
+- Add optional installed-tests subpackage
+
+* Mon Apr 28 2014 Richard Hughes <rhughes@redhat.com> - 1.18.0-2
+- Build with --enable-cogl-gst
+
+* Fri Mar 21 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.0-1
+- Update to 1.18.0
+
+* Fri Mar 21 2014 Kalev Lember <kalevlember@gmail.com> - 1.17.5-1.gitbb10532
+- Update to 1.17.5 git snapshot
+
+* Fri Feb 21 2014 Kalev Lember <kalevlember@gmail.com> - 1.17.4-2
+- Drop compat-libcogl19
+
+* Thu Feb 20 2014 Kalev Lember <kalevlember@gmail.com> - 1.17.4-1
+- Update to 1.17.4, which includes soname bump
+- Build a temporary compat-libcogl19 subpackage to ease the rebuilds
+
+* Wed Feb 05 2014 Richard Hughes <rhughes@redhat.com> - 1.17.2-1
+- Update to 1.17.2
+
+* Tue Jan 21 2014 Richard Hughes <rhughes@redhat.com> - 1.16.2-1
+- Update to 1.16.2
+
+* Wed Sep 25 2013 Dan HorĂ¡k <dan[at]danny.cz> - 1.16.0-2
+- fix build on big endians (#1011893)
+
+* Tue Sep 24 2013 Kalev Lember <kalevlember@gmail.com> - 1.16.0-1
+- Update to 1.16.0
+
+* Thu Sep 12 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.10-3
+- More configure options for enabling the gnome-shell Wayland compositor
+- Enable parallel build
+
+* Tue Sep 10 2013 Matthias Clasen <mclasen@redhat.com> - 1.15.10-2
+- Add configure options that are needed to enable the gnome-shell
+ Wayland compositor
+
+* Mon Sep 02 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.10-1
+- Update to 1.15.10
+
+* Thu Aug 22 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.8-1
+- Update to 1.15.8
+
+* Fri Aug 09 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.4-1
+- Update to 1.15.4
+
+* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.14.0-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
+
+* Wed Jun 12 2013 Kalev Lember <kalevlember@gmail.com> 1.14.0-3
+- Rebuilt
+
+* Wed May 22 2013 Adam Jackson <ajax@redhat.com> 1.14.0-2
+- cogl-1.14.0-21-ge26464f.patch: Sync with 1.14 branch for a crash fix.
+
+* Mon Mar 25 2013 Kalev Lember <kalevlember@gmail.com> 1.14.0-1
+- Update to 1.14.0
+
+* Wed Mar 13 2013 Matthias Clasen <mclasen@redhat.com> 1.13.4-2
+- Enable wayland backend
+
+* Thu Feb 21 2013 Bastien Nocera <bnocera@redhat.com> 1.13.4-1
+- Update to 1.13.4
+
+* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.13.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
+
+* Thu Jan 24 2013 Peter Robinson <pbrobinson@fedoraproject.org> 1.13.2-1
+- Update to 1.13.2
+
+* Mon Jan 7 2013 Peter Robinson <pbrobinson@fedoraproject.org> 1.12.2-1
+- Update to 1.12.2
+
+* Tue Sep 25 2012 Kalev Lember <kalevlember@gmail.com> - 1.12.0-1
+- Update to 1.12.0
+
+* Tue Sep 18 2012 Kalev Lember <kalevlember@gmail.com> - 1.11.6-1
+- Update to 1.11.6
+- Drop upstreamed cogl-1.11.4-mesa-strings.patch
+
+* Mon Sep 17 2012 Adam Jackson <ajax@redhat.com> 1.11.4-2
+- cogl-1.11.4-mesa-strings.patch: Update match strings for Mesa.
+
+* Mon Sep 3 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 1.11.4-1
+- Update to 1.11.4
+
+* Tue Aug 21 2012 Richard Hughes <hughsient@gmail.com> - 1.11.2-1
+- Update to 1.11.2
+
+* Fri Jul 27 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10.4-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Wed Jul 18 2012 Kalev Lember <kalevlember@gmail.com> - 1.10.4-1
+- Update to 1.10.4
+- Dropped no-framebuffer-blit patch which is included in the release
+
+* Thu Apr 19 2012 Adel Gadllah <adel.gadllah@gmail.com> - 1.10.2-1
+- Update to 1.10.2
+
+* Tue Mar 20 2012 Kalev Lember <kalevlember@gmail.com> - 1.10.0-1
+- Update to 1.10.0
+
+* Sat Mar 10 2012 Matthias Clasen <mclasen@redhat.com> - 1.9.8-1
+- Update to 1.9.8
+
+* Sat Feb 25 2012 Matthias Clasen <mclasen@redhat.com> - 1.9.6-1
+- Update to 1.9.6
+
+* Tue Jan 17 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 1.9.4-1
+- Update to 1.9.4
+- http://ftp.gnome.org/pub/GNOME/sources/cogl/1.9/cogl-1.9.4.news
+
+* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.9.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+
+* Wed Nov 23 2011 Matthias Clasen <mclasen@redhat.com> 1.9.2-1
+- Update to 1.9.2
+
+* Thu Nov 03 2011 Adam Jackson <ajax@redhat.com> 1.8.2-4
+- cogl-1.8.2-lp-no-framebuffer-blit.patch: Disable the subbuffer blit code
+ when running on llvmpipe until it's unbroken.
+
+* Tue Nov 01 2011 Adam Jackson <ajax@redhat.com> 1.8.2-3
+- cogl-1.8.2-no-drm-hax.patch: Don't try insane direct DRM vblank wait.
+
+* Wed Oct 26 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8.2-2
+- Rebuilt for glibc bug#747377
+
+* Mon Oct 17 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.8.2-1
+- 1.8.2 stable release
+- http://ftp.gnome.org/pub/GNOME/sources/cogl/1.8/cogl-1.8.2.news
+- Enable gdk-pixbuf2 support - Fixes RHBZ # 738092
+
+* Mon Sep 19 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.8.0-1
+- 1.8.0 stable release
+- http://ftp.gnome.org/pub/GNOME/sources/cogl/1.8/cogl-1.8.0.news
+
+* Mon Sep 5 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.8-1
+- Update to 1.7.8
+
+* Thu Aug 18 2011 Matthias Clasen <mclasen@redhat.com> - 1.7.6-1
+- Update to 1.7.6
+
+* Tue Jul 26 2011 Matthias Clasen <mclasen@redhat.com> - 1.7.4-1
+- Update to 1.7.4
+
+* Mon Jul 4 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.2-1
+- Update to 1.7.2
+
+* Thu Jun 16 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.0-3
+- Update spec for review feedback
+
+* Thu Jun 16 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.0-2
+- Update spec for review feedback
+
+* Wed Jun 15 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.0-1
+- Initial Package
diff --git a/sources b/sources
new file mode 100644
index 0000000..68ebddd
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+7dd8b2e24171ef7399f851cea144b569 cogl-1.22.8.tar.xz