##!/usr/local/bin/perl eval "exec perl -S $0 $*" if $running_under_some_shell; $usage = "Usage: $0 logname dir\n"; $selfdoc = " splits a log file into messages for different authors rebuild analyses a log.rebuild file resstat analyses a t_resstat.log file \n"; $rebuild = " I executed following series of commands: cake clean Resstat - cake burn Resstat - cake build cake clean Resstat - cake build cake clean Below you find the response to the second cake build command. If gmake essentially returns: make: figures is up to date or is silent, then your cakefile passed the test. If the computer attempts to create any files, you probably have a problem: the log below probably shows why the cake considered the target out-of-date. Good luck. Matt. \n"; $resstat = " I executed Resstat - on your document. Please, check if all files are correctly listed in the summary table at the bottom of the message. Please, check all inconsistencies listed by Resstat. Good luck. Matt. \n"; $execstat = " I executed Execstat on your document. It found following executables. Considering possible porting problems and the space limitation on our CD-ROM, please make sure that you really need these executables. Additionally, check if they are statically linked. Good luck. Matt. \n"; if( $#ARGV < 0 ||$#ARGV > 1 ) { print $usage; die $selfdoc; } while($ARGV[0]) { $_ = shift; SWITCH: { if (/rebuild/) {$intro ="$rebuild" ;$filen ="log.rebuild" ;last SWITCH;} if (/resstat/) {$intro ="$resstat" ;$filen ="log.resstat3" ;last SWITCH;} if (/execstat/){$intro ="$execstat";$filen ="t_execstat.log";last SWITCH;} $nothing = 1; } } open(FILEINP,"$filen")|| die "Cannot open $filen."; $collect = ""; LINE: while ($line = ) { $collect = join("",$collect,$line); if ($line =~ /\+\+\+\+\+\+/) { $author = "$line"; $author =~ s/[0-9]+//; $author =~ s/\++//; $author =~ s/\s*//; $collect = "$line"; } if ($line =~ /\-\-\-\-\-\-/) { print "author: $author"; print "$intro"; print "$collect"; open(MAIL,"|mail $author"); print MAIL "$intro \n $collect \n"; close(MAIL); } next LINE; }