aboutsummaryrefslogtreecommitdiffstats
path: root/lib-src
diff options
context:
space:
mode:
authorPaul Eggert1997-01-20 09:03:05 +0000
committerPaul Eggert1997-01-20 09:03:05 +0000
commit77851e9c307e4e8b659991914ddc0778b0268e0e (patch)
tree25ffebda976cf3a6b8ca97425cd7cacf2310a8a7 /lib-src
parenteefe9096285e43dde17b96c66dc25ad5ea7a5f88 (diff)
downloademacs-77851e9c307e4e8b659991914ddc0778b0268e0e.tar.gz
emacs-77851e9c307e4e8b659991914ddc0778b0268e0e.zip
--help, --version: New options, for conformance to GNU coding standards.
(Copyright, Help, Id): New variables, for above. (rlog): Use -q option with cvs log, to avoid useless chatter. Treat logs of "Initial revision" (RCS) or "file F was initially added on branch B." (CVS) as if they said "New file.", for consistency with change log entries.
Diffstat (limited to 'lib-src')
-rwxr-xr-xlib-src/rcs2log52
1 files changed, 41 insertions, 11 deletions
diff --git a/lib-src/rcs2log b/lib-src/rcs2log
index 44a12bd3da8..4f2b18ac54c 100755
--- a/lib-src/rcs2log
+++ b/lib-src/rcs2log
@@ -2,7 +2,8 @@
2 2
3# RCS to ChangeLog generator 3# RCS to ChangeLog generator
4 4
5# Generate a change log prefix from RCS files and the ChangeLog (if any). 5# Generate a change log prefix from RCS files (perhaps in the CVS repository)
6# and the ChangeLog (if any).
6# Output the new prefix to standard output. 7# Output the new prefix to standard output.
7# You can edit this prefix by hand, and then prepend it to ChangeLog. 8# You can edit this prefix by hand, and then prepend it to ChangeLog.
8 9
@@ -10,11 +11,26 @@
10# Clump together log entries that start with `{topic} ', 11# Clump together log entries that start with `{topic} ',
11# where `topic' contains neither white space nor `}'. 12# where `topic' contains neither white space nor `}'.
12 13
13# Author: Paul Eggert <eggert@twinsun.com> 14Help='The default FILEs are the files registered under the working directory.
15Options:
16
17 -c CHANGELOG Output a change log prefix to CHANGELOG (default ChangeLog).
18 -h HOSTNAME Use HOSTNAME in change log entries (default current host).
19 -i INDENT Indent change log lines by INDENT spaces (default 8).
20 -l LENGTH Try to limit log lines to LENGTH characters (default 79).
21 -R If no FILEs are given and RCS is used, recurse through working directory.
22 -r OPTION Pass OPTION to subsidiary log command.
23 -t TABWIDTH Tab stops are every TABWIDTH characters (default 8).
24 -u "LOGIN<tab>FULLNAME<tab>MAILADDR" Assume LOGIN has FULLNAME and MAILADDR.
25 -v Append RCS revision to file names in log lines.
26 --help Output help.
27 --version Output version number.
28
29Report bugs to <bug-gnu-emacs@prep.ai.mit.edu>.'
14 30
15# $Id: rcs2log,v 1.34 1996/10/13 05:59:42 eggert Exp eggert $ 31Id='$Id: rcs2log,v 1.35 1996/11/03 17:09:27 eggert Exp eggert $'
16 32
17# Copyright 1992, 1993, 1994, 1995, 1996 Free Software Foundation, Inc. 33# Copyright 1992, 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
18 34
19# This program is free software; you can redistribute it and/or modify 35# This program is free software; you can redistribute it and/or modify
20# it under the terms of the GNU General Public License as published by 36# it under the terms of the GNU General Public License as published by
@@ -31,6 +47,13 @@
31# Free Software Foundation, Inc., 59 Temple Place - Suite 330, 47# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
32# Boston, MA 02111-1307, USA. 48# Boston, MA 02111-1307, USA.
33 49
50Copyright='Copyright 1997 Free Software Foundation, Inc.
51This program comes with NO WARRANTY, to the extent permitted by law.
52You may redistribute copies of this program
53under the terms of the GNU General Public License.
54For more information about these matters, see the files named COPYING.
55Author: Paul Eggert <eggert@twinsun.com>'
56
34tab=' ' 57tab=' '
35nl=' 58nl='
36' 59'
@@ -99,12 +122,16 @@ do
99 -R) recursive=t;; 122 -R) recursive=t;;
100 -t) tabwidth=${2?}; shift;; 123 -t) tabwidth=${2?}; shift;;
101 -v) revision=t;; 124 -v) revision=t;;
102 -*) echo >&2 "$0: usage: $0 [options] [file ...] 125 --version)
103Options: 126 set $Id
104 [-c changelog] [-h hostname] [-i indent] [-l length] [-R] 127 rcs2logVersion=$3
105 [-r rlog_option] [-t tabwidth] [-v] 128 echo >&2 "rcs2log (GNU Emacs) $rcs2logVersion$nl$Copyright"
106 [-u 'login<TAB>fullname<TAB>mailaddr']..." 129 exit 0;;
107 exit 1;; 130 -*) echo >&2 "Usage: $0 [OPTION]... [FILE ...]$nl$Help"
131 case $1 in
132 --help) exit 0;;
133 *) exit 1
134 esac;;
108 *) break 135 *) break
109 esac 136 esac
110 shift 137 shift
@@ -174,7 +201,7 @@ then
174 rlog=rlog 201 rlog=rlog
175 repository= 202 repository=
176else 203else
177 rlog='cvs log' 204 rlog='cvs -q log'
178 repository=`sed 1q <CVS/Repository` || exit 205 repository=`sed 1q <CVS/Repository` || exit
179 test ! -f CVS/Root || CVSROOT=`cat <CVS/Root` || exit 206 test ! -f CVS/Root || CVSROOT=`cat <CVS/Root` || exit
180 case $CVSROOT in 207 case $CVSROOT in
@@ -488,6 +515,9 @@ $AWK <$rlogout '
488 } 515 }
489 if ($0 ~ /^branches: /) { next } 516 if ($0 ~ /^branches: /) { next }
490 if ($0 ~ /^(-----------*|===========*)$/) { print ""; next } 517 if ($0 ~ /^(-----------*|===========*)$/) { print ""; next }
518 if ($0 == "Initial revision" || $0 ~ /^file .+ was initially added on branch .+\.$/) {
519 $0 = "New file."
520 }
491 printf "%s%c", $0, 13 521 printf "%s%c", $0, 13
492 } 522 }
493' | 523' |