[gst-devel] [gst-cvs] tpm gstreamer: gstreamer/ gstreamer/docs/gst/ gstreamer/gst/ gstreamer/tests/check/gst/
Stefan Kost
ensonic at hora-obscura.de
Thu Jan 17 10:20:09 CET 2008
hi again,
Quoting Tim Müller <t.i.m at zen.co.uk>:
> On Wed, 2008-01-16 at 23:32 +0200, Stefan Kost wrote:
>
>> any ideas how to handle such changes a bit more graceful. The issue:
>> I build my app against gst-cvs and use disable-deprecated. So if
>> there is such a
>> change my build fails. So far okay. Old API deprecated, new api there as a
>> replacement - available since 0.10.16. Okay, check for gst-0.10.16
>> and use new
>> api if we have it. Bang. There is no 0.10.16 available (yet).
>
> Why not just check for 0.10.15.1 and use the new API, and if someone
> complains about it not building, tell them to cvs update core? Just like
> we do for the plugins modules basically. If you build against CVS and
> use disable-deprecated you'll have to live with the consequences, I
> don't think it's really worth working around that.
>
I think the main issues is that when
#ifndef GST_DISABLE_DEPRECATED
#endif
is used on a function prototype one gets a warning, but the build goes
on (unless -Werror). If you use that on a macro, the build fails
always. The compile sees something like a function call (without a
prototype) outside a function. So what we should probably do is the
attached patch.
Then one gets:
cc1: warnings being treated as errors
sink-bin.c:902: warning: 'bt_sink_bin_plugin_init' defined but not used
sink-bin.c:920: warning:
'_gst_plugin_static_init__bt_sink_bin_plugin_init' defined but not used
instead of:
sink-bin.c:921: error: expected declaration specifiers or '...' before
'(' token
sink-bin.c:922: error: expected declaration specifiers or '...' before
'(' token
sink-bin.c:923: error: expected declaration specifiers or '...' before
string constant
sink-bin.c:924: error: expected declaration specifiers or '...' before
string constant
sink-bin.c:925: error: expected declaration specifiers or '...' before
'bt_sink_bin_plugin_init'
sink-bin.c:925: error: expected declaration specifiers or '...' before
string constant
sink-bin.c:925: error: expected declaration specifiers or '...' before
string constant
sink-bin.c:925: error: expected declaration specifiers or '...' before
string constant
sink-bin.c:925: error: expected declaration specifiers or '...' before
string constant
cc1: warnings being treated as errors
sink-bin.c:926: warning: data definition has no type or storage class
sink-bin.c:926: warning: type defaults to 'int' in declaration of
'GST_PLUGIN_DEFINE_STATIC'
Stefan
>
>
>> Should we only activate the deprecations after bumping the version? How do
>> others handle that? reconfigure all the build-slaves and developer checkouts
>> (remove the disable deprecated). Do I overlook something obvious?
>
> You could just add an #undef GST_DISABLE_DEPRECATED before the first
> include in the affected source file(s) if you don't want to change over
> to the new API quite yet.
>
> Cheers
> -Tim
>
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: plugin_static_deprecated-01.patch
Type: text/x-patch
Size: 1111 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20080117/37492fa2/attachment.bin>
More information about the gstreamer-devel
mailing list