PERL-DEPENDS(1)

NAME
perl-depends - rough indicator of Perl module dependencies

SYNOPSIS
  perl-depends [options] FILE [FILE ...]

DESCRIPTION
An utility to show roughly what modules a program uses. Perl evaluates "use" commands at compile time, storing the information about loaded modules in the %INC variable. Comparing that list with the standard Perl modules gives an estimate of the external module dependencies.

The dependency information can be used to determine what external modules have to be installed before the program can be used.

The target FILE have to be instrumented with the dependency checking code. The resulting "binary" is then stored in a temporary file which the user runs.

This program does not run the instrumented files because it cannot know what possible options need to be passed for programs to trigger "no behavior". That is, something that doesn't actually involve executing the "binary" in real. Such options passed would include --version, --dry-run, invalid options like --generate-syntax-error-now, or invalid files etc to make program stop on error. The user can know better the details of running the intrumented files.

An example of output: the external module depends here is 'Regexp::Common' and the rest of them can be ignored.

    Regexp::Common                 Regexp/Common.pm
    Regexp::Common::CC             Regexp/Common/CC.pm
    ...

OPTIONS

-e, --extension=EXT
    Use extension EXT for instrumented files. The default is ".tmp".

-h, --help
    Print text help

--help-html
    Print help in HTML format.

--help-man
    Print help in manual page man(1) format.

-v, --verbose LEVEL
    Print informational messages. Increase numeric LEVEL for more verbosity.

-V, --version
    Print contact and version information.

EXAMPLES
Instrument a file, run it to see results and delete instrumentation:

    perl-depends file.pl
    perl file.pl.tmp --version
    rm *.tmp

TROUBLESHOOTING
None.

ENVIRONMENT
None.

FILES
None.

EXIT STATUS
This program's exit status is not defined.

The instrumented programs exit status is 1 in case external modules are displayed and 0 if no external modules are found.

DEPENDENCIES
Uses standard Perl modules.

BUGS AND LIMITATIONS
None.

SEE ALSO
cpan(1)

AVAILABILITY
http://freecode.com/projects/perl-depends

AUTHOR
Jari Aalto <jari.aalto@cante.net>

LICENSE
Copyright (C) 2009-2011 Jari Aalto <jari.aalto@cante.net>

This program is free software; you can redistribute and/or modify program under the terms of GNU General Public license either version 2 of the License, or (at your option) any later version. See <http://www.gnu.org/licenses/>.