E se o MASTER_SITES estiver configurado para CPAN, o subdiretório correto é geralmente selecionado automaticamente. Se o subdiretório padrão estiver errado, o CPAN/Module pode ser usado para alterá-lo. O MASTER_SITES também pode ser definido para o antigo MASTER_SITE_PERL_CPAN, então o valor preferido para o MASTER_SITE_SUBDIR é o nome da hierarquia de nível superior. Por exemplo, o valor recomendado para p5-Module-Name é Module. A hierarquia de nível superior pode ser examinada em cpan.org. Isso mantém o port funcionando quando o autor do módulo muda.
A exceção a essa regra é quando o diretório relevante não existe ou o distfile não existe neste diretório. Neste caso, é permitido usar o id do autor como MASTER_SITE_SUBDIR. A macro CPAN: AUTOR pode ser usada, a qual será traduzida para o diretório de autor com hash. Por exemplo,CPAN: AUTOR será convertido para autores/id/A/AU/AUTOR.
Quando um port precisa de suporte a Perl, ele deve definir USES=perl5 com o opcional USE_PERL5 descrito em descrição do USES no perl5.
| Variáveis Somente de Leitura | Significa |
|---|---|
PERL | O caminho completo do interpretador Perl 5, seja no sistema ou instalado a partir de um port, mas sem o número da versão. Use isso quando o software precisar do caminho para o interpretador Perl. Para substituir as linhas “#!” em scripts, use USES=shebangfix. |
PERL_VERSION | A versão completa do Perl instalada (por exemplo, 5,8,9). |
PERL_LEVEL | A versão do Perl instalada como um inteiro no formato MNNNPP (por exemplo,500809). |
PERL_ARCH | Local no qual o Perl armazena as bibliotecas dependentes da arquitetura. O valor padrão aponta para ${ARCH}-freebsd. |
PERL_PORT | Nome do port Perl instalado (por exemplo,perl5). |
SITE_PERL | Nome do diretório para onde vão os pacotes Perl específicos do site. Esse valor é adicionado a PLIST_SUB. |
Ports de Módulos Perl que não possuem um site oficial devem linkar para cpan.org na linha WWW do pkg-descr. O formato preferido para a URL é http://search.cpan.org/dist/Module-Name/ (incluindo a barra final).
Não use ${SITE_PERL} em declarações de dependência. Fazê-lo pressupõe que o perl5.mk foi incluído, o que nem sempre é verdade. Os ports que dependem desse port terão dependências incorretas se os arquivos desse port forem movidos posteriormente em uma atualização. O caminho certo para declarar as dependências do módulo Perl é mostrado no exemplo abaixo.
Para ports Perl que instalam páginas de manual, as macros PERL5_MAN3 e PERL5_MAN1 podem ser usadas dentro do pkg-plist. Por exemplo,
lib/perl5/5.14/man/man1/event.1.gz lib/perl5/5.14/man/man3/AnyEvent::I3.3.gz
pode ser substituído por
%%PERL5_MAN1%%/event.1.gz %%PERL5_MAN3%%/AnyEvent::I3.3.gz
Não existem macros PERL5_MAN para as outras seções (sendo xx igual a 2 e de 4 até 9) porque estes são instalados nos diretórios comuns.
Como o valor padrão para USE_PERL5 é build e run, configure-o para:
USES= perl5 USE_PERL5= build
ExtUtils::MakeMaker para CompilarA maioria dos módulos Perl vêm com um script configure Makefile.PL. Neste caso, defina:
USES= perl5 USE_PERL5= configure
Módulo::Build para CompilarQuando um modulo Perl vem com um script configure Build.PL, pode exigir Module:Build, nesse caso, defina
USES= perl5 USE_PERL5= modbuild
Se for ao contrário, e exigir Module::Build::Tiny, defina
USES= perl5 USE_PERL5= modbuildtiny
All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/
Questions that are not answered by the
documentation may be
sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.