[devel] libopenobex-1.3 symbol versioning patch

Alexey Tourbin =?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Сб Авг 12 18:05:05 MSD 2006


On Sat, Aug 12, 2006 at 05:50:00PM +0400, Sergey Vlasov wrote:
> On Fri, Aug 11, 2006 at 10:44:53PM +0400, Sergey Vlasov wrote:
> > После 1.1 вроде бы изменений ABI больше не было (во всяком случае,
> > файл lib/obex.sym больше не менялся).
> 
> Враньё.  Точнее, lib/obex.sym действительно не менялся, а вот
> изменения, затрагивающие ABI, были - между версиями 1.1 и 1.2:
> 
> 
>     Add support for suspend after sending a header
> 
> +#define OBEX_FL_SUSPEND		0x10	/* Suspend after sending this header */
> 
> (это новый флаг для функции OBEX_ObjectAddHeader)
> 
> 
>     Add support for empty headers for buggy OBEX servers (e.g. Teleca)
> 
> +#define OBEX_HDR_EMPTY		0x00 /* Empty header (buggy OBEX servers) */
> 
> 
>     Add OBEX_EV_REQCHECK support
> 
> +#define OBEX_EV_REQCHECK	11	/* First packet of an incoming request has been parsed */
> 
> 
> И что в таком случае делать?

Если добавились новые флаги, тогда вешать эти функции, к которым идут
новые флаги, на новый интерфейс 1.2 -- чтобы на интерфейсе 1.2 эти
функции были с двумя собаками.  А в качестве совместимости прицепить
эти же функции на интерфейс 1.1, но с одной собакой.

Тогда весь новый код, который потенциально использует новые флаги, сядет
на 1.2, а старый код по-прежнему будет видеть 1.1.

Как это делать с ходу не скажу, проще попробовать.
В dsohowto про это есть.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20060812/b902ddc4/attachment-0001.bin>


Подробная информация о списке рассылки Devel