Changeset 22113 for lang

Show
Ignore:
Timestamp:
10/25/08 20:21:03 (5 years ago)
Author:
yappo
Message:

module-setup --devel を軽く実装

Location:
lang/perl/Module-Setup/trunk
Files:
1 added
7 modified

Legend:

Unmodified
Added
Removed
  • lang/perl/Module-Setup/trunk/bin/module-setup

    r21798 r22113  
    4747    --help                     Show this message 
    4848 
     49For Devel: 
     50 
     51    --devel                    for flavor development 
     52    --test                     develpoment flavor test 
     53 
     54    $ module-setup --devel FlavorClassName  # create skeleton 
     55    $ cd FlavorClassName 
     56    $ # edit 
     57    $ module-setup --devel --test      # flavor test 
     58    $ module-setup --devel --pack      # flavor packing 
     59 
    4960=cut 
    5061 
  • lang/perl/Module-Setup/trunk/lib/Module/Setup.pm

    r22050 r22113  
    1717use Pod::Usage; 
    1818 
     19use Module::Setup::Devel; 
    1920use Module::Setup::Distribute; 
    2021use Module::Setup::Path; 
     22use Module::Setup::Path::Flavor; 
    2123use Module::Setup::Path::Template; 
    2224 
     
    7577        'target'                       => \($options->{target}), 
    7678        'module-setup-dir'             => \($options->{module_setup_dir}), 
     79        'devel'                        => \($options->{devel}), 
     80        'test'                         => \($options->{test}), 
    7781        version                        => \&_setup_options_version, 
    7882        help                           => \&_setup_options_pod2usage, 
     
    123127 
    124128    $options->{flavor_class} ||= 'Default'; 
     129    return Module::Setup::Devel->new($self)->run if $options->{devel}; 
     130 
    125131    $self->setup_base_dir; 
    126132 
     
    421427 
    422428    my $template = []; 
    423     $self->_collect_flavor_files($template, file   => $self->base_dir->flavor->template); 
    424     $self->_collect_flavor_files($template, plugin => $self->base_dir->flavor->plugins); 
     429    my $flavor_dir = exists $config->{flavor_dir} ? Module::Setup::Path::Flavor->new( $config->{flavor_dir} ) : $self->base_dir->flavor; 
     430    $self->_collect_flavor_files($template, file   => $flavor_dir->template); 
     431    $self->_collect_flavor_files($template, plugin => $flavor_dir->plugins); 
    425432    push @{ $template }, +{ 
    426         config => YAML::LoadFile($self->base_dir->flavor->config->path), 
     433        config => YAML::LoadFile($flavor_dir->config->path), 
    427434    }; 
    428435 
    429436    unless ($config->{without_additional}) { 
    430437        $template = [] if $config->{additional}; 
    431         for my $additional ( $self->base_dir->flavor->additional->path->children ) { 
     438        for my $additional ( $flavor_dir->additional->path->children ) { 
    432439            next unless $additional->is_dir; 
    433440            my $name = $additional->dir_list(-1); 
    434441            next if $config->{additional} && $name ne $config->{additional}; 
    435             my $base_path = Module::Setup::Path::Template->new($self->base_dir->flavor->additional->path, $name); 
     442            my $base_path = Module::Setup::Path::Template->new($flavor_dir->additional->path, $name); 
    436443 
    437444            my $templates = []; 
  • lang/perl/Module-Setup/trunk/lib/Module/Setup/Distribute.pm

    r21981 r22113  
    44 
    55use Fcntl qw( :mode ); 
     6use YAML (); 
    67 
    78use Module::Setup::Path::Dir; 
     
    2021    }, $class; 
    2122 
     23    $self->{target_path} = Module::Setup::Path::Dir->new($target); 
    2224    $self->{base_path}   = Module::Setup::Path::Dir->new($target, $self->{dist_name}); 
    2325    $self->{dist_path}   = Module::Setup::Path::Dir->new($target, $self->{dist_name}); 
     
    3335sub package       { shift->{package} }; 
    3436sub dist_name     { shift->{dist_name} }; 
     37sub target_path   { shift->{target_path} }; 
    3538sub base_path     { shift->{base_path} }; 
    3639sub dist_path     { shift->{dist_path} }; 
  • lang/perl/Module-Setup/trunk/lib/Module/Setup/Path/Flavor.pm

    r21792 r22113  
    33use warnings; 
    44use base 'Module::Setup::Path::Base'; 
     5 
     6use YAML (); 
    57 
    68use Module::Setup::Path::Config; 
     
    2628sub additional { shift->{additional} } 
    2729 
     30sub create_flavor { 
     31    my($self, $config) = @_; 
     32 
     33    $self->path->mkpath; 
     34    $self->plugins->path->mkpath; 
     35    $self->template->path->mkpath; 
     36    $self->additional->path->mkpath; 
     37    YAML::DumpFile($self->config->path, $config); 
     38} 
     39 
    28401; 
  • lang/perl/Module-Setup/trunk/lib/Module/Setup/Test/Flavor.pm

    r22043 r22113  
    8080        } 
    8181    } 
    82      
     82 
    8383    plan tests => $count; 
    8484    module_setup $options, $module; 
  • lang/perl/Module-Setup/trunk/t/010_core/setup_options.t

    r22023 r22113  
    2222        additional         => undef, 
    2323        without_additional => undef, 
     24        devel              => undef, 
     25        test               => undef, 
    2426        %{ $block->options || {} }, 
    2527    }; 
     
    116118pack: 1 
    117119without_additional: 1 
     120 
     121=== 
     122--- input 
     123--devel 
     124--test 
     125--- argv 
     126--- options 
     127devel: 1 
     128test: 1 
  • lang/perl/Module-Setup/trunk/t/97_podspell.t

    r22030 r22113  
    2020utils 
    2121PBP pbp 
     22devel