Perl
> Ну вообще-то для перловых пакетов и надо использовать -bi. > Алексей Турбин об этом писал неоднократно.
Не всегда, а иногда, даже изредка. :)
Дело в том, что если в пакете есть `make test', в котором происходит загрузка (и тестирование) всех модулей, которые будут установлены, то -bi использовать не надо.
Если же в пакете тестов нету, т.е. `make test' говорит 'No tests defined for $(NAME) extension.', то использовать -bi почти наверняка надо, т.к. perl.req (в конце стадии -bi) производит полноценную загрузку модулей для синтаксического анализа (вернее, для анализа дерева опкодов), при которой отрабатывают все директивы "use" и некоторые директивы "require" (это особенность самой загрузки модулей, то есть самого перла, а не perl.req).
Что касается просто программ, написанных на перле, то рекомендую в конце секции %build добавить что-нибудь вроде
./prog --version
или
%__perl -Mblib ./prog --version
если в каталоге blib после сборки есть модули.
Это должно зафиксировать все сборочные зависимости. А также это тест на минимальную работоспособность.
А вообще треды лучше оторвать. Rafael Garcia-Suarez стал собирать перл для мандраки без тредов вообще. Кстати, вот с ним интервью: http://www.perl.com/pub/a/2005/02/24/mandrakelinux.html
at@
Если 'make test' запускается посредством макросов из /etc/rpm/macros.d/perl5, то стоит добавить в них проверку, выключающую запуск 'make test' под buildreq'ом.
За неимением (пока) секции %check, я в своих пакетах обычно использую такую конструкцию: %{?!__buildreqs:%{?!_without_check:%{?!_disable_check:%make_build -k check}}}
ldv@