libtool/build-aux/thanks-gen
Gary V. Vaughan 48ef34c5b9 maint: autogenerate THANKS.
More automation == less time wasted on menial tasks.
* build-aux/thanks-gen: script inspired by coreutils.
* Makefile.am (THANKS): Based on rule from coreutils/Makefile.am.
* NO-THANKS: New file.  Configure thanks-gen output.
* THANKS: Remove.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2014-10-29 17:55:45 +00:00

21 lines
537 B
Perl
Executable File

#!/usr/bin/perl -nl
# Use Perl's multi-byte alignment code, via sprintf, while
# performing a rudimentary check for duplicate names and
# removing duplicate name,email pairs.
use Encode;
BEGIN { my (%elide, %seen, %name) }
chomp;
my ($name, $email) = split '\0', decode ('UTF-8', $_);
if ($elide{"!$name"}) {
; # ignore this author
} elsif (index ($name, '!') == 0) {
$elide{$name}++;
} elsif ($seen{$name}++) {
warn "$0: NO-THANKS: duplicate name: $name\n";
} else {
print encode ('UTF-8', sprintf ('%-36s', $name)), $email;
}