|
|
Строка 1: |
Строка 1: |
- | [[Category:Devel]] | + | [[Category:Sisyphus]] |
- | {{MovedFromFreesourceInfo|AltLinux/Sisyphus/devel/Perl}} | + | {{MovedFromFreesourceInfo|AltLinux/Sisyphus/perl}} |
- | > Ну вообще-то для перловых пакетов и надо использовать -bi. > Алексей Турбин об этом писал неоднократно.
| + | |
- | Не всегда, а иногда, даже изредка. :)
| + | |
| | | |
- | Дело в том, что если в пакете есть `make test', в котором происходит
| + | == Perl == |
- | загрузка (и тестирование) всех модулей, которые будут установлены, то
| + | |
- | -bi использовать не надо.
| + | |
| | | |
- | Если же в пакете тестов нету, т.е. `make test' говорит
| + | Наилучшее текущее приближение к HOWTO по упаковке perl-модулей и perl-приложений находится в пакете rpm-build-perl, в файле [http://git.altlinux.org/people/at/packages/?p=rpm-build-perl.git;a=blob_plain;f=README.ALT;hb=HEAD README.ALT]. |
- | 'No tests defined for $(NAME) extension.', то использовать -bi почти
| + | |
- | наверняка надо, т.к. perl.req (в конце стадии -bi) производит
| + | |
- | полноценную загрузку модулей для синтаксического анализа (вернее, для
| + | |
- | анализа дерева опкодов), при которой отрабатывают все директивы "use"
| + | |
- | и некоторые директивы "require" (это особенность самой загрузки модулей,
| + | |
- | то есть самого перла, а не perl.req).
| + | |
| | | |
- | Что касается просто программ, написанных на перле, то рекомендую в конце
| + | Для простой упаковки модулей из CPAN (или соответствующих CPAN-овским рекомендациям по упаковке), можно также воспользоваться утилитой [http://alt.linux.kiev.ua/srpm/cpan2rpm cpan2rpm]. |
- | секции %build добавить что-нибудь вроде
| + | |
- | | + | |
- | ./prog --version
| + | |
- | | + | |
- | или | + | |
- | | + | |
- | %__perl -Mblib ./prog --version
| + | |
- | | + | |
- | если в каталоге blib после сборки есть модули.
| + | |
- | | + | |
- | Это должно зафиксировать все сборочные зависимости.
| + | |
- | А также это тест на минимальную работоспособность.
| + | |
- | | + | |
- | А вообще треды лучше оторвать. Rafael Garcia-Suarez стал собирать перл
| + | |
- | для мандраки без тредов вообще. Кстати, вот с ним интервью:
| + | |
- | [http://www.perl.com/pub/a/2005/02/24/mandrakelinux.html 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@''
| + | |
Наилучшее текущее приближение к HOWTO по упаковке perl-модулей и perl-приложений находится в пакете rpm-build-perl, в файле README.ALT.
Для простой упаковки модулей из CPAN (или соответствующих CPAN-овским рекомендациям по упаковке), можно также воспользоваться утилитой cpan2rpm.