# HG changeset patch # User mru # Date 1277928595 0 # Node ID bb7159d1f76983a29f8e0d783b15a3738be0d526 # Parent 399b530e8fb2ca49dd680f1c726afdfaf875c811 Improve FF_SYMVER documentation diff -r 399b530e8fb2 -r bb7159d1f769 internal.h --- a/internal.h Wed Jun 30 20:09:52 2010 +0000 +++ b/internal.h Wed Jun 30 20:09:55 2010 +0000 @@ -204,12 +204,21 @@ /** - * Create a non default alias for a function with specified version. - * This is needed when symbols are moved from a lib to a dependancy of the lib - * because the gnu linker as of 2010 is buggy and fails to dynamicaly link if a symbol - * is not found in the lib in which it was during link time with enabled versioning - * even if a correctly versioned and matching symbol exists in another lib and - * even if it did find that would it not contain an explicit check to fail + * Define a function with only the non-default version specified. + * + * On systems with ELF shared libraries, all symbols exported from + * FFmpeg libraries are tagged with the name and major version of the + * library to which they belong. If a function is moved from one + * library to another, a wrapper must be retained in the original + * location to preserve binary compatibility. + * + * Functions defined with this macro will never be used to resolve + * symbols by the build-time linker. + * + * @param type return type of function + * @param name name of function + * @param args argument list of function + * @param ver version tag to assign function */ #if HAVE_SYMVER_ASM_LABEL # define FF_SYMVER(type, name, args, ver) \