mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-04-18 01:40:06 +02:00
maint: add a rule to automate the annual copyright-year-update process
* build-aux/update-copyright: New file. * Makefile.am (changelog_etc): Add update-copyright. (update-copyright): New rule.
This commit is contained in:
@@ -25,6 +25,7 @@ changelog_etc = \
|
||||
ChangeLog-2007 \
|
||||
ChangeLog-2008 \
|
||||
build-aux/ChangeLog-2007 \
|
||||
build-aux/update-copyright \
|
||||
doc/ChangeLog-2007 \
|
||||
lib/ChangeLog-2007 \
|
||||
m4/ChangeLog-2007 \
|
||||
@@ -143,3 +144,11 @@ check-ls-dircolors:
|
||||
|sed -n '/^ *"/p'|tr , '\n'|sed 's/^ *//' \
|
||||
|sed -n 's/^"\(..\)"/\1/p'|sort -u); \
|
||||
test "$$dc" = "$$ls"
|
||||
|
||||
.PHONY: update-copyright
|
||||
update-copyright:
|
||||
if test -d .git; then \
|
||||
git grep -l -E '2[0-9]{3} +Free' \
|
||||
| grep -v -E '^(COPYING|ChangeLog)' \
|
||||
| xargs $(srcdir)/build-aux/$@; \
|
||||
fi
|
||||
|
||||
62
build-aux/update-copyright
Executable file
62
build-aux/update-copyright
Executable file
@@ -0,0 +1,62 @@
|
||||
#!/usr/bin/perl -w -pi
|
||||
# Update an FSF copyright year list to include the current year.
|
||||
|
||||
my $VERSION = '2009-06-04 08:53'; # UTC
|
||||
|
||||
# Copyright (C) 2009 Free Software Foundation
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 3, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
# Written by Jim Meyering
|
||||
|
||||
use strict;
|
||||
|
||||
my ($sec, $min, $hour, $mday, $month, $this_year) = localtime (time());
|
||||
$this_year += 1900;
|
||||
|
||||
my $holder = 'Free Software Foundation';
|
||||
|
||||
if (/([- ])((?:\d\d)?\d\d)\s+$holder/)
|
||||
{
|
||||
my ($sep, $last_c_year) = ($1, $2);
|
||||
|
||||
# Handle two-digit year numbers like "98" and "99".
|
||||
$last_c_year <= 99
|
||||
and $last_c_year += 1900;
|
||||
|
||||
if ($last_c_year != $this_year)
|
||||
{
|
||||
if ($sep eq '-' && $last_c_year + 1 == $this_year)
|
||||
{
|
||||
s//-$this_year $holder/;
|
||||
}
|
||||
elsif ($sep eq ' ' && $last_c_year + 1 == $this_year)
|
||||
{
|
||||
s// $last_c_year-$this_year $holder/;
|
||||
}
|
||||
else
|
||||
{
|
||||
s//$sep$last_c_year, $this_year $holder/;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Local variables:
|
||||
# indent-tabs-mode: nil
|
||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||
# time-stamp-start: "my $VERSION = '"
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC"
|
||||
# time-stamp-end: "'; # UTC"
|
||||
# End:
|
||||
Reference in New Issue
Block a user