Improve FF_SYMVER documentation

Originally committed as revision 23911 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Måns Rullgård 2010-06-30 20:09:55 +00:00
parent 2eaf7e49c7
commit cae70f99a3

View File

@ -204,12 +204,21 @@
/** /**
* Create a non default alias for a function with specified version. * Define a function with only the non-default version specified.
* 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 * On systems with ELF shared libraries, all symbols exported from
* is not found in the lib in which it was during link time with enabled versioning * FFmpeg libraries are tagged with the name and major version of the
* even if a correctly versioned and matching symbol exists in another lib and * library to which they belong. If a function is moved from one
* even if it did find that would it not contain an explicit check to fail * 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 #if HAVE_SYMVER_ASM_LABEL
# define FF_SYMVER(type, name, args, ver) \ # define FF_SYMVER(type, name, args, ver) \