3 # Enhanced sccs diff utility for use with vc mode.
4 # This version is more compatible with rcsdiff(1).
6 # Copyright (C) 1992-1993, 1995, 1997, 2001-2012
7 # Free Software Foundation, Inc.
10 # (according to authors.el)
12 # This file is part of GNU Emacs.
14 # GNU Emacs is free software: you can redistribute it and/or modify
15 # it under the terms of the GNU General Public License as published by
16 # the Free Software Foundation, either version 3 of the License, or
17 # (at your option) any later version.
19 # GNU Emacs is distributed in the hope that it will be useful,
20 # but WITHOUT ANY WARRANTY; without even the implied warranty of
21 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 # GNU General Public License for more details.
24 # You should have received a copy of the GNU General Public License
25 # along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
29 usage
="$0: Usage: vcdiff [--brief] [-q] [-r<sid1>] [-r<sid2>] [diffopts] sccsfile..."
31 # Now that we use `sccs get' rather than just `get', we don't need this.
32 # PATH=$PATH:/usr/ccs/bin:/usr/sccs:/usr/xpg4/bin # common SCCS hangouts
53 ?
*) echo "$usage" >&2; exit 2 ;;
79 trap 'status=2; exit' 1 2 13 15
80 trap 'rm -f $rev1 $rev2 || status=2; exit $status' 0
89 rev1
=`mktemp /tmp/geta.XXXXXXXX`
90 sccs get
-s -p -k $sid1 "$f" > $rev1 &&
93 workfile
=`expr " /$f" : '.*/s.\(.*\)'`
96 rev2
=`mktemp /tmp/getb.XXXXXXXX`
97 sccs get
-s -p -k $sid2 "$f" > $rev2
101 $echo $DIFF $options $rev1 $workfile >&2
102 $DIFF $options $rev1 $workfile
107 echo "$0: $f is not an SCCS file" >&2
110 if test $status -lt $s