OSDN Git Service

update to db ver 100
[rec10/rec10-git.git] / rectool / trunk / Makefile.PL
1 #!/usr/bin/perl
2 # Synced to rectool.pl revision 804
3
4 print "UID:$<\n";
5 if ( $< ) {
6         print "Please run this script with root.\n";
7         exit;
8 }
9
10 $distribution = `ls /etc -F | grep \"release\$\\|version\$\"`;
11
12 if ( $distribution =~ /redhat|fedora/m ) {
13         print "Your distribution seems to be RedHat/Fedora.\n";
14         $redhat = 1;
15 }
16 elsif ( $distribution =~ /debian/m ) {
17         print "Your distribution seems to be Debian.\n";
18         $debian = 1;
19 }
20 else {
21         print "Your distribution is unknown, doint CPAN installation.\n";
22 }
23
24 my @packages = (
25 #       [ 'CPAN'           , 'YUM', 'APT' ], 
26         [ 'Algorithm::Diff', 'yes', 'yes' ], 
27         [ 'CGI::Carp'      , 'no' , 'no'  ], 
28         [ 'CGI::Minimal'   , 'no' , 'no'  ], 
29         [ 'Config::Simple' , 'yes', 'yes' ], 
30         [ 'Data::Dumper'   , 'no' , 'no'  ], 
31         [ 'Date::Simple'   , 'yes', 'yes' ], 
32         [ 'DateTime'       , 'yes', 'yes' ], 
33         [ 'DBI'            , 'yes', 'yes' ], 
34         [ 'MIME::Base64'   , 'no' , 'yes' ], 
35         [ 'Perl6::Slurp'   , 'no' , 'yes' ], 
36         [ 'Sort::Naturally', 'yes', 'yes' ], 
37         [ 'Time::Piece'    , 'yes', 'yes' ], 
38         [ 'Time::Seconds'  , 'no' , 'no'  ], 
39         [ 'Time::HiRes'    , 'no' , 'yes' ], 
40         [ 'Tie::IxHash'    , 'yes', 'yes' ], 
41 #       [ 'required'       , 'by' , 'cgi' ], 
42         [ 'Encode'         , 'no' , 'no'  ], 
43         [ 'Text::Ngram'    , 'no' , 'no'  ], 
44         [ 'Time::Simple'   , 'no' , 'no'  ], 
45         [ 'List::Compare'  , 'yes', 'yes' ], 
46         [ 'List::Util'     , 'no' , 'no'  ], 
47         [ 'XML::Atom'      , 'yes', 'yes' ], 
48 );
49
50 if ( $redhat ) {
51         foreach ( @packages ) {
52                 if ( $_->[1] eq 'yes' ) {
53                         my $YUM = $_->[0];
54                         $YUM =~ s/\A/perl-/;
55                         $YUM =~ s/::/-/;
56                         push @YUM, $YUM;
57                 }
58                 elsif ( $_->[1] eq 'no' ) {
59                         push @CPAN, $_->[0];
60                 }
61         }
62         my $YUM  = join ' ', @YUM;
63         my $CPAN = join ' ', @CPAN;
64
65         print "Going to install ( YUM )\n";
66         print "$YUM\n";
67         system( "yum install $YUM" );
68         print "Going to install ( CPAN )\n";
69         print "$CPAN\n";
70         system( "cpan $CPAN" );
71 }
72 elsif ( $debian ) {
73         foreach ( @packages ) {
74                 if ( $_->[2] eq 'yes' ) {
75                         my $APT = $_->[0];
76                         $APT = lc $APT;
77                         $APT =~ s/\A/lib/;
78                         $APT =~ s/\Z/-perl/;
79                         $APT =~ s/::/-/;
80                         push @APT, $APT;
81                 }
82                 elsif ( $_->[2] eq 'no' ) {
83                         push @CPAN, $_->[0];
84                 }
85         }
86         my $APT  = join ' ', @APT;
87         my $CPAN = join ' ', @CPAN;
88
89         print "Going to install ( APT )\n";
90         print "$APT\n";
91         system( "aptitude install $APT" );
92         print "Going to install ( CPAN )\n";
93         print "$CPAN\n";
94         system( "cpan $CPAN" );
95 }
96 else {
97         my $CPAN = join ' ', map { $_->[0] } @packages;
98
99         print "Going to install ( CPAN )\n";
100         print "$CPAN\n";
101         system( "cpan $CPAN" );
102 }
103