Alzabo-GUI-Mason

 view release on metacpan or  search on metacpan

inc/Alzabo/GUI/Mason/Build.pm  view on Meta::CPAN

package Alzabo::GUI::Mason::Build;

use strict;

use lib './lib', './blib';

use Module::Build 0.16;
use base 'Module::Build';

use Cwd;
use Data::Dumper;
use File::Path;
use File::Spec;

sub ACTION_install
{
    my $self = shift;

    $self->SUPER::ACTION_install;

    $self->depends_on('install_components');
}

sub ACTION_install_components
{
    my $self = shift;

    $self->_make_mason_dirs( 'schema' );

    require Alzabo::GUI::Mason::Config;
    my $base = Alzabo::GUI::Mason::Config::mason_web_dir();
    my $count = $self->_copy_dir( [ cwd(), 'mason' ],
                                  [ $base, 'schema' ] );
    if ($count)
    {
	warn <<'EOF';

Finished installing mason based schema creation interface.

EOF
    }
    else
    {
	warn <<'EOF';

No changes in mason based schema creation interface components.  No
files copied.

EOF
    }
}

sub _make_mason_dirs
{
    my $self = shift;

    $self->_get_uid_gid;

    require Alzabo::GUI::Mason::Config;
    my $base = Alzabo::GUI::Mason::Config::mason_web_dir();

    foreach (@_)
    {
        my $dir = File::Spec->catdir( $base, $_ );
	unless ( -d $dir )



( run in 0.850 second using v1.01-cache-2.11-cpan-39bf76dae61 )