Glade-Perl
view release on metacpan or search on metacpan
Glade/PerlProject.pm view on Meta::CPAN
$me, $proj_opt->{$type}{logo});
}
unless (-r $proj_opt->{app}{logo}) {
$Glade_Perl->diag_print (2, "%s- Writing our own logo to '%s' in %s",
$indent, $proj_opt->{app}{logo}, $me);
open LOGO, ">$proj_opt->{app}{logo}" or
die sprintf("error %s - can't open file '%s' for output",
$me, $proj_opt->{app}{logo});
print LOGO $class->our_logo;
close LOGO or
die sprintf("error %s - can't close file '%s'",
$me, $proj_opt->{app}{logo});
}
unless ($proj_opt->{app}{logo} && -r $proj_opt->{app}{logo}) {
$proj_opt->{app}{logo} = $proj_opt->{$type}{logo};
}
$proj_opt->{dist}{directory} = $class->full_Path(
$proj_opt->{dist}{directory}, $proj_opt->{glade}{directory});
unless (-d $proj_opt->{dist}{directory}) {
# Source directory does not exist yet so create it
$Glade_Perl->diag_print (2, "%s- Creating distribution '%s' in %s",
$indent, $proj_opt->{dist}{directory}, $me);
mkpath($proj_opt->{dist}{directory} );
}
$proj_opt->{dist}{bin_directory} = $class->full_Path(
($proj_opt->{dist}{bin_directory} || './bin'),
$proj_opt->{dist}{directory},
$proj_opt->{dist}{directory} );
unless (-d $proj_opt->{dist}{bin_directory}) {
# bin directory does not exist yet so create it
$Glade_Perl->diag_print (2, "%s- Creating directory '%s' in %s",
$indent, $proj_opt->{dist}{bin_directory}, $me);
mkpath($proj_opt->{dist}{bin_directory} );
}
$proj_opt->{dist}{bin} = $class->full_Path(
($glade_proto->{project}{program_name} || 'run_'.$proj_opt->app->name),
$proj_opt->{dist}{bin_directory} );
$proj_opt->{dist}{test_directory} = $class->full_Path(
($proj_opt->{dist}{test_directory} || './t'),
$proj_opt->{dist}{directory},
$proj_opt->{dist}{directory} );
unless (-d $proj_opt->{dist}{test_directory}) {
# bin directory does not exist yet so create it
$Glade_Perl->diag_print (2, "%s- Creating directory '%s' in %s",
$indent, $proj_opt->{dist}{test_directory}, $me);
mkpath($proj_opt->{dist}{test_directory} );
}
$proj_opt->{dist}{test_pl} = $class->full_Path(
($proj_opt->{dist}{test_pl} || './01.t'),
$proj_opt->{dist}{test_directory} );
if ($Glade_Perl->app->author) {
$proj_opt->{app}{author} = $Glade_Perl->app->author;
} else {
my $host = hostname;
my $pwuid = [(getpwuid($<))];
my $user = $pwuid->[0];
my $fullname = $pwuid->[6];
my $hostname = [split(" ", $host)];
$proj_opt->{app}{'author'} = "$fullname <$user\@$hostname->[0]>";
}
# Remove trailing spaces and ensure only one leading '#'
$Glade_Perl->{app}{copying} =~ s/ *$//;
if ($Glade_Perl->app->copying !~ /^#/) {
$Glade_Perl->app->copying("#".$Glade_Perl->app->copying);
}
# escape any quotes
$proj_opt->{app}{'author'} =~ s/\"/\\\"/g;
$proj_opt->{app}{'author'} =~ s/\'/\\\'/g;
$proj_opt->{app}{'version'} ||= $Glade_Perl->app->version;
$proj_opt->{app}{'date'} ||= $Glade_Perl->app->date || $Glade_Perl->{$type}->start_time;
$proj_opt->{app}{'copying'} ||= $Glade_Perl->app->copying;
$proj_opt->{app}{'description'} ||= $Glade_Perl->app->description || 'No description';
$proj_opt->{$type}->{xml}->{set_by}=($me);
# Now change to the <project><directory> so that we can find modules
chdir $proj_opt->{glade}{directory};
$Glade_Perl->diag_print(6, $proj_opt);
return $proj_opt;
}
1;
__END__
( run in 3.004 seconds using v1.01-cache-2.11-cpan-99c4e6809bf )