|stdout||By default, the report is printed on the STDERR filehandle. If this option is present, it is sent to STDOUT instead.|
|cpan||Reduce the resulting list of modules by using the data maintained in the local CPAN configuration area. The <B>CPANB> module (see CPAN) maintains a very thorough representation of the contents of the archive, on a per-module basis. Using this option means that if there are two or more modules that are parts of the same distribution, only one will be reported (the one with the shortest name). This is useful for generating a minimalist dependancy set that can in turn be fed to the <B>CPANB> install command to ensure that all needed modules are in fact present.|
|cpandist||This is identical to the option above, with the exception that it causes the reported output to be the <B>CPANB> filename rather than the module name in the standard Perl syntax. This can also be fed to the <B>CPANB> shell, but it can also be used by other front-ends as a path component in fetching the requisite file from an archive site. Since the name contains the version number, this behaves as though noversion (see below) was also set. If both cpan and cpandist are set, this option (cpandist) takes precedence. If path is also specified, this option again takes precedence.|
|nocore||Suppress the display of those modules that are a part of the Perl core. This is dependant on the Perl private library area not being an exact substring of the site-dependant library. The build process checks this for you prior to install.|
|noversion||Suppress the inclusion of version information with the module names. If a module has defined its version by means of the accepted standard of declaring a variable $VERSION in the package namespace, <B>Devel::ModlistB> finds this and includes it in the report by default. Use this option to override that default.|
|zerodefault||Also oriented towards the display of versions, this option tells the report to use a zero (0) as the default version if the package has not provided a value. Otherwise, an empty string is displayed (unless <B>noversionB> is given).|
|path||Display the path and filename of each module instead of the module name. Useful for producing lists for later input to tools such as <B>rpmB>.|
|yaml =item yamlheader=NAME =item yamlheaderindent=N =item yamlindent=N =item yamlcomplete||
(Experimental, some options and/or features may change in future releases.)
If any <B>yamlB> option is present, the output format is in YAML rather than simple text. Additionally, the options can exert a degree of control over the format of the resulting YAML. Those options that take value must provide them by using a = character immediately followed by the value, with no space surrounding the =.
The <B>yamlB> option is just to allow selection of the YAML option without making any adjustments to the formatting. If any of the other YAML options are present, it will trigger this output format; an explicit <B>yamlB> would be unnecessary.
The YAML output format respects other options (<B>stdoutB>, <B>noversionB>, <B>zerodefaultB>, etc.). If <B>noversionB> is given, the output is a sequential list rather than key/value pairings. If <B>pathB> is given, the keys (or values of the sequential list) are pathnames. Whether pathnames or module names are used, those values are always explicitly quoted in the YAML output.
|stop||Exit before the first actual program line is executed. This provides for fetching the dependancy list without actually running the full program. This has a drawback: if the program uses any of <B>requireB>, <B>evalB> or other such mechanisms to load libraries after the compilation phase, these will not be reported.|
Perl versions up to 5.6.0 cannot accept options to the -d: flag as with the -M flag. Thus, to pass options one must use:
perl -d:Modlist -MDevel::Modlist=option1[,option2,...]
Versions of Perl from 5.6.1 onwards allow options to be included with the -d:Modlist flag.
Randy J. Ray <email@example.com>, using idea and prototype code provided by Tim Bunce <Tim.Bunce@ig.co.uk>
This module and the code within are released under the terms of the Artistic License 2.0 (http://www.opensource.org/licenses/artistic-license-2.0.php). This code may be redistributed under either the Artistic License or the GNU Lesser General Public License (LGPL) version 2.1 (http://www.opensource.org/licenses/lgpl-2.1.php).
|perl v5.20.3||DEVEL::MODLIST (3)||2008-09-05|