Jump to content
Compatible Support Forums
Sign in to follow this  

Release Cogl 1.12.2 (release)

Recommended Posts

Good news, everyone!


A new Cogl release (1.12.2) is now available:





Cogl 1.12.2 2013-01-04


• List of changes since Cogl 1.12.0


» Lots of MSVC build updates

» Fix GL_ARB_shader_objects terminator mitigating potential crash

» Fix to only allow CoglGLES2 context creation with GLES2 driver

» Use right context when pushing a CoglGLES2 context to an onscreen

» Port to new Wayland 1.0 protocol

» Don't set SDL_GL_DOUBLEBUFFER when the swap chain has no pref


• Bugzilla bugs closed since Cogl 1.12.0


#682071 - MSVC: Link to SDL when apps are built

#684917 - winsys-glx: Don'T attempt to query the vblank counter when

using indirect rendering

#689850 - [PATCH] Fix call to BlendFuncSeparate


Many thanks to:


Chun-wei Fan

Neil Roberts

Robert Bragg

Andika Triwidada

Adam Jackson

Alexander Shopov

Aurimas Černius

Ihar Hrachyshka

Marek Černocký

Milo Casagrande

Rafael Ferreira

Rob Bradford

RÅ«dolfs Mazurs

Tom Tryfonidis

Unticha Pramgoed

ÃœøрþÑÂûðò ÃÂøúþûøћ





Tarballs can be downloaded from:




SHA256 Checksum:





Additionally, a git clone of the source tree:

git clone git://git.gnome.org/cogl


will include a signed 1.12.2 tag which points to a commit named:



which can be verified with:

git verify-tag 1.12.2


and can be checked out with a command such as:

git checkout -b build 1.12.2





Cogl is a small open source library for using 3D graphics hardware for

rendering. 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 as 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.






Cogl currently only requires:


• GLib ≥ 2.28.0

• OpenGL ≥ 1.3 (or 1.2 + multitexturing), or OpenGL ES 2.0 (or 1.1)

• GLX, AGL, WGL or an EGL implementation


Cogl also has optional dependencies:


• GDK-Pixbuf ≥ 2.0

- for image loading

• Cairo ≥ 1.10

- for debugging texture atlasing (debug builds only)


The optional Cogl Pango library requires:

• Cairo ≥ 1.10

• PangoCairo ≥ 1.20


On X11, Cogl depends on the following extensions


• XComposite ≥ 0.4

• XDamage

• XExt

• XFixes ≥ 3


When running with OpenGL, Cogl requires at least version 1.3

or 1.2 with the multitexturing extension. However to build Cogl

you will need the latest GL headers which can be obtained from:




If you are building the API reference you will also need:


• GTK-Doc ≥ 1.13


If you are building the additional documentation you will also need:


• xsltproc

• jw (optional, for generating PDFs)


If you are building the Introspection data you will also need:


• GObject-Introspection ≥ 0.9.5


GObject-Introspection is available from:




If you want support for profiling Cogl you will also need:


• UProf ≥ 0.3


UProf is available from:









The 1.x stable API is documented here:


The 1.x development API is documented here:



The experimental 2.0 API is currently not hosted online but can be built

by passing the --enable-gtk-doc option to ./configure when building.





- This Cogl release exports a 1.x API (For third-party Clutter

developers to write custom actors) and an experimental 2.0 API which

allows standalone application development.


- Internally Clutter depends on the Cogl 2.0 experimental API so we maintain

runtime compatibility between the 1.x API and experimental 2.0 APIs, which

means developers can mix-and-match their use of the APIs in the same

process. API selection is done per-file by including a line like: '#define

COGL_ENABLE_EXPERIMENTAL_2_0_API' before including cogl.h or clutter.h.


- We recommend using the 2.0 API if you don't mind up[censored] your code once in

a while as this API evolves and stabilizes. We promise not to break the 2.0

API during a 1.x stable cycle and hope that will encourage people to

experiment with it and give critical feedback! For example after releasing

1.8, the 2.0 API will be stable for 1.8.1, 1.8.2, 1.8.3 etc, but may update

for 1.9/1.10.


- Because we export the 1.x and 2.0 APIs from one libcogl.so the library

versioning, and thus ABI, can only be considered as stable as our 2.0 API -

i.e. during a stable release 1.x cycle.


- Please report bugs using the Cogl Bugzilla product, at:




Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this