diff options
author | Måns Rullgård <mans@mansr.com> | 2010-06-30 20:09:55 +0000 |
---|---|---|
committer | Måns Rullgård <mans@mansr.com> | 2010-06-30 20:09:55 +0000 |
commit | cae70f99a3bb0955a325ed58a9dfa88eff4a6199 (patch) | |
tree | 5476058447a31a137f9250fefb134dacd32bd24f | |
parent | 2eaf7e49c7e621deaa910e6ed6f897959ee94933 (diff) | |
download | ffmpeg-cae70f99a3bb0955a325ed58a9dfa88eff4a6199.tar.gz |
Improve FF_SYMVER documentation
Originally committed as revision 23911 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavutil/internal.h | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/libavutil/internal.h b/libavutil/internal.h index 9150074b19..221c2ed2b4 100644 --- a/libavutil/internal.h +++ b/libavutil/internal.h @@ -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) \ |