If MASTER_SITES
is set to
MASTER_SITE_PERL_CPAN
, then the preferred
value of MASTER_SITE_SUBDIR
is the
top-level hierarchy name. For example, the recommended value
for p5-Module-Name
is
Module
. The top-level hierarchy can be
examined at cpan.org.
This keeps the port working when the author of the module
changes.
The exception to this rule is when the relevant directory
does not exist or the distfile does not exist in that
directory. In such case, using author's id as
MASTER_SITE_SUBDIR
is allowed.
All of the tunable knobs below accept either
YES
or a version string like
5.8.0+
. YES
means
that the port can be used with any of the supported
Perl versions. If a port only
works with specific versions of
Perl, it can be indicated with a
version string, specifying a minimum version (e.g.,
5.7.3+
), a maximum version (e.g.,
5.8.0-
) or an exact version (e.g.,
5.8.3
).
Variable | Meaning |
---|---|
USE_PERL5 | The port uses Perl 5 to build and run. |
USE_PERL5_BUILD | The port uses Perl 5 to build. |
USE_PERL5_RUN | The port uses Perl 5 to run. |
PERL | The full path of the Perl 5 interpreter,
either in the system or installed from a port, but
without the version number. Use this if you need to
replace “#! ”lines in
scripts. |
PERL_CONFIGURE | Configure using Perl's MakeMaker. It implies
USE_PERL5 . |
PERL_MODBUILD | Configure, build and install using Module::Build.
It implies PERL_CONFIGURE . |
Read only variables | Means |
---|---|
PERL_VERSION | The full version of Perl
installed (e.g., 5.8.9 ). |
PERL_LEVEL | The installed Perl version as
an integer of the form MNNNPP
(e.g., 500809 ). |
PERL_ARCH | Where Perl stores architecture
dependent libraries. Defaults to
${ARCH}-freebsd . |
PERL_PORT | Name of the Perl port that is
installed (e.g., perl5 ). |
SITE_PERL | Directory name where site specific
Perl packages go. This value is
added to PLIST_SUB . |
Ports of Perl modules which do not have an official
website should link to cpan.org
in the WWW
line of pkg-descr
. The
preferred URL form is
http://search.cpan.org/dist/Module-Name/
(including the trailing slash).
Do not use ${SITE_PERL}
in dependency
declarations. Doing so assumes that
bsd.perl.mk
has been included, which is
not always true. Ports depending on this port will have
incorrect dependencies if this port's files move later in an
upgrade. The right way to declare Perl module dependencies
is shown in the example below.
For Perl ports that install manual pages, the macro
PERL5_MAN
(where
x
x
ranges from 1
to
9
) can be used inside
pkg-plist
. For example
can be replaced with
All FreeBSD documents are available for download at http://ftp.FreeBSD.org/pub/FreeBSD/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>.