[FFmpeg-devel] [PATCH] restoring binary compatibility with ffmpeg 0.5

Michael Niedermayer michaelni
Sun Jun 6 23:16:57 CEST 2010


On Sun, Jun 06, 2010 at 10:59:09PM +0200, Reimar D?ffinger wrote:
> On Sun, Jun 06, 2010 at 10:45:18PM +0200, Michael Niedermayer wrote:
> > On Sun, Jun 06, 2010 at 10:29:25PM +0200, Reimar D?ffinger wrote:
> > > On Sun, Jun 06, 2010 at 09:38:07PM +0200, Reinhard Tartler wrote:
> > > > In any case, find below the 'best' fix, that admittedly only works on
> > > > gnu platforms. Michael, please comment if you prefer the half fix that
> > > > fixes the issue on gcc/gas platforms (and doesn't regress on others) or
> > > > bumping major of libavformat.
> > > 
> > > How sure are we this is actually correct?
> > > The cases I could find documented (which only involve one library)
> > > also require changes to the version script.
> > > In case it was only one library, something like this:
> > > Index: libavcodec.v
> > > ===================================================================
> > > --- libavcodec.v        (revision 23508)
> > > +++ libavcodec.v        (working copy)
> > > @@ -1,3 +1,7 @@
> > > +LIBAVFORMAT_52 {
> > > +        global: av_init_packet;
> > > +};
> > >  LIBAVCODEC_$MAJOR {
> > > +        global: av_init_packet;
> > >          global: *;
> > > -};
> > > +} LIBAVFORMAT_52;
> > > 
> > > However here we have the problem that this would break e.g. on Solaris,
> > > since a symbol is not allowed to have multiple versions there.
> > 
> > +LIBAVFORMAT_52 {
> > +        global: av_init_packet;
> > +};
> >  LIBAVCODEC_$MAJOR {
> >          global: *;
> > -};
> > +} LIBAVFORMAT_52;
> > 
> > above does not work?
> 
> It does, but it does not do what I guess you want.
> It will only generate av_init_packet@@LIBAVFORMAT_52,

yes


> so it will still break compatibility to some previous
> versions.

do you assume this or have you tested this?
i think it should work, at least on solaris, on gnu ill refrain
from any guesses ;)

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Complexity theory is the science of finding the exact solution to an
approximation. Benchmarking OTOH is finding an approximation of the exact
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20100606/d9ac0c21/attachment.pgp>



More information about the ffmpeg-devel mailing list