6.7. Использование Perl

Если MASTER_SITES установлена в значение MASTER_SITE_PERL_CPAN, то предпочтительным значением MASTER_SITE_SUBDIR является имя иерархии верхнего уровня. Например, рекомендуемым значением для p5-Module-Name является Module. Иерархию верхнего уровня можно посмотреть на сайте cpan.org. Это поддерживает порт в рабочем состоянии при изменении модуля автором.

Исключением этого правила является отсутствие соответствующего каталога или файла с дистрибутивом в этом каталоге. В качестве MASTER_SITE_SUBDIR в этом случае разрешается использовать id автора.

В качестве значения все из настраиваемых knobs ниже принимают YES или строку с версией вида 5.8.0+. YES означает, что данный порт можно использовать с любой из поддерживаемых версий Perl. Если порт работает только с некоторыми версиями Perl, то это можно обозначить при помощи строки с версией, указывающей на минимальную версию (пример: 5.7.3+), максимальную версию (пример: 5.8.0-) или точную версию (пример: 5.8.3).

Таблица 6.6. Переменные для портов, использующих Perl
ПеременнаяЗначение
USE_PERL5Perl 5 используется для построения и работы.
USE_PERL5_BUILDPerl 5 используется для построения.
USE_PERL5_RUNPerl 5 используется во время работы.
PERLПолный путь к интерпретатору Perl 5, либо в системе, либо установленному из портов, но без номера версии. Используйте это, если вам нужно заменить строки <<#!>> в скриптах.
PERL_CONFIGUREКонфигурация при помощи MakeMaker языка Perl. Влечёт USE_PERL5.
PERL_MODBUILDКонфигурация, построение и установка с использованием Module::Build. Влечёт PERL_CONFIGURE.
Переменные только для чтенияЗначение
PERL_VERSIONПолная версия установленного Perl (например, 5.8.9).
PERL_LEVELУстановленная версия Perl в форме целого числа вида MNNNPP (например, 500809).
PERL_ARCHМесто, в котором Perl хранит архитектурно-зависимые библиотеки. По умолчанию это ${ARCH}-freebsd.
PERL_PORTНазвание установленного порта Perl, (к примеру, perl5).
SITE_PERLИмя каталога, куда помещаются специфичные для сайта пакеты Perl. Это значение добавляется к PLIST_SUB.

Примечание:

Порты для модулей Perl, которые не имеют официального вебсайта, должны указывать cpan.org в строке WWW в файле pkg-descr. Предпочтительная форма URL http://search.cpan.org/dist/Module-Name/ (включая завершающий слэш).

Примечание:

Не используйте ${SITE_PERL} в объявлении зависимостей. Использование этой конструкции подразумевает наличие подключенного bsd.perl.mk, что не всегда так. Порты, зависимые от этого порта, получат неправильные зависимости, если файлы этого порта будут перемещены при последующем обновлении. Правильный способ объявления зависимостей для модулей Perl показан в примере ниже.

Пример 6.2. Пример зависимости Perl
p5-IO-Tee>=0.64:${PORTSDIR}/devel/p5-IO-Tee

Для портов Perl, которые устанавливают страницы справочника, в pkg-plist можно использовать макрос PERL5_MANx (где x принимает значение от 1 до 9). Например,

lib/perl5/5.14/man/man3/AnyEvent::I3.3.gz

можно заменить на

%%PERL5_MAN3%%/AnyEvent::I3.3.gz

Этот, и другие документы, могут быть скачаны с http://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.

По вопросам, связанным с этой документацией, пишите в рассылку <doc@FreeBSD.org>.