多分、次の通り
$ pwd /home/endo/dev/xing/chef-perl/perl-modules $ ls IO-Tty-1.07.tar.gz : YAML-Syck-1.27.tar.gz module-install.pl
で、module-install.pl は、以下の通り
#!/chef/local/perl/bin/perl use strict; use warnings; my $src = `pwd`; chomp $src; my $perl = $^X; #Perl バイナリ自身が実行された時の名前 my $gtar = "tar"; my $make = "make"; my @perl_modules = qw( IO-Tty-1.07.tar.gz YAML-Syck-1.27.tar.gz ); sub install { for my $tarboll (@perl_modules) { print "[make start] $tarboll\n"; `$gtar zxvf $src/$tarboll` or die "$!\n"; (my $folder = $tarboll) =~ s/(\.tar\.gz|\.tgz)$//g; $folder =~ s/(_|-)patched$//g; die "not found $folder!. $!\n" unless (-d $folder); my $r = system("(cd $src/$folder; $perl Makefile.PL; $make; $make test; $make install;)"); die "$!\n" if ($r >> 8); my $r2 = system("rm -rf $src/$folder"); die "$!\n" if ($r2 >> 8); print "[make end] $tarboll\n"; } } install; exit 0;