NAME
make_ppm - script to make a PPM distribution
SYNOPSIS
make_ppm [options] [Module | Distribution]
# make a PPM from within an already unpacked source distribution
C:\.cpan\build\package_src> make_ppm
# fetch from CPAN a module distribution and build a PPM
C:\.cpan\build> make_ppm Net::FTP
# fetch a distribution and build a PPM
C:\.cpan\build> make_ppm ftp://wherever.com/package.tar.gz
DESCRIPTION
make_ppm
is an interface to the PPM::Make
module, and is used to build a PPM (Perl Package Manager) distribution from a CPAN source distribution. See PPM::Make for a discussion.
Apart from the options described below, without any arguments make_ppm
will assume it is inside an unpacked source distribution and make the corresponding PPM distribution. If it is given an argument of what looks like a module name (eg, Net::FTP), it will use CPAN.pm
to look up the corresponding distribution and fetch and build it. Otherwise, additional arguments (eg, package.tar.gz, or http://someplace.org/package.tar.gz) will be interpreted as distributions to fetch and build.
Options can be read from a configuration file (see PPM::Make) and/or given as options to make_ppm. In case of duplicates, the options to make_ppm take precedence. Available options include:
- [-z | --zip]
-
By default,
make_ppm
will build a.tar.gz
distribution if possible. This option forces a.zip
distribution to be made. - [-f | --force]
-
By default, if
make_ppm
detects a blib/ directory, it will assume the distribution has already been made, and will not remake it. This option forces remaking the distribution. - [-i | --ignore]
-
By default,
make_ppm
, if it is building the distribution, will die if all tests do not pass. Turning on this option instructsmake_ppm
to ignore any test failures. - [-b | --binary] location
-
location is used as the value for the
BINARY_LOCATION
attribute passed toperl Makefile.PL
, and is used in setting the HREF attribute of the CODEBASE field in the ppd file. - [-n | --arch_sub]
-
This option will insert the value of
$Config{archname}
(or the value of the -a option, if given) as a relative subdirectory in the HREF attribute of the CODEBASE field in the ppd file. - [-o | --os] os
-
If this option is specified, the value, if present, will be used instead of the default for the NAME attribute of the OS field of the ppd file. If no value is supplied, the OS field will not be included in the ppd file.
- [-a | --arch] arch
-
If this option is specified, the value, if present, will be used instead of the default for the NAME attribute of the ARCHITECTURE field of the ppd file. If no value is specified, the ARCHITECTURE field will not be included in the ppd file.
- [-s | --script] script
-
This will be used in the PPM_INSTALL_SCRIPT attribute passed to
perl Makefile.PL
, and arises in setting the value of the INSTALL field in the ppd file. If this begins with http:// or ftp://, so that the script is assumed external, this will be used as the HREF attribute for INSTALL. - [-e | -- exec] exec
-
This will be used in the PPM_INSTALL_EXEC attribute passed to
perl Makefile.PL
, and arises in setting the EXEC attribute of the INSTALL field in the ppd file. - [-x | --add] file
-
This option, which can be specified multiple times, can be used to add additional files outside of the the blib directory to the archive.
- [-l | --install]
-
If specified, the
ppm
utility will be used to install the module. - [-r | --remove]
-
If specified, the directory used to build the ppm distribution given on the command line will be removed after a successful install.
- [-p | --prog] program=/path/to/program
-
This option specifies that
/path/to/program
should be used forprogram
, rather than the one PPM::Make finds. This option can be specified multiple times, withprogram
being one oftar
,gzip
,zip
,unzip
, ormake
. - ppd $path_to_ppd_files
-
If given, this will copy the ppd file to the location specified, and must be given as an absolute pathname. If host is specified, this copy will be done via ftp, otherwise a local copy is made.
- ar $path_to_archive_files
-
This is the location where the archive file should be placed. This may either be an absolute pathname or a relative one, in which case it is interpreted to be relative to that specified by ppd. If this is not given, but ppd is specified, this will default to the value of ppd.
- host $hostname
-
If specified, an ftp transfer to the specified host is done, with ppd and ar as described above.
- user $username
-
This specifies the user name to login as when transferring via ftp.
- passwd $passwd
-
This is the associated password to use for user
- [-A | --as]
-
Beginning with Perl-5.8, Activestate adds the Perl version number to the NAME of the ARCHITECTURE tag in the ppd file. This option, which is enabled by default, will make a ppd file compatible with this practice. Specify
--noas
to disable this option. - [-V | --vs]
-
This option will add a version string (based on the VERSION reported in the ppd file) to the ppd and archive filenames.
- [-h | --help]
-
This prints out a short help screen and exits.
- [-v | --version]
-
This prints out some version information and exits.
COPYRIGHT
This program is copyright, 2002, by Randy Kobes <randy@theoryx5.uwinnipeg.ca>. It is distributed under the same terms as Perl itself.