File Coverage

blib/lib/Perl/Dist/Chocolate.pm
Criterion Covered Total %
statement 7 9 77.7
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 10 12 83.3


line stmt bran cond sub pod time code
1             package Perl::Dist::Chocolate;
2              
3             =pod
4              
5             =head1 NAME
6              
7             Perl::Dist::Chocolate - Chocolate Perl for Win32 (EXPERIMENTAL)
8              
9             =head1 DESCRIPTION
10              
11             This is the distribution builder used to create Chocolate Perl.
12              
13             =head1 Building Chocolate Perl
14              
15             Unlike Strawberry, Chocolate does not have a standalone build script.
16              
17             To build Chocolate Perl, run the following.
18              
19             perldist Chocolate
20              
21             =cut
22              
23 1     1   1572 use 5.008;
  1         4  
  1         45  
24 1     1   22 use strict;
  1         3  
  1         37  
25 1     1   533 use Perl::Dist::Strawberry 1.07 ();
  0            
  0            
26              
27             use vars qw{$VERSION @ISA};
28             BEGIN {
29             $VERSION = '1.07';
30             @ISA = 'Perl::Dist::Strawberry';
31             }
32              
33              
34              
35              
36              
37             #####################################################################
38             # Configuration
39              
40             # Apply some default paths
41             sub new {
42             shift->SUPER::new(
43             app_id => 'chocolateperl',
44             app_name => 'Chocolate Perl',
45             app_publisher => 'Vanilla Perl Project',
46             app_publisher_url => 'http://vanillaperl.org/',
47             image_dir => 'C:\\chocolate',
48              
49             # Build both exe and zip versions
50             exe => 1,
51             zip => 0,
52             @_,
53             );
54             }
55              
56             # Lazily default the full name.
57             # Supports building multiple versions of Perl.
58             sub app_ver_name {
59             $_[0]->{app_ver_name} or
60             $_[0]->app_name . ' ' . $_[0]->perl_version_human . ' Alpha 1';
61             }
62              
63             # Lazily default the file name
64             # Supports building multiple versions of Perl.
65             sub output_base_filename {
66             $_[0]->{output_base_filename} or
67             'chocolate-perl-' . $_[0]->perl_version_human . '-alpha-1';
68             }
69              
70              
71              
72              
73              
74             #####################################################################
75             # Customisations for Perl assets
76              
77             sub install_perl_588 {
78             my $self = shift;
79             die "Perl 5.8.8 is not available in Chocolate Perl";
80             }
81              
82             sub install_perl_modules {
83             my $self = shift;
84             $self->SUPER::install_perl_modules(@_);
85              
86             # Current Padre encompasses all the stuff we care about
87             $self->install_module( name => 'Padre' );
88              
89             # Install a range of the most popular modules for various tasks
90             $self->install_modules( qw{
91             DateTime
92             Template
93             POE
94             Imager
95             Perl::Critic
96             Perl::Tidy
97             } );
98              
99             return 1;
100             }
101              
102             1;
103              
104             =pod
105              
106             =head1 SUPPORT
107              
108             Bugs should be reported via the CPAN bug tracker at
109              
110             L
111              
112             Please note that B bugs in the distribution itself or the CPAN
113             configuration should be reported to RT. Bugs in individual modules
114             should be reported to their respective distributions.
115              
116             =head1 AUTHOR
117              
118             Adam Kennedy Eadamk@cpan.orgE
119              
120             =head1 COPYRIGHT
121              
122             Copyright 2007 - 2008 Adam Kennedy.
123              
124             This program is free software; you can redistribute
125             it and/or modify it under the same terms as Perl itself.
126              
127             The full text of the license can be found in the
128             LICENSE file included with this module.
129              
130             =cut