[devel] perl-5.8.0-alt0.1

=?iso-8859-1?q?at_=CE=C1_turbinal=2Eorg?= =?iso-8859-1?q?at_=CE=C1_turbinal=2Eorg?=
Вс Окт 6 18:45:38 MSD 2002


devel:/incoming/Sisyphus/perl-5.8.0-alt0.1.nosrc.rpm
Вопросов пока много, но смотреть уже есть что.

Notes:

1) размер; не нравится мне это. И собирается тоже долго.
$ ls -sw1 perl*.tar.bz2
4757 perl-5.6.1.tar.bz2
8428 perl-5.8.0.tar.bz2

Некоторых модулей (Storable) раньше в перле не было, и они собирались
как отдельные пакеты, а теперь они входят в perl bundle.

2) бинарная несовместимость. Как правильно выставить obsoletes?
Obsoletes: perl-base < 1:5.8.0
?

Кроме того, желательно (предлагаю) изменить soname: libperl.so.5.8.
Provides: libperl.so.5.8
Obsoletes: libperl.so.5
Тогда по зависимостям автоматически отвалится, например, vim.

Но и этого недостаточно для безболезненного апгрейда. Пример:

$ rpm -ql perl-HTML-Parser | grep so
/usr/lib/perl5/site_perl/5.6.1/i386-linux/auto/HTML/Parser/Parser.so
$ rpm -q --requires perl-HTML-Parser | grep perl
perl-HTML-Tagset >= 3.03
perl >= 0:5.00400
perl(Carp.pm)
perl(DynaLoader.pm)
perl(Exporter.pm)
perl(HTML/Entities.pm)
perl(HTML/Parser.pm)
perl(HTML/PullParser.pm)
perl(HTML/Tagset.pm)
perl(HTTP/Headers.pm)
perl(IO/File.pm)
perl(URI.pm)
perl(strict.pm)
perl(vars.pm)
$

При апгрейде перла этот пакет обновлен не будет. Что с этим делать, я не
знаю. Если изменять soname, то этим нужно воспользоваться при пересборке
пакетов с бинарным кодом:
PreReq: libperl.so.5.8

Надеюсь что в 5.8.x ABI не изменится. :o)

3) Интерфейс тредов устаканился (ithreads), теперь надо собирать с тредами.
s,/usr/lib/perl5/i386-linux,/usr/lib/perl5/i386-linux-thread-multi,
Из-за этого удалось выловить несколько глюков, когда при сборке на самом
деле использовался уже установленный перл.

Или лучше оставить i386-linux?

4) db, gdbm, ndbm -- которые из этих модулей нужно/не нужно собирать и
по каким соображениям?

TODO:

1) просмотреть патчи от debian.

2) сделать статические списки для %files; это должно увеличить
надежность сборки.

3) buildreq и т.п.; сделать локальный BTE и проверить зависимости.




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