[devel] metakit update help needed

Sergey Vlasov =?iso-8859-1?q?vsu_=CE=C1_altlinux=2Eru?=
Пн Янв 29 22:16:21 MSK 2007


On Mon, Jan 29, 2007 at 09:05:54PM +0300, Pavlov Konstantin wrote:
> On Monday 29 January 2007 16:36, Damir Shayhutdinov wrote:
> > Как проверить соответствие API/ABI старого пакета и нового, чтобы
> > принять решение - увеличивать ли soname или нет? Сравнивать include ?
> 
> rpmsodiff из пакета qa-robot.

rpmsodiff проверяет только изменения в наборе экспортируемых символов,
чего в общем случае недостаточно (хотя в случае C++, где в имени
содержатся и типы параметров, ситуация чуть лучше, изменения в формате
каких-то структур таким образом всё равно обнаружить нельзя).  Так что
дополнительно сравнивать include нужно в любом случае.

Ещё неприятная вещь - символы, которые экспортируются, но не входят в
официально поддерживаемый API библиотеки: в некоторых случаях
обнаруживается, что их тем не менее кто-то использует.  Внедрение
version script или хотя бы просто списка экспортируемых символов
позволяет хоть как-то бороться с этим (программы, использующие
внутренние символы библиотеки, в этом случае просто не соберутся).
Хотя для C++ написать такой файл довольно сложно.

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


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