Mason applications and Module::Build
"Keefer, Tim" <[email protected]> Sat, 6 Mar 2010 12:40:11 -0700
| Newsgroups | gmane.comp.web.mason.devel |
|---|---|
| Message-ID | <CA6FF339033B92498BEB527D2FBF8AE26D23AE9865@DEN-MEXMS-002.corp.ebay.com> |
Hi,
Does anyone know if there's already some code that supports packaging HTML::Mason into a CPAN distributions? I've written a Module::Build subclass that works really well for me and I'm wondering if it would be useful for others. I'm also looking for advice about what CPAN namespace it could go under. However, I don't want to go through the trouble of putting this on CPAN if there's already something that does this. Below is a section of the docs that should give you a better idea of what I'm talking about.
Cheers,
-Tim
=head1 Name
{some name} - a subclass of Module::Build to perform custom installs
=head1 Description
Use this module instead of Module::Build (which it subclasses). Use
any or all of the Module::Build constructor keys as needed.
=head1 Setting Up Your Application
=head2 Application Layout
This the typical directory structure for an application
Apps-MyApp/
Build.PL
Changes
MANIFEST
MANIFEST.SKIP
INSTALL.SKIP
conf/
_app.conf
_myapachevhost.conf
app.rules
html/
autohandler.mpl
css/
img/
inc/
footer.html
header.html
index.html
lib/
Apps/
MyApp.pm
MyApp/
Foo.pm
t/
01use.t
02myapp.t
=head2 Build and Deploy
perl Build.PL
./Build test # runs the application tests
./Build install # install the application
./Build dist # build the application tarbal
=over 4
=head1 Setting up the application's Aeon Build.PL script
=over 4
=item Sample Build.PL
use strict;
use File::HomeDir;
my $build = {some name}->new(
install_base_default => ( File::HomeDir->my_home . "/releases" ),
get_options => {
env => { type => '=s' },
rules => { type => '=s' },
install_base => { type => '=s' },
},
apache_conf => 'conf/myapachevhost.conf',
license => 'perl',
module_name => 'Apps::MyApp',
requires => {
'perl' => '5.8.1',
},
create_makefile_pl => 'passthrough',
dist_abstract => 'Mason site for Apps Foo',
script_files => [ glob('bin/*') ],
'recursive_test_files' => 1,
);
$build->create_build_script;
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev