On Mon, Jun 20, 2011 at 01:26:21PM +0200, Reinhard Tartler wrote:
> On Mon, Jun 20, 2011 at 12:47:55 (CEST), Kostya wrote:
> 
> > On Mon, Jun 20, 2011 at 11:42:34AM +0100, Måns Rullgård wrote:
> >> Kostya <[email protected]> writes:
> >> 
> >> > On Mon, Jun 20, 2011 at 11:36:34AM +0100, Måns Rullgård wrote:
> >> >> Kostya <[email protected]> writes:
> >> >> 
> >> >> > On Mon, Jun 20, 2011 at 12:21:43PM +0200, Reinhard Tartler wrote:
> >> >> >> That change broke ABI, so we need to recompile all applications
> >> >> >> ---
> >> >> >>  libswscale/swscale.h |    4 ++--
> >> >> >>  1 files changed, 2 insertions(+), 2 deletions(-)
> >> >> >> 
> >> >> >> diff --git a/libswscale/swscale.h b/libswscale/swscale.h
> >> >> >> index b0ad912..24b447d 100644
> >> >> >> --- a/libswscale/swscale.h
> >> >> >> +++ b/libswscale/swscale.h
> >> >> >> @@ -29,8 +29,8 @@
> >> >> >>  
> >> >> >>  #include "libavutil/avutil.h"
> >> >> >>  
> >> >> >> -#define LIBSWSCALE_VERSION_MAJOR 1
> >> >> >> -#define LIBSWSCALE_VERSION_MINOR 1
> >> >> >> +#define LIBSWSCALE_VERSION_MAJOR 2
> >> >> >> +#define LIBSWSCALE_VERSION_MINOR 0
> >> >> >>  #define LIBSWSCALE_VERSION_MICRO 0
> >> >> >>  
> >> >> >>  #define LIBSWSCALE_VERSION_INT  
> >> >> >> AV_VERSION_INT(LIBSWSCALE_VERSION_MAJOR, \
> >> >> >> -- 
> >> >> >
> >> >> > Why major version? IMO minor version bump is enough.
> >> >> 
> >> >> A few external interfaces changed from long to int, which is a major 
> >> >> break.
> >> >
> >> > For some reason we don't have rules for ABI change, except for this 
> >> > abstract
> >> > in developer.texi:
> >> >
> >> >     Incrementing the second component means backward compatible change
> >> >     (e.g. addition of a function to the public API or extension of an
> >> >     existing data structure).
> >> >
> >> > Just my can of paint...
> >> 
> >> This change isn't binary compatible on all systems.
> >
> > Obviously, but should we define that in rules or not? Originally nobody 
> > cared
> > about binary form distribution at all.
> 
> We do care about binary form distribution since the 0.5 release. If we
> didn't we could as well leave release alone completely.
> 
> Ronald elaborated on irc a bit more. The thing is that on architectures
> such as x86 (both 32 bit and 64bit), the stack element size is fixed,
> which maintains alignment. This means that here, all is just
> fine. However, as I understand Måns, we do support also other
> architectures, where this property is not maintained and therefore,
> applications will crash horribly.
> 
> Since we don't want to have different major versions on different
> architectures, I think we should bump major and add the paragraph above
> to the commit message. This should IMO also go into the 0.7 release.
> 
> Opinions welcome.

Just bump it and be done with it.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to