1Module::Starter::SimpleU(s3e)r Contributed Perl DocumentaMtoidounle::Starter::Simple(3)
2
3
4

NAME

6       Module::Starter::Simple - a simple, comprehensive Module::Starter
7       plugin
8

VERSION

10       Version 1.54
11

SYNOPSIS

13           use Module::Starter qw(Module::Starter::Simple);
14
15           Module::Starter->create_distro(%args);
16

DESCRIPTION

18       Module::Starter::Simple is a plugin for Module::Starter that will
19       perform all the work needed to create a distribution.  Given the
20       parameters detailed in Module::Starter, it will create content, create
21       directories, and populate the directories with the required files.
22

CLASS METHODS

24   "create_distro(%args)"
25       This method works as advertised in Module::Starter.
26
27   "new(%args)"
28       This method is called to construct and initialize a new Module::Starter
29       object.  It is never called by the end user, only internally by
30       "create_distro", which creates ephemeral Module::Starter objects.  It's
31       documented only to call it to the attention of subclass authors.
32

OBJECT METHODS

34       All the methods documented below are object methods, meant to be called
35       internally by the ephemperal objects created during the execution of
36       the class method "create_distro" above.
37
38   create_basedir
39       Creates the base directory for the distribution.  If the directory
40       already exists, and $force is true, then the existing directory will
41       get erased.
42
43       If the directory can't be created, or re-created, it dies.
44
45   create_modules( @modules )
46       This method will create a starter module file for each module named in
47       @modules.
48
49   module_guts( $module, $rtname )
50       This method returns the text which should serve as the contents for the
51       named module.  $rtname is the email suffix which rt.cpan.org will use
52       for bug reports.  (This should, and will, be moved out of the
53       parameters for this method eventually.)
54
55   create_Makefile_PL( $main_module )
56       This will create the Makefile.PL for the distribution, and will use the
57       module named in $main_module as the main module of the distribution.
58
59   create_MI_Makefile_PL( $main_module )
60       This will create a Module::Install Makefile.PL for the distribution,
61       and will use the module named in $main_module as the main module of the
62       distribution.
63
64   Makefile_PL_guts( $main_module, $main_pm_file )
65       This method is called by create_Makefile_PL and returns text used to
66       populate Makefile.PL; $main_pm_file is the filename of the
67       distribution's main module, $main_module.
68
69   MI_Makefile_PL_guts( $main_module, $main_pm_file )
70       This method is called by create_MI_Makefile_PL and returns text used to
71       populate Makefile.PL; $main_pm_file is the filename of the
72       distribution's main module, $main_module.
73
74   create_Build_PL( $main_module )
75       This will create the Build.PL for the distribution, and will use the
76       module named in $main_module as the main module of the distribution.
77
78   Build_PL_guts( $main_module, $main_pm_file )
79       This method is called by create_Build_PL and returns text used to
80       populate Build.PL; $main_pm_file is the filename of the distribution's
81       main module, $main_module.
82
83   create_Changes( )
84       This method creates a skeletal Changes file.
85
86   Changes_guts
87       Called by create_Changes, this method returns content for the Changes
88       file.
89
90   create_README( $build_instructions )
91       This method creates the distribution's README file.
92
93   README_guts
94       Called by create_README, this method returns content for the README
95       file.
96
97   create_t( @modules )
98       This method creates a bunch of *.t files.  @modules is a list of all
99       modules in the distribution.
100
101   t_guts( @modules )
102       This method is called by create_t, and returns a description of the *.t
103       files to be created.
104
105       The return value is a hash of test files to create.  Each key is a
106       filename and each value is the contents of that file.
107
108   create_MANIFEST( @files )
109       This method creates the distribution's MANIFEST file.  It must be run
110       last, because all the other create_* functions have been returning the
111       functions they create.
112
113   MANIFEST_guts( @files )
114       This method is called by "create_MANIFEST", and returns content for the
115       MANIFEST file.
116
117   create_build( )
118       This method creates the build file(s) and puts together some build
119       instructions.  The builders currently supported are:
120
121       ExtUtils::MakeMaker Module::Build Module::Install
122
123   create_ignores()
124       This creates an ignore.txt file for use as MANIFEST.SKIP, .cvsignore,
125       .gitignore, or whatever you use.
126
127   ignores_guts()
128       Called by "create_ignores", this method returns the contents of the
129       ignore.txt file.
130

HELPER METHODS

132   verbose
133       "verbose" tells us whether we're in verbose mode.
134
135   create_file( $fname, @content_lines )
136       Creates $fname, dumps @content_lines in it, and closes it.  Dies on any
137       error.
138
139   progress( @list )
140       "progress" prints the given progress message if we're in verbose mode.
141

BUGS

143       Please report any bugs or feature requests to "bug-module-starter at
144       rt.cpan.org", or through the web interface at <http://rt.cpan.org>.  I
145       will be notified, and then you'll automatically be notified of progress
146       on your bug as I make changes.
147

AUTHOR

149       Andy Lester, "<andy@petdance.com>"
150
151       C.J. Adams-Collier, "<cjac@colliertech.org>"
152
154       Copyright 2005-2007 Andy Lester and C.J. Adams-Collier, All Rights
155       Reserved.
156
157       This program is free software; you can redistribute it and/or modify it
158       under the same terms as Perl itself.
159
160       Please note that these modules are not products of or supported by the
161       employers of the various contributors to the code.
162
163
164
165perl v5.12.0                      2009-12-08        Module::Starter::Simple(3)
Impressum