ppk-deptool - Perl Packager dependency tool
~$ ppk-deptool list-targets some-program ~$ ppk-deptool list-target-deps some-program Some-Module-0.0.tar.gz ~$ ppk-deptool fetch-dist Some-Module-0.0.tar.gz ~$ ppk-deptool fetch-dist --deps-for some-program
ppk-deptool provides support for managing dependencies for self-contained programs in a manner that aids in the creation of a Makefile for easy building. ppk-deptool is able to reference a PROG.INDEX, as well as a DIST.INDEX file, which are used to represent lists of programs and their Perl package depenencies, as well as how to fetch said dependencies from a remote source.
PROG.INDEX
DIST.INDEX
Open the PROG.INDEX file in the current directory and list all build targets therein, one per line.
target
Given a target listed in PROG.INDEX, list all the Perl package dependencies needed to build that target.
dist
Given a Perl package distribution listed in DIST.INDEX, fetch the Perl package distribution and place it in the current working directory.
--deps-for
Given a target listed in PROG.INDEX, fetch all dependencies from each source listed in DIST.INDEX.
The PROG.INDEX file is a flat file formatted in the following manner.
program-a: Some-Dep-0.1.tar.gz Another-Dep-1.0.tar.gz program-b: Some-Dep-0.1.tar.gz Acme-Eyebleach-1.0.tar.gz
Lines can consist solely of whitespace, or begin with a hash (#) to begin a comment. Any number of whitespace-delimited distribution names can be listed as dependencies for a target program. Dependencies should have a corresponding definition in DIST.INDEX.
The DIST.INDEX file is a flat file which lists all available Perl package distribution dependencies for a project, as well as a single URI from which each may be obtained. Entries may be listed as such:
# # Tarball via HTTP # Another-Dep-1.0.tar.gz: http://foo.bar/baz/Another-Dep-1.0.tar.gz # # Tarball via HTTP via CPAN # Acme-Eyebleach-1.0.tar.gz: cpan://SOMEBODY/Acme-Eyebleach-1.0.tar.gz # # Repository via git # Yet-Another-1.0: git://foo.bar/baz/Yet-Another
Empty lines containing only whitespace, or beginning with any amount of whitespace, or none at all, followed by a hash (#) to denote a comment, are permitted.
Copyright (c) 2013, cPanel, Inc. All rights reserved. This is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic for further details.
To install Build::PPK, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Build::PPK
CPAN shell
perl -MCPAN -e shell install Build::PPK
For more information on module installation, please visit the detailed CPAN module installation guide.