#!/usr/local/bin/perl
# -*-Fundamental-*-
# CAVEAT - this is not a "finished" tool by any stretch of the
# imagination, and there is virtually 0 chance you'll be able to use
# it in your own context without tweaking it. (AT LEAST the pathnames
# in the main while() loop at the bottom!)
#
# perl_template - please see the comment at the end!
#eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
# & eval 'exec perl -S $0 $argv:q'
# if 0;
# THE PRECEEDING STUFF EXECS perl via $PATH
use Carp;
$| = 1;
($Myname = $0) =~ s%^.*/%%;
$Usage = <<LIT;
$Myname: usage: $Myname
LIT
sub usage
{
print STDERR $Usage;
exit 1;
}
sub help
{
print STDERR <<LIT;
$Usage
$Myname is...
LIT
exit 1;
}
sub same
{
my ($f1, $f2) = @_;
if (! (-T $f1 && -T $f2))
{
my $cmd = "/bin/cmp $f1 $f2";
# print STDERR "$Myname: binary compare: $cmd\n";
return ! (system $cmd);
}
# print STDERR "$Myname: text compare: $f1 $f2\n";
if (! open(Y, "<$f1"))
{ print STDERR "$Myname: can't open \"$f1\": $!\n"; return 0; }
if (! open(T, "<$f2"))
{ close Y; print STDERR "$Myname: can't open \"$f2\": $!\n"; return 0; }
while (<Y>)
{
$y_ = $_;
$t_ = <T>;
$y_ =~ s/\$(Author|Date|Header|Id|Locker|Log|Name|RCSfile|Revision|Source|State).*\$/\$XXX\$/g;
$t_ =~ s/\$(Author|Date|Header|Id|Locker|Log|Name|RCSfile|Revision|Source|State).*\$/\$XXX\$/g;
if ($y_ ne $t_) { close Y; close T; return 0; }
}
$t_ = <T>;
close Y; close T;
if ($t_ eq "") { return 1; } else { return 0; }
}
# option switch variables get defaults here...
$Valopt = "default";
$Boolopt = 0;
while ($#ARGV >= 0)
{
if ($ARGV[0] eq "-boolopt") { $Boolopt = 1; shift; next; }
elsif ($ARGV[0] eq "-valopt")
{
shift; if ($ARGV[0] < 0) { &usage; }
$Valopt = $ARGV[0]; shift; next;
}
elsif ($ARGV[0] eq "-help")
{ &help; }
elsif ($ARGV[0] =~ /^-/) { &usage; }
if ($Args ne "") { $Args .= " "; }
push(@Args, $ARGV[0]);
shift;
}
while (<>)
{
chop;
$file = $_;
if (! &same("/rlse/4.3.3/$file", "/rlse/4.3.4/$file"))
{ print "\n\n===== $file\n"; system "diff /rlse/4.3.3/$file /rlse/4.3.4/$file"; }
else
{ print "$file OK\n"; }
}
#
# Note to the esteemed reader:
#
# This file is a quick-start template perl script, meant to make it
# easy to get a new script off the ground. It's _also_ quite
# possible, therefore, that you're looking at a *descendant* of
# "perl_template", which might explain certain oddities. (E.g., code
# with variable names like):
#
# my $Valopt = "default";
# my $Boolopt = 0;
#
# (or other cruft that seems to have nothing to do with the task at
# hand, or incomplete usage information, and so on. Different script
# based hereupon will be finished to different levels of goodness,
# depending on the intended purpose, lifetime, audience, my whims,
# and the time avialable for applying a spit-shine.
#
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #1 | 1339 | Richard Geiger |
CVS_p4_cmp; unfinished, but perhaps worth keeping here until it can be refined. |