diff options
author | Peter Simons <simons@cryp.to> | 2009-12-27 13:31:57 +0100 |
---|---|---|
committer | Peter Simons <simons@cryp.to> | 2009-12-27 13:31:57 +0100 |
commit | 58104f21a9dbdb39fc6f1a47e48233360d36d0f6 (patch) | |
tree | 073fba70bd0120b8b7f21fe0fda0485838e313dd | |
parent | 0fa9cb962265057a12318dd0b6743a84aee74388 (diff) | |
download | autoconf-archive-58104f21a9dbdb39fc6f1a47e48233360d36d0f6.tar.gz |
AUTHORS: ensure that ever macro copyright holder is included in this file
The AUTHORS file lists the name of everyone who has submitted an m4 file
or committed to the Git repository.
-rw-r--r-- | .mailmap | 11 | ||||
-rw-r--r-- | Makefile.am | 2 | ||||
-rw-r--r-- | TODO | 7 | ||||
-rwxr-xr-x | bootstrap.sh | 2 | ||||
-rwxr-xr-x | gen-authors.sh | 21 | ||||
-rwxr-xr-x | git-authors-gen.pl | 105 |
6 files changed, 23 insertions, 125 deletions
diff --git a/.mailmap b/.mailmap deleted file mode 100644 index e24333e..0000000 --- a/.mailmap +++ /dev/null @@ -1,11 +0,0 @@ -Bogdan Drozdowski <bogdandr@op.pl> -Bogdan Drozdowski <bogdandr # op . pl> -Dustin J. Mitchell <dustin@cs.uchicago.edu> -Dustin J. Mitchell <dustin@zmanda.com> -Fabien Coelho <fabien@coelho.net> -Fabien Coelho <autoconf.archive@coelho.net> -Fabien Coelho <fabien.coelho@ensmp.fr> -Francesco Salvestrini <salvestrini@gmail.com> -Francesco Salvestrini <salvestrini@users.sourceforge.net> -Peter Johansson <peterandrejohansson@gmail.com> -Peter Johansson <trojkan@gmail.com> diff --git a/Makefile.am b/Makefile.am index 253378f..dba4d3e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -29,7 +29,7 @@ dist-hook: >$(distdir)/cl-t -- master $(top_srcdir)/m4; \ rm -f $(distdir)/ChangeLog; \ mv $(distdir)/cl-t $(distdir)/ChangeLog; \ - $(top_srcdir)/git-authors-gen.pl >$(distdir)/au-t; \ + $(top_srcdir)/gen-authors.sh >$(distdir)/au-t; \ rm -f $(distdir)/AUTHORS; \ mv $(distdir)/au-t $(distdir)/AUTHORS; \ fi @@ -22,13 +22,6 @@ been changed in Git. Other branches, like 'maint', aren't tracked; there is only a moderate amount of traffic. -* TODO Auto-generate the AUTHORS file [1/2] - - The file should contain: - - * [X] people who committed to the git repository - * [ ] people who are listed in m4 file copyright lines - * TODO Improve submission guide lines on the web site ** New submissions should use an AX_ prefix. diff --git a/bootstrap.sh b/bootstrap.sh index 9d2f96d..fe1d105 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -18,7 +18,7 @@ sed -i -e 's/^sc_file_system:/disabled_sc_file_system:/' \ -e 's/^sc_prohibit_magic_number_exit:/disabled_sc_prohibit_magic_number_exit:/' \ maint.mk -./git-authors-gen.pl >AUTHORS +./gen-authors.sh >AUTHORS build-aux/gitlog-to-changelog >ChangeLog -- master m4/ autoreconf --install -Wall diff --git a/gen-authors.sh b/gen-authors.sh new file mode 100755 index 0000000..41905b7 --- /dev/null +++ b/gen-authors.sh @@ -0,0 +1,21 @@ +#! /bin/bash + +set -eu + +trap 'rm -f AUTHORS-m4.tmp AUTHORS-git.tmp' 0 + +sed -n -e 's/# *Copyright (c) [0-9,-]* *//p' m4/*.m4 >AUTHORS-m4.tmp +git log | sed -n -e 's/^Author: *//p' >AUTHORS-git.tmp + +cat AUTHORS-m4.tmp AUTHORS-git.tmp \ + | sed -e 's/ *<.*>.*//' \ + -e 's/^Bogdan$/Bogdan Drozdowski/' \ + -e 's/Fabien COELHO/Fabien Coelho/' \ + -e 's/Dustin Mitchell/Dustin J. Mitchell/' \ + -e 's/Alain BARBET/Alain Barbet/' \ + -e 's/Mats Kindahl of Sun Microsystems/Mats Kindahl/' \ + -e 's/Perceval ANICHINI/Perceval Anichini/' \ + -e 's/Rafa Rzepecki/Rafal Rzepecki/' \ + -e '/Zmanda Inc./d' \ + | sort \ + | uniq diff --git a/git-authors-gen.pl b/git-authors-gen.pl deleted file mode 100755 index aae7a65..0000000 --- a/git-authors-gen.pl +++ /dev/null @@ -1,105 +0,0 @@ -#! /usr/bin/env perl -# -*- perl -*- - -# -# git-authors-gen -# -# This program is based on gitlog-to-changelog by Jim Meyering -# - -use strict; -use warnings; -use Getopt::Long; - -(my $ME = $0) =~ s|.*/||; - -my $BUGREPORT = 'autoconf-archive-maintainers@nongnu.org'; - -sub usage ($) { - my ($exit_code) = @_; - my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR); - if ($exit_code != 0) { - print $STREAM "Try `$ME --help' for more information.\n"; - } else { - print $STREAM <<EOF; -Usage: $ME [OPTIONS] - -Output git committers. - -OPTIONS: - - --since=DATE convert only the logs since DATE; - the default is to convert all log entries. - -h, --help display this help and exit - -EXAMPLE: - - $ME --since=2008-01-02 > AUTHORS - -Report bugs to <${BUGREPORT}> -EOF - } - exit($exit_code); -} - -# If the string $S is a well-behaved file name, simply return it. -# If it contains white space, quotes, etc., quote it, and return the new string. -sub shell_quote($) { - my ($s) = @_; - if ($s =~ m![^\w+/.,-]!) { - # Convert each single quote to '\'' - $s =~ s/\'/\'\\\'\'/g; - # Then single quote the string. - $s = "'$s'"; - } - return $s; -} - -sub quoted_cmd(@) { - return join (' ', map {shell_quote $_} @_); -} - -# Main -{ - my $since_date = '1970-01-01 UTC'; - GetOptions( - 'h|help' => sub { usage 0 }, - 'since=s' => \$since_date, - ) or usage 1; - - @ARGV - and (warn "$ME: too many arguments\n"), usage 1; - - my @cmd = (qw (git shortlog --summary), "--since=$since_date"); - open PIPE, '-|', @cmd - or die ("$ME: failed to run `". quoted_cmd (@cmd) ."': $!\n" . - "(Is your Git too old? Version 1.5.1 or later required.)\n"); - - my %committers; - - while (<PIPE>) { - my $line = $_; - - defined($line) or last; - chomp($line); - - if ($line =~ /^\s*\d+\s+(.*)\s*$/) { - my $name = $1; - - if (defined($committers{$name})) { - die "$ME: Duplicated name found, fix your .mailmap"; - } - $committers{$name} = 1; - } else { - die "$ME: Unhandled line found ('$line')"; - } - } - - close PIPE - or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n"; - - my @keys = sort(keys(%committers)); - foreach my $name (@keys) { - print "$name\n"; - } -} |