On 05.07.2020 14:10, Jan Engelhardt wrote:
On Sunday 2020-07-05 13:39, Tomas Härdin wrote:
Downgrading to a .so file with a lower minor version number than
the program is built against can never be expected to work. Else
we couldn't add new functions without a major bump.
It requires the use ELF symbol versions -- which ffmpeg fails to
do properly.[...]
This is a fair point. I didn't actually know the loader can do stuff
like this, sounds super handy. How hard would it be to get that going?
Change libavcodec.v to
LIBAVCODEC_58 {
global:
av_foo;
av_bar;
av_whatever_else_there_is;...
local:
*;
};
LIBAVCODEC_58.91 {
global:
avpriv_mpeg4audio_get_config2;
} LIBAVCODEC_58;
LIBAVCODEC_58.123 { /* future example */
global:
avblahblah;
} LIBAVCODEC_58.91;
Repeat likewise for other .v files. The file is no longer a template. The
automatic substitution of "_MAJOR" by the build system needs to cease. Version
numbers in the file are supposed to be fixed (among the set of all .so files
that share a SONAME).
Won't that break the entire ABI of anything currently linked, and thus
would require a major bump?
Generally, this seems incredibly hard to maintain and will very likely
cause confusion every time someone adds stuff in the future.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".