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 695889 - libs: many headers don't compile by themselves
libs: many headers don't compile by themselves
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal normal
: 1.1.4
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-03-14 23:19 UTC by David Schleef
Modified: 2013-08-18 19:45 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
script to test header compilation (933 bytes, application/octet-stream)
2013-03-14 23:19 UTC, David Schleef
Details

Description David Schleef 2013-03-14 23:19:59 UTC
Created attachment 238945 [details]
script to test header compilation

If you include individual headers, I expect that they aren't missing definitions all by themselves, i.e., they include the correct header files.  This is not true for a large number of gstreamer headers.

See attached script.
Comment 1 Tim-Philipp Müller 2013-03-14 23:29:13 UTC
Is this important for anything?

I wouldn't mind declaring inclusion of individual headers deprecated like the glib folks did a while back.
Comment 2 David Schleef 2013-03-15 01:14:30 UTC
Mainly because gst/video/gstvideoencoder.h, gst/video/gstvideodecoder.h, and gst/video/gstvideoutils.h are all broken right now, because of circular dependencies.
Comment 3 Tim-Philipp Müller 2013-03-15 07:51:40 UTC
We added single includes for all libs, some bindings need that. In the course of these problems came up IIRC. It's apparently not so easy to resolve for some reason.
Comment 4 Sebastian Dröge (slomo) 2013-08-16 10:04:03 UTC
Anybody planning to solve this? Is it important enough to keep the bug open?
Comment 5 Tim-Philipp Müller 2013-08-16 10:32:30 UTC
Well, it breaks people's existing code, which isn't very nice.. I'll try to fix it in a simple/dumb way..
Comment 6 Tim-Philipp Müller 2013-08-16 13:30:02 UTC
Let's hope this doesn't break something else :)

commit c449ae6343acbc127744223e18caeaf68d80421c
Author: Tim-Philipp Müller <tim@centricular.net>
Date:   Fri Aug 16 13:59:35 2013 +0100

    rtsp: fix direct includes
    
    https://bugzilla.gnome.org/show_bug.cgi?id=695889

commit c0defba2d2eafdcb71fa813fb7383e96eb1df39f
Author: Tim-Philipp Müller <tim@centricular.net>
Date:   Fri Aug 16 13:55:33 2013 +0100

    pbutils: fix direct includes
    
    https://bugzilla.gnome.org/show_bug.cgi?id=695889

commit 2f05268517c7214273cb5837780c45236fa17018
Author: Tim-Philipp Müller <tim@centricular.net>
Date:   Fri Aug 16 13:47:31 2013 +0100

    video: make direct includes work again
    
    Not nice to break people's code if we can avoid it. Could
    add a warning in the next cycle, and then require single
    includes in the cycle after.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=695889

commit 6b070784c4cb5a6d8c9499525d522ce7f670c9ea
Author: Tim-Philipp Müller <tim@centricular.net>
Date:   Fri Aug 16 13:06:58 2013 +0100

    audio: make direct includes work again
    
    Not nice to break people's code if we can avoid it. Could
    add a warning in the next cycle, and then require single
    includes in the cycle after.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=695889

commit 001e08e5a463a3c6d71d3b9500bf4a13cc493c97
Author: Tim-Philipp Müller <tim@centricular.net>
Date:   Fri Aug 16 14:12:32 2013 +0100

    tests: add test-header-compile script
    
    https://bugzilla.gnome.org/show_bug.cgi?id=695889
Comment 7 Tim-Philipp Müller 2013-08-16 13:31:40 UTC
David, I took your script, splashed an LGPL header on top of it, and put it into tests/icles/ with some changes so it runs against the local tree. I hope that's fine with you.
Comment 8 David Schleef 2013-08-18 19:45:28 UTC
Tim, yes, of course.  Thanks.