Index: run_build.pl =================================================================== RCS file: /cvsroot/pgbuildfarm/client-code/run_build.pl,v retrieving revision 1.69 diff -c -r1.69 run_build.pl *** run_build.pl 8 Sep 2006 09:30:47 -0000 1.69 --- run_build.pl 27 Sep 2006 16:36:42 -0000 *************** *** 300,305 **** --- 300,306 ---- my $dbstarted; my %ignore_file = (); + my @cvsignore_file; # cleanup handler for all exits END *************** *** 1000,1005 **** --- 1001,1027 ---- } + sub find_cvsignore + { + # skip CVS dirs if using update + if ($cvsmethod eq 'update' && $_ eq 'CVS' && -d $_) + { + $File::Find::prune = 1; + } + elsif (-f $_ && $_ eq '.cvsignore') + { + my $fh; + open($fh,$_) || die "cannot open $name for reading"; + my @names = (<$fh>); + close($fh); + chomp @names; + foreach $name (@names) { + push (@cvsignore_file, "$File::Find::dir/$name" ) if (-f "$name"); + } + } + } + + sub find_changed { # skip CVS dirs if using update *************** *** 1073,1079 **** my @statout = `cd pgsql && cvs -d $cvsserver status 2>&1`; $unknown_files = grep { /^\?/ } @statout; } ! send_result('CVS',$status,\@cvslog) if ($status); send_result('CVS-Merge',$merge_conflicts,\@cvslog) --- 1095,1103 ---- my @statout = `cd pgsql && cvs -d $cvsserver status 2>&1`; $unknown_files = grep { /^\?/ } @statout; } ! ! File::Find::find({wanted => \&find_cvsignore}, 'pgsql') ; ! my $cvsignore_files = $#cvsignore_file+1; send_result('CVS',$status,\@cvslog) if ($status); send_result('CVS-Merge',$merge_conflicts,\@cvslog) *************** *** 1084,1089 **** --- 1108,1115 ---- if ($mod_files); send_result('CVS-Extraneous-Files',$unknown_files,\@cvslog) if ($unknown_files); + send_result('CVS-Ignore-Files',$cvsignore_files,\@cvsignore_file) + if ($cvsignore_files); } $steps_completed = "CVS";