Есть библиотека librtmp, у нее грубо говоря есть 2 версии: релиз и транк. Релиз был еще в 2010 году, поэтому транк переделан хоть и сильно (с поломаным апи), но #define RTMP_LIB_VERSION 0x020300 в обоих версиях одинаковый.
Грубо говоря, в одной версии: someFunc(int a, int b, int c);
А в другой версии someFunc(int a, int b, int someNewParam, int c);
Как бы мне правильнее сделать поддержку обоих версий? Можно конечно попробовать найти левый #define который есть в новой версии, но это совсем костыль.