[devel] Makefile.am: Change libpng12 versioning to match upstream versioning (ALT#12886)

Alexey Tourbin at на altlinux.ru
Вт Июн 23 11:05:14 MSD 2009


On Tue, Jun 23, 2009 at 10:47:34AM +0400, Dmitry V. Levin wrote:
> > Это даже хуже, чем soname change.  В случае soname change можно создать
> > compat пакет со старым soname, а здесь это невозможно.  Получается total
> > disaster: http://git.altlinux.org/tasks/8392/task/log -- надо
> > пересобрать более 200 пакетов.  Даже если воспользоваться NMU
> > с административными привилегиями, что не представляется feasible даже
> > с административными привилегиями, то такая вещь, как частичное
> > обновление пакетов, полностью отпадает.  Будет эффект dist-upgrade.
> > 
> > Очень некрасиво получается.  Как говорил Суворов, на такой штурм можно
> > решиться только один раз в жизни. :)
> 
> Да, это действительно сложнее воплотить, чем soname change.
> Есть возможность проверить, чем подкреплён этот "popular demand".
> Хватит ли его на то, чтобы довести сборку task #8392 до Сизифа?

Дело не только в popular demand, но ещё и в том, что нужно делать
"по-правильному".  Правильные вещи могут быть популярны или непопулярны,
это уже не играет роли.  Правда, приверженцы Поппера могут обвинить меня
в том, что я впал в ересь эссенциализма -- делаю утверждения о том, что
некоторые вещи правильны сами по себе.  Но я и сам как бы немного
сторонник Поппера...

> > Неужели ничего нельзя придумать?  В принципе ведь существует возможность
> > сохранить старый интерфейс:
> > 
> > png_foo@@PNG12_0 (новый интерфейс по умолчанию)
> > png_foo на PNG_12 (старый интерфейс для совместимости)
> 
> В libpng12-1.2.37-alt1 и предыдущих сборках было наоборот, однако это
> ничему не помогало, ибо экспортируемый символ не может принадлежать
> более чем одному интерфейсу.

Дело как раз в том, что символ может принаджелать двум интерфейсам --
интерфейсу по умолчанию @@ и compat-интерфейсу @.  Но, кажется, это
требует изменений в коде, что уже "слишком".

> > Но мне не понятно, можно ли это сделать без перекраивания исходников
> > libpng на уровне каждого экспортируемого символа.  Боюсь, что нельзя. :(
> 
> Совершать удвоение экспортируемых символов ради совместимости я не хочу,
> других вариантов не видно.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 197 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20090623/9afa2021/attachment.bin>


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