After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 655355 - Make Cogl master work on EGL/GDL again
Make Cogl master work on EGL/GDL again
Status: RESOLVED FIXED
Product: cogl
Classification: Platform
Component: EGL
unspecified
Other All
: Normal normal
: ---
Assigned To: Cogl maintainer(s)
Cogl maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2011-07-26 15:14 UTC by Damien Lespiau
Modified: 2011-07-29 11:01 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
egl-gdl: Correctly substitute COGL_CEX100_LIBGDL_PREFIX (2.32 KB, patch)
2011-07-26 15:14 UTC, Damien Lespiau
committed Details | Review
egl-gdl: struct gdl_plane never was a valid type (1.73 KB, patch)
2011-07-26 15:14 UTC, Damien Lespiau
committed Details | Review
egl-gdl: Make the egl winsys know about the GDL platform (3.85 KB, patch)
2011-07-26 15:14 UTC, Damien Lespiau
committed Details | Review
egl-gdl: When compiling the GDL platform, you need to link against -lgdl (822 bytes, patch)
2011-07-26 15:14 UTC, Damien Lespiau
committed Details | Review
egl-gdl: Provide defaults to be able to initialize a "dummy" context (1.87 KB, patch)
2011-07-26 15:14 UTC, Damien Lespiau
committed Details | Review
egl: Make sure to free the underlying egl objects when the display is freed (2.84 KB, patch)
2011-07-26 15:15 UTC, Damien Lespiau
committed Details | Review

Description Damien Lespiau 2011-07-26 15:14:45 UTC
This small series of patches allows mex to work on Sodaville with Cogl/Clutter master.
Comment 1 Damien Lespiau 2011-07-26 15:14:47 UTC
Created attachment 192673 [details] [review]
egl-gdl: Correctly substitute COGL_CEX100_LIBGDL_PREFIX

We weren't defining CLUTTER_CEX100_LIBGDL_PREFIX in the configure.ac and
thus failing to compile when selecting the EGL/GDL winsys. Take the
opportunity to rename that to COGL_CEX100_LIBGDL_PREFIX
Comment 2 Damien Lespiau 2011-07-26 15:14:50 UTC
Created attachment 192674 [details] [review]
egl-gdl: struct gdl_plane never was a valid type

The enum for the planes is called gdl_plant_id_t.
Comment 3 Damien Lespiau 2011-07-26 15:14:53 UTC
Created attachment 192675 [details] [review]
egl-gdl: Make the egl winsys know about the GDL platform

The egl winsys has a few code paths depending on the platform we are
compiling for. The GDL platform needs those defined as well.

A few tweaks were needed here and there to make it compile again.
Comment 4 Damien Lespiau 2011-07-26 15:14:56 UTC
Created attachment 192676 [details] [review]
egl-gdl: When compiling the GDL platform, you need to link against -lgdl
Comment 5 Damien Lespiau 2011-07-26 15:14:59 UTC
Created attachment 192677 [details] [review]
egl-gdl: Provide defaults to be able to initialize a "dummy" context

If we are being called without any GDL specific call (either the plane
we want to render to or the swap chain length) we can provide sane
defaults to still be able to create a context and a surface.
Comment 6 Damien Lespiau 2011-07-26 15:15:01 UTC
Created attachment 192678 [details] [review]
egl: Make sure to free the underlying egl objects when the display is freed

If the display has been setup up, we should destroy the underlying
objects that the winsys has created. This can be done by calling the
winsys->destroy_display() function in _free.

Then, in that function, and for the NULL and GDL EGL platform we can
destroy the surface we have created in the setup_display() function
(through create_context()).

This allows to have clutter create a "dummy" display in
cogl_renderer_check_onscreen_template(), then free it, then recreate the
context and the surface that will be the final ones.
Comment 7 Robert Bragg 2011-07-27 14:40:42 UTC
thanks a lot for looking at this! I think all these patches look good to land to me.
Comment 8 Damien Lespiau 2011-07-29 11:00:55 UTC
Attachment 192673 [details] pushed as a53af15 - egl-gdl: Correctly substitute COGL_CEX100_LIBGDL_PREFIX
Attachment 192674 [details] pushed as 388abe2 - egl-gdl: struct gdl_plane never was a valid type
Attachment 192675 [details] pushed as ff5a350 - egl-gdl: Make the egl winsys know about the GDL platform
Attachment 192676 [details] pushed as 3033051 - egl-gdl: When compiling the GDL platform, you need to link against -lgdl
Attachment 192677 [details] pushed as 2c3827a - egl-gdl: Provide defaults to be able to initialize a "dummy" context
Attachment 192678 [details] pushed as d4dc518 - egl: Make sure to free the underlying egl objects when the display is freed