aboutsummaryrefslogtreecommitdiffstats
path: root/lib-src/rcs2log
diff options
context:
space:
mode:
Diffstat (limited to 'lib-src/rcs2log')
-rwxr-xr-xlib-src/rcs2log50
1 files changed, 37 insertions, 13 deletions
diff --git a/lib-src/rcs2log b/lib-src/rcs2log
index a304df9adbd..b7466b6c134 100755
--- a/lib-src/rcs2log
+++ b/lib-src/rcs2log
@@ -29,10 +29,10 @@ Options:
29 29
30Report bugs to <bug-gnu-emacs@gnu.org>.' 30Report bugs to <bug-gnu-emacs@gnu.org>.'
31 31
32Id='$Id: rcs2log,v 1.49 2001/11/28 23:55:08 eggert Exp eggert $' 32Id='$Id: rcs2log,v 1.52 2003/12/27 08:18:08 uid65632 Exp $'
33 33
34# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2001, 2002 34# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2001, 2002, 2003,
35# Free Software Foundation, Inc. 35# 2004 Free Software Foundation, Inc.
36 36
37# This program is free software; you can redistribute it and/or modify 37# This program is free software; you can redistribute it and/or modify
38# it under the terms of the GNU General Public License as published by 38# it under the terms of the GNU General Public License as published by
@@ -49,7 +49,7 @@ Id='$Id: rcs2log,v 1.49 2001/11/28 23:55:08 eggert Exp eggert $'
49# Free Software Foundation, Inc., 59 Temple Place - Suite 330, 49# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
50# Boston, MA 02111-1307, USA. 50# Boston, MA 02111-1307, USA.
51 51
52Copyright='Copyright (C) 2002 Free Software Foundation, Inc. 52Copyright='Copyright (C) 2004 Free Software Foundation, Inc.
53This program comes with NO WARRANTY, to the extent permitted by law. 53This program comes with NO WARRANTY, to the extent permitted by law.
54You may redistribute copies of this program 54You may redistribute copies of this program
55under the terms of the GNU General Public License. 55under the terms of the GNU General Public License.
@@ -195,8 +195,9 @@ case $rlogfile in
195 195
196 # If no rlog options are given, 196 # If no rlog options are given,
197 # log the revisions checked in since the first ChangeLog entry. 197 # log the revisions checked in since the first ChangeLog entry.
198 # Since ChangeLog is only by date, some of these revisions may be duplicates of 198 # Since ChangeLog is only by date, some of these revisions may be
199 # what's already in ChangeLog; it's the user's responsibility to remove them. 199 # duplicates of what's already in ChangeLog; it's the user's
200 # responsibility to remove them.
200 case $rlog_options in 201 case $rlog_options in
201 '') 202 '')
202 if test -s "$changelog" 203 if test -s "$changelog"
@@ -250,18 +251,24 @@ case $rlogfile in
250 rlog='cvs -q log' 251 rlog='cvs -q log'
251 repository=`sed 1q <CVS/Repository` || exit 252 repository=`sed 1q <CVS/Repository` || exit
252 test ! -f CVS/Root || CVSROOT=`cat <CVS/Root` || exit 253 test ! -f CVS/Root || CVSROOT=`cat <CVS/Root` || exit
254 pository=
253 case $CVSROOT in 255 case $CVSROOT in
254 *:/*:/*) 256 /* | :fork:* | :local:*) ;;
255 echo >&2 "$0: $CVSROOT: CVSROOT has multiple ':/'s" 257 */*)
256 exit 1;;
257 *:/*)
258 # remote repository 258 # remote repository
259 pository=`expr "X$repository" : '.*:\(/.*\)'`;; 259 pository=`expr "X$CVSROOT" : '[^/]*\(.*\)'`;;
260 *) 260 esac
261 case $pository in
262 '')
261 # local repository 263 # local repository
262 case $repository in 264 case $repository in
263 /*) ;; 265 /*) ;;
264 *) repository=${CVSROOT?}/$repository;; 266 *)
267 repository=${CVSROOT?}/$repository
268 case $repository in
269 :fork:* | :local:*)
270 repository=`expr "$repository" : ':[^:]*:\(.*\)'`;;
271 esac;;
265 esac 272 esac
266 if test ! -d "$repository" 273 if test ! -d "$repository"
267 then 274 then
@@ -281,6 +288,21 @@ case $rlogfile in
281 esac 288 esac
282 done 289 done
283 290
291 # If no rlog options are given, and if we are in a tagged CVS branch,
292 # log only the changes in that branch.
293 case $rlog_options in
294 '')
295 if test -f CVS/Tag
296 then
297 CVSTAG=`cat <CVS/Tag` || exit
298 case $CVSTAG in
299 T?*)
300 rlog_options=-r`expr "$CVSTAG" : 'T\(.*\)'`;;
301 *)
302 echo >&2 "$0: invalid CVS/Tag"; exit 1;;
303 esac
304 fi;;
305 esac
284 fi 306 fi
285 307
286 # Use $rlog's -zLT option, if $rlog supports it. 308 # Use $rlog's -zLT option, if $rlog supports it.
@@ -729,3 +751,5 @@ exec rm -fr $logdir
729# Local Variables: 751# Local Variables:
730# tab-width:4 752# tab-width:4
731# End: 753# End:
754
755# arch-tag: cea067bd-a552-4254-ba17-078208933073