From: longinus Date: Sat, 22 Jan 2011 15:50:39 +0000 (+0000) Subject: code refactoring X-Git-Url: http://git.osdn.net/view?p=rec10%2Frec10-git.git;a=commitdiff_plain;h=41bff3bb051b75ec332ce6636e50850627300980 code refactoring git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/rec10@805 4e526526-5e11-4fc0-8910-f8fd03428081 --- diff --git a/rectool/trunk/Makefile.PL b/rectool/trunk/Makefile.PL index 57398cc..7b3345a 100755 --- a/rectool/trunk/Makefile.PL +++ b/rectool/trunk/Makefile.PL @@ -1,4 +1,5 @@ #!/usr/bin/perl +# Synced to rectool.pl revision 804 print "UID:$<\n"; if ( $< ) { @@ -16,10 +17,50 @@ elsif ( $distribution =~ /debian/m ) { print "Your distribution seems to be Debian.\n"; $debian = 1; } +else { + print "Your distribution is unknown, doint CPAN installation.\n"; +} + +my @packages = ( +# [ 'CPAN' , 'YUM', 'APT' ], + [ 'CGI::Carp' , 'no' , 'no' ], + [ 'CGI::Minimal' , 'no' , 'no' ], + [ 'Config::Simple' , 'yes', 'yes' ], + [ 'Data::Dumper' , 'no' , 'no' ], + [ 'Date::Simple' , 'yes', 'yes' ], + [ 'DateTime' , 'yes', 'yes' ], + [ 'DBI' , 'yes', 'yes' ], + [ 'MIME::Base64' , 'no' , 'yes' ], + [ 'Perl6::Slurp' , 'no' , 'yes' ], + [ 'Sort::Naturally', 'yes', 'yes' ], + [ 'Time::Piece' , 'yes', 'yes' ], + [ 'Time::Seconds' , 'no' , 'no' ], + [ 'Time::HiRes' , 'no' , 'yes' ], + [ 'Tie::IxHash' , 'yes', 'yes' ], +# [ 'required' , 'by' , 'cgi' ], + [ 'Encode' , 'no' , 'no' ], + [ 'Text::Ngram' , 'no' , 'no' ], + [ 'Time::Simple' , 'no' , 'no' ], + [ 'List::Compare' , 'yes', 'yes' ], + [ 'List::Util' , 'no' , 'no' ], + [ 'XML::Atom' , 'yes', 'yes' ], +); if ( $redhat ) { - my $YUM = 'perl-DBI perl-Date-Simple perl-DateTime perl-Config-Simple perl-Tie-IxHash perl-SVG perl-XML-Atom perl-List-Compare perl-Time-Piece perl-Sort-Naturally'; - my $CPAN = 'CGI::Carp CGI::Minimal MIME::Base64 Time::HiRes Data::Dumper Time::Simple Encode Text::Ngram Perl6::Slurp List::Util Time::Seconds'; + foreach ( @packages ) { + if ( $_->[1] eq 'yes' ) { + my $YUM = $_->[0]; + $YUM =~ s/\A/perl-/; + $YUM =~ s/::/-/; + push @YUM, $YUM; + } + elsif ( $_->[1] eq 'no' ) { + push @CPAN, $_->[0]; + } + } + my $YUM = join ' ', @YUM; + my $CPAN = join ' ', @CPAN; + print "Going to install ( YUM )\n"; print "$YUM\n"; system( "yum install $YUM" ); @@ -27,10 +68,23 @@ if ( $redhat ) { print "$CPAN\n"; system( "cpan $CPAN" ); } +elsif ( $debian ) { + foreach ( @packages ) { + if ( $_->[2] eq 'yes' ) { + my $APT = $_->[0]; + $APT = lc $APT; + $APT =~ s/\A/lib/; + $APT =~ s/\Z/-perl/; + $APT =~ s/::/-/; + push @APT, $APT; + } + elsif ( $_->[2] eq 'no' ) { + push @CPAN, $_->[0]; + } + } + my $APT = join ' ', @APT; + my $CPAN = join ' ', @CPAN; -if ( $debian ) { - my $APT = 'libdbi-perl libdate-simple-perl libdatetime-perl libmime-base64-perl libconfig-simple-perl libtime-hires-perl libtie-ixhash-perl libsvg-perl libxml-atom-perl liblist-compare-perl libperl6-slurp-perl libtime-piece-perl libsort-naturally-perl'; - my $CPAN = 'CGI::Carp CGI::Minimal Data::Dumper Time::Simple Encode Text::Ngram List::Util Time::Seconds'; print "Going to install ( APT )\n"; print "$APT\n"; system( "aptitude install $APT" ); @@ -38,4 +92,11 @@ if ( $debian ) { print "$CPAN\n"; system( "cpan $CPAN" ); } +else { + my $CPAN = join ' ', map { $_->[0] } @packages; + + print "Going to install ( CPAN )\n"; + print "$CPAN\n"; + system( "cpan $CPAN" ); +}