source: projects/vine-spec-skeleton/tags/release-0.4/lib/VineLinux/VSS/Type/Elisp.pm @ 747

Revision 747, 2.1 KB checked in by iwaim, 14 years ago (diff)

v-s-s: 生成するspecファイル名に'-vl'を付与

Line 
1package VineLinux::VSS::Type::Elisp;
2
3use base qw( VineLinux::VSS::Type );
4
5use VineLinux::VSS::Skeleton::Elisp::InitEl;
6use VineLinux::VSS::Skeleton::Elisp::Spec;
7use VineLinux::VSS::Skeleton::Elisp::InstallSh;
8use VineLinux::VSS::Skeleton::Elisp::RemoveSh;
9use VineLinux::VSS::Skeleton::Elisp::VineDefaultEl;
10
11sub generate {
12    my $class = shift;
13    my $vss = shift;
14
15    my $filename = '';
16    my @skeleton_data;
17    my $tmpl;
18
19    my $params = $class->_set_params($vss);
20   
21    # <package>-init.el
22    @skeleton_data = <VineLinux::VSS::Skeleton::Elisp::InitEl::DATA>;
23    $tmpl = HTML::Template->new(arrayref => \@skeleton_data,
24                                die_on_bad_params => 0);
25    $tmpl->param($params);
26    $filename = $vss->package_name . '-init.el';
27    $class->_generate_file($filename, $tmpl->output);
28
29
30    # vine-default-<package>.el
31    @skeleton_data = <VineLinux::VSS::Skeleton::Elisp::VineDefaultEl::DATA>;
32    $tmpl = HTML::Template->new(arrayref => \@skeleton_data,
33                                die_on_bad_params => 0);
34    $tmpl->param($params);
35    $filename = 'vine-default-' . $vss->package_name . '.el';
36    $class->_generate_file($filename, $tmpl->output);
37
38   
39    # <package>-vl.spec
40    @skeleton_data = <VineLinux::VSS::Skeleton::Elisp::Spec::DATA>;
41    $tmpl = HTML::Template->new(arrayref => \@skeleton_data,
42                                die_on_bad_params => 0);
43    $tmpl->param($params);
44    $filename = $vss->package_name . '-vl.spec';
45    $class->_generate_file($filename, $tmpl->output);
46
47
48    # <package>-install.sh
49    @skeleton_data = <VineLinux::VSS::Skeleton::Elisp::InstallSh::DATA>;
50    $tmpl = HTML::Template->new(arrayref => \@skeleton_data,
51                                die_on_bad_params => 0);
52    $tmpl->param($params);
53    $filename = $vss->package_name . '-install.sh';
54    $class->_generate_file($filename, $tmpl->output);
55
56
57    # <package>-remove.sh
58    @skeleton_data = <VineLinux::VSS::Skeleton::Elisp::RemoveSh::DATA>;
59    $tmpl = HTML::Template->new(arrayref => \@skeleton_data,
60                                die_on_bad_params => 0);
61    $tmpl->param($params);
62    $filename = $vss->package_name . '-remove.sh';
63    $class->_generate_file($filename, $tmpl->output);
64}
65
661;
Note: See TracBrowser for help on using the repository browser.