NAME

Module::Starter - Starter kit for any module

Version

Version 1.01_01

$Header: /home/cvs/module-starter/Starter.pm,v 1.30 2004/07/10 02:43:09 andy Exp $

Synopsis

Nothing in here is meant for public consumption. Use module-starter from the command line.

module-starter --module=Foo::Bar,Foo::Bat \
    --author="Andy Lester" --email=andy@petdance.com

Methods

create_distro()

Takes a hash of parms:

dir     => $dirname,
modules => [ module names ],
distro  => $distroname,
builder => 'Module::Build', # Defaults to ExtUtils::MakeMaker
                            # or specify more than one builder
builder => [ 'Module::Build', 'ExtUtils::MakeMaker' ],
license => $license_type,   # defaults to 'perl'
author  => $author, 
email   => $email,

verbose => $verbose,  # boolean; defaults to 0
force   => $force     # boolean; defaults to 0

create_directory( $dir [, $force ] )

Creates a directory at $dir. If the directory already exists, and $force is true, then the existing directory will get erased.

If the directory can't be created, or re-created, it dies.

create_modules( $dir, @modules )

Creates starter modules for each of the modules passed in.

Synopsis

Quick summary of what the module does.

Perhaps a little code snippet.

use $module;

my \$foo = $module->new();
...

==head1 Export

A list of functions that can be exported. You can delete this section if you don't export anything, such as for a purely object-oriented module.

==head1 Functions

==head2 function1

function2

==cut

sub function2 { }

==head1 Author

$self->{author}, <$self->{email}>

==head1 Bugs

Please report any bugs or feature requests to bug-$rtname\@rt.cpan.org, or through the web interface at http://rt.cpan.org. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

==head1 Copyright & License

Copyright $year $self->{author}, All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

==cut

1; # End of $module HERE $content =~ s/^==/=/smg; return $content; }

create_Makefile_PL( $basedir, $distro, $main_module )

Creates a Makefile.PL for the given module distro.

create_Build_PL( $basedir, $distro, $main_module )

Creates a Build.PL for the given module distro.

create_Changes( $basedir, $distro )

Creates a skeleton Changes file.

create_README( $basedir, $distro )

Creates a skeleton README file.

create_t( $basedir, @modules )

Creates a bunch of *.t files for the modules.

create_MANIFEST( $basedir, @files )

Must be run last, because all the other create_* functions have been returning the functions they create.

create_cvsignore( $basedir, $distro )

Create .cvsignore file in the root so that your CVS knows to ignore certain files.

Helper methods

verbose

Tells whether we're in verbose mode.

progress( @list )

Takes a progress message and prints it if we're in verbose mode.

Description

Export

Bugs

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

Author

Andy Lester, <andy@petdance.com>

Copyright & License

Copyright 2004 Andy Lester, All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

Please note that these modules are not products of or supported by the employers of the various contributors to the code.