--- loncom/build/Attic/parse.pl 2001/01/23 16:26:38 1.27
+++ loncom/build/Attic/parse.pl 2001/02/27 14:18:46 1.29
@@ -1329,6 +1329,7 @@ END
my $category=$info{'LOCATION'}{$distribution}{$filesfull[$i]}{'CATEGORY'};
my $fdescription=$info{'LOCATION'}{$distribution}{$filesfull[$i]}{'DESCRIPTION'};
my $source=$info{'LOCATION'}{$distribution}{$filesfull[$i]}{'SOURCE'};
+ my $source2=$info{'LOCATION'}{$distribution}{$filesfull[$i]}{'SOURCE'};
my $note=$info{'LOCATION'}{$distribution}{$filesfull[$i]}{'NOTE'};
$note.="
" if $note;
my $listing=$info{'LOCATION'}{$distribution}{$filesfull[$i]}{'FILES'};
@@ -1361,6 +1362,9 @@ END
$source="$source";
}
}
+ my $checksum;
+ my $checksum_source;
+ my $checksum_target;
if ($mode eq 'status') {
$filestatus='';
my $fs;
@@ -1383,6 +1387,16 @@ END
}
else {
$fs=`find /$filesfull[$i] -prune -printf "\%m\t\%u\t\%g" 2>/dev/null`;
+ if (-f "/$filesfull[$i]" && !(-l "/$filesfull[$i]")) {
+ $checksum_source=`md5sum ../../$source2 | cut -d ' ' -f1`;
+ chop $checksum_source;
+ $checksum_target=`md5sum /$filesfull[$i] | cut -d ' ' -f1`;
+ chop $checksum_target;
+# warn ("CS: $checksum_source, CT: $checksum_target\n");
+ unless ($checksum_source eq $checksum_target) {
+ $checksum="
CHECKSUM DIFFERENCE";
+ }
+ }
}
my $fsl=`find /$filesfull[$i] -type l -prune -printf "\%m\t\%u\t\%g" 2>/dev/null`;
unless ($fs || $filestatus) {
@@ -1406,13 +1420,13 @@ END
$s='';
}
if ($fs eq "$chmod$s$chown" && $fs eq "$devchmod$s$devchown") {
- $filestatus='