Version independant plugins
Make the vlc API more stable so binary modules can be distributed separately. We need to have an API version tracking system with :
- an API version number
- a API version backwards compatibility number
That mainly concerns the module header (all these macros that generate the vlc_entry* function and its code).
We should also :
- refrain from modifying existing API in a non-backward compatible way (adding const or changing signedness is OK),
- clean up headers file so they don't provide definition for structures that should not be used by plugins directly,
- don't modify public structure declaration (it's VERY tricky to avoid breaking binary compatibility with these),
That way we could distribute plugins for ffmpeg that people using some distros might want to download ...
OPEN ISSUE : how do we determine the minimum version number a plugin needs ? scan API used (very complex, and not sufficient because of the possible structure layout change) ?
See also #171.