[Bug 784779] gl: public gstgl headers should not include GL headers
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Tue Jul 25 07:28:44 UTC 2017
https://bugzilla.gnome.org/show_bug.cgi?id=784779
Matthew Waters (ystreet00) <ystreet00 at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #355741|none |needs-work
status| |
--- Comment #7 from Matthew Waters (ystreet00) <ystreet00 at gmail.com> ---
Review of attachment 355741:
--> (https://bugzilla.gnome.org/review?bug=784779&attachment=355741)
Ok there seems to a mismatch on the expected behaviour. gst/gl/gl.h is the
top-level header for everybody to include and is also the single include used
for gobject-introspection as #include-ing random gstgl headers has gotten us
into trouble before (the glmemory includes are specially crafted) so changing
that behaviour to require this scenario for not using GL types/functions
probably isn't wise.
I think the best route is that gst/gl/gstglfuncs.h should not be #include-d in
gst/gl/gl.h which probably also has the effect of removing most of the header
changes introduced by this patch. gst/gl/gstglfuncs.h should only be
#include-d in places where we need the actual GL types/enums/functions/etc in
addition to the gst/gl/gl.h #include. If we want backwards compatibility, we
could follow mesa's GL_GLEXT_LEGACY/GL_GLEXT_PROTOTYPES defines. Personally, I
don't think it's necessary but I could be wrong.
The added typedef's are also problematic if the type doesn't match the system
provided headers and/or GL/gl.h or GLES2/gl2.h aren't in system paths.
The added test looks good.
::: gst-libs/gst/gl/egl/gsteglimage.h
@@ +35,3 @@
#define GST_EGL_IMAGE(obj) (GST_EGL_IMAGE_CAST(obj))
+typedef void *EGLImageKHR;
This may cause redefinition type warnings. What's the plan for dealing with
these?
::: gst-libs/gst/gl/egl/gstglcontext_egl.h
@@ +46,3 @@
+typedef void *EGLSurface;
+typedef void *EGLContext;
+
This may cause redefinition type warnings unfortunately. What's the plan for
dealing with these?
::: gst-libs/gst/gl/egl/gstgldisplay_egl.h
@@ +39,3 @@
+typedef void *EGLDisplay;
+
This may cause redefinition type warnings. What's the plan for dealing with
these?
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list