PAR::Dist::FromPPD - Create PAR distributions from PPD/PPM packages |
PAR::Dist::FromPPD - Create PAR distributions from PPD/PPM packages
use PAR::Dist::FromPPD; # Creates a .par distribution of the PAR module in the # current directory based on the PAR.ppd file from the excellent # bribes.org PPM repository. ppd_to_par(uri => 'http://www.bribes.org/perl/ppm/PAR.ppd');
# You could download the .ppd and .tar.gz files first and then do: ppd_to_par(uri => 'PAR.ppd', verbose => 1); =head1 DESCRIPTION
This module creates PAR distributions from PPD XML documents which are used by ActiveState's ``Perl Package Manager'', short PPM.
It parses the PPD document to extract the required information and then uses PAR::Dist to create a .par archive from it.
Please note that this code works for me but hasn't been tested to full extent.
By default, the ppd_to_par
subroutine is exported to the callers
namespace. get_ppd_content
will be exported on demand.
This is a list of all public subroutines in the module.
The only mandatory parameter is an URI for the PPD file to parse.
Arguments:
uri => 'ftp://foo/bar' or 'file:///home/you/file.ppd', ... out => 'directory' (write distribution files to this directory) verbose => 1/0 (verbose mode on/off) distname => Override the distribution name distversion => Override the distribution version perlversion => Override the distribution's (minimum?) perl version arch => Override the distribution's target architecture selectarch => Regular Expression. selectperl => Regular Expression.
arch
may also be set to any_arch
and perlversion
may be set to
any_version
.
If a regular expression is specified using selectarch
, that expression is
matched against the architecture settings of each implementation. The first
matching implementation is chosen. If none matches, the implementations
are tried in order of appearance. Of course, this heuristic is applied before
any architecture overriding via the arch
parameter is carried out.
selectperl
works the same as selectarch
, but operates on the (minimum)
perl version of an implementation. If both selectperl
and selectarch
are present, selectperl
operates on the implementations matched by
selectarch
. That means selectarch
takes precedence.
First argument must be an URI string for the PPD.
(Supported are file://
URIs and whatever LWP
supports.)
Fetches the PPD file and returns its contents as a string.
die()
s on error.
The the PAR::Dist manpage module is used to create .par distributions from an unpacked CPAN distribution. The the CPAN manpage module is used to fetch the distributions from the CPAN.
PAR has a mailing list, <par@perl.org>, that you can write to; send an empty mail to <par-subscribe@perl.org> to join the list and participate in the discussion.
Please send bug reports to <bug-par-dist-fromppd@rt.cpan.org>.
The official PAR website may be of help, too: http://par.perl.org
For details on the Perl Package Manager, please refer to ActiveState's website at http://activestate.com.
Steffen Mueller, <smueller at cpan dot org>
Copyright (C) 2006 by Steffen Mueller
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.6 or, at your option, any later version of Perl 5 you may have available.
PAR::Dist::FromPPD - Create PAR distributions from PPD/PPM packages |