summaryrefslogtreecommitdiff
path: root/build-aux
diff options
context:
space:
mode:
Diffstat (limited to 'build-aux')
-rwxr-xr-xbuild-aux/announce-gen152
-rwxr-xr-xbuild-aux/vc-list-files89
2 files changed, 122 insertions, 119 deletions
diff --git a/build-aux/announce-gen b/build-aux/announce-gen
index 488692681..0eb6b5b6e 100755
--- a/build-aux/announce-gen
+++ b/build-aux/announce-gen
@@ -3,7 +3,7 @@ eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
if 0;
# Generate a release announcement message.
-my $VERSION = '2010-05-03 20:17'; # UTC
+my $VERSION = '2011-05-17 20:25'; # UTC
# The definition above must lie within the first 8 lines in order
# for the Emacs time-stamp write hook (at end) to update it.
# If you change this file with Emacs, please let the write hook
@@ -106,7 +106,7 @@ sub sizes (@)
my $t = `$cmd`;
# FIXME-someday: give a better diagnostic, a la $PROCESS_STATUS
$@
- and (warn "$ME: command failed: `$cmd'\n"), $fail = 1;
+ and (warn "$ME: command failed: `$cmd'\n"), $fail = 1;
chomp $t;
$t =~ s/^([\d.]+[MkK]).*/${1}B/;
$res{$f} = $t;
@@ -128,12 +128,12 @@ sub print_locations ($\@\%@)
foreach my $url (@{$url})
{
for my $file (@file)
- {
- print " $url/$file";
- print " (", $$size{$file}, ")"
- if exists $$size{$file};
- print "\n";
- }
+ {
+ print " $url/$file";
+ print " (", $$size{$file}, ")"
+ if exists $$size{$file};
+ print "\n";
+ }
}
print "\n";
}
@@ -154,17 +154,17 @@ sub print_checksums (@)
foreach my $meth (qw (md5 sha1))
{
foreach my $f (@file)
- {
- open IN, '<', $f
- or die "$ME: $f: cannot open for reading: $!\n";
- binmode IN;
- my $dig =
- ($meth eq 'md5'
- ? Digest::MD5->new->addfile(*IN)->hexdigest
- : Digest::SHA1->new->addfile(*IN)->hexdigest);
- close IN;
- print "$dig $f\n";
- }
+ {
+ open IN, '<', $f
+ or die "$ME: $f: cannot open for reading: $!\n";
+ binmode IN;
+ my $dig =
+ ($meth eq 'md5'
+ ? Digest::MD5->new->addfile(*IN)->hexdigest
+ : Digest::SHA1->new->addfile(*IN)->hexdigest);
+ close IN;
+ print "$dig $f\n";
+ }
}
print "\n";
}
@@ -180,7 +180,10 @@ sub print_news_deltas ($$$)
{
my ($news_file, $prev_version, $curr_version) = @_;
- print "\n$news_file\n\n";
+ my $news_name = $news_file;
+ $news_name =~ s|^\./||;
+
+ print "\n$news_name\n\n";
# Print all lines from $news_file, starting with the first one
# that mentions $curr_version up to but not including
@@ -189,34 +192,39 @@ sub print_news_deltas ($$$)
my $re_prefix = qr/(?:\* )?(?:Noteworthy c|Major c|C)(?i:hanges)/;
+ my $found_news;
open NEWS, '<', $news_file
or die "$ME: $news_file: cannot open for reading: $!\n";
while (defined (my $line = <NEWS>))
{
if ( ! $in_items)
- {
- # Match lines like these:
- # * Major changes in release 5.0.1:
- # * Noteworthy changes in release 6.6 (2006-11-22) [stable]
- $line =~ /^$re_prefix.*(?:[^\d.]|$)\Q$curr_version\E(?:[^\d.]|$)/o
- or next;
- $in_items = 1;
- print $line;
- }
+ {
+ # Match lines like these:
+ # * Major changes in release 5.0.1:
+ # * Noteworthy changes in release 6.6 (2006-11-22) [stable]
+ $line =~ /^$re_prefix.*(?:[^\d.]|$)\Q$curr_version\E(?:[^\d.]|$)/o
+ or next;
+ $in_items = 1;
+ print $line;
+ }
else
- {
- # This regexp must not match version numbers in NEWS items.
- # For example, they might well say `introduced in 4.5.5',
- # and we don't want that to match.
- $line =~ /^$re_prefix.*(?:[^\d.]|$)\Q$prev_version\E(?:[^\d.]|$)/o
- and last;
- print $line;
- }
+ {
+ # This regexp must not match version numbers in NEWS items.
+ # For example, they might well say `introduced in 4.5.5',
+ # and we don't want that to match.
+ $line =~ /^$re_prefix.*(?:[^\d.]|$)\Q$prev_version\E(?:[^\d.]|$)/o
+ and last;
+ print $line;
+ $line =~ /\S/
+ and $found_news = 1;
+ }
}
close NEWS;
$in_items
or die "$ME: $news_file: no matching lines for `$curr_version'\n";
+ $found_news
+ or die "$ME: $news_file: no news item found for `$curr_version'\n";
}
sub print_changelog_deltas ($$)
@@ -229,8 +237,8 @@ sub print_changelog_deltas ($$)
use File::Find;
my @changelog;
find ({wanted => sub {$_ eq 'ChangeLog' && -d 'CVS'
- and push @changelog, $File::Find::name}},
- '.');
+ and push @changelog, $File::Find::name}},
+ '.');
# If there are no ChangeLog files, we're done.
@changelog
@@ -255,7 +263,7 @@ sub print_changelog_deltas ($$)
my $dot_slash = $d eq '.' ? $d : "./$d";
my $target = "$dot_slash/ChangeLog";
delete $changelog{$target}
- and push @reordered, $target;
+ and push @reordered, $target;
}
# Append any remaining ChangeLog files.
@@ -282,20 +290,20 @@ sub print_changelog_deltas ($$)
while (defined (my $line = <DIFF>))
{
if ($line =~ /^\+\+\+ /)
- {
- my $separator = "*"x70 ."\n";
- $line =~ s///;
- $line =~ s/\s.*//;
- $prev_printed_line_empty
- or print "\n";
- print $separator, $line, $separator;
- }
+ {
+ my $separator = "*"x70 ."\n";
+ $line =~ s///;
+ $line =~ s/\s.*//;
+ $prev_printed_line_empty
+ or print "\n";
+ print $separator, $line, $separator;
+ }
elsif ($line =~ /^\+/)
- {
- $line =~ s///;
- print $line;
- $prev_printed_line_empty = ($line =~ /^$/);
- }
+ {
+ $line =~ s///;
+ print $line;
+ $prev_printed_line_empty = ($line =~ /^$/);
+ }
}
close DIFF;
@@ -316,25 +324,25 @@ sub get_tool_versions ($$)
foreach my $t (@$tool_list)
{
if ($t eq 'gnulib')
- {
- push @tool_version_pair, ucfirst $t . ' ' . $gnulib_version;
- next;
- }
+ {
+ push @tool_version_pair, ucfirst $t . ' ' . $gnulib_version;
+ next;
+ }
# Assume that the last "word" on the first line of
# `tool --version` output is the version string.
my ($first_line, undef) = split ("\n", `$t --version`);
if ($first_line =~ /.* (\d[\w.-]+)$/)
- {
- $t = ucfirst $t;
- push @tool_version_pair, "$t $1";
- }
+ {
+ $t = ucfirst $t;
+ push @tool_version_pair, "$t $1";
+ }
else
- {
- defined $first_line
- and $first_line = '';
- warn "$ME: $t: unexpected --version output\n:$first_line";
- $fail = 1;
- }
+ {
+ defined $first_line
+ and $first_line = '';
+ warn "$ME: $t: unexpected --version output\n:$first_line";
+ $fail = 1;
+ }
}
$fail
@@ -398,8 +406,8 @@ sub get_tool_versions ($$)
grep (/^gnulib$/, @tool_list) ^ defined $gnulib_version
and (warn "$ME: when specifying gnulib as a tool, you must also specify\n"
- . "--gnulib-version=V, where V is the result of running git describe\n"
- . "in the gnulib source directory.\n"), $fail = 1;
+ . "--gnulib-version=V, where V is the result of running git describe\n"
+ . "in the gnulib source directory.\n"), $fail = 1;
exists $valid_release_types{$release_type}
or (warn "$ME: `$release_type': invalid release type\n"), $fail = 1;
@@ -448,11 +456,11 @@ EOF
print_locations ("compressed sources", @url_dir_list, %size, @tarballs);
-f $xd
and print_locations ("xdelta diffs (useful? if so, "
- . "please tell bug-gnulib\@gnu.org)",
- @url_dir_list, %size, $xd);
+ . "please tell bug-gnulib\@gnu.org)",
+ @url_dir_list, %size, $xd);
my @sig_files = map { "$_.sig" } @tarballs;
print_locations ("GPG detached signatures[*]", @url_dir_list, %size,
- @sig_files);
+ @sig_files);
if ($url_dir_list[0] =~ "gnu\.org")
{
print "To reduce load on the main server, use a mirror listed at:\n";
diff --git a/build-aux/vc-list-files b/build-aux/vc-list-files
index 9bb6fe6d3..405e458f5 100755
--- a/build-aux/vc-list-files
+++ b/build-aux/vc-list-files
@@ -2,7 +2,7 @@
# List version-controlled file names.
# Print a version string.
-scriptversion=2010-04-23.22; # UTC
+scriptversion=2011-05-16.22; # UTC
# Copyright (C) 2006-2011 Free Software Foundation, Inc.
@@ -30,7 +30,7 @@ scriptversion=2010-04-23.22; # UTC
postprocess=
case $1 in
--help) cat <<EOF
-Usage: $0 [-C SRCDIR] [DIR]
+Usage: $0 [-C SRCDIR] [DIR...]
Output a list of version-controlled files in DIR (default .), relative to
SRCDIR (default .). SRCDIR must be the top directory of a checkout.
@@ -61,53 +61,48 @@ EOF
shift; shift ;;
esac
-dir=
-case $# in
- 0) ;;
- 1) dir=$1 ;;
- *) echo "$0: too many arguments" 1>&2
- echo "Usage: $0 [-C srcdir] [DIR]" 1>&2; exit 1;;
-esac
-
-test "x$dir" = x && dir=.
-
-if test -d .git; then
- test "x$dir" = x. \
- && dir= sed_esc= \
- || { dir="$dir/"; sed_esc=`echo "$dir"|env sed 's,\([\\/]\),\\\\\1,g'`; }
- # Ignore git symlinks - either they point into the tree, in which case
- # we don't need to visit the target twice, or they point somewhere
- # else (often into a submodule), in which case the content does not
- # belong to this package.
- eval exec git ls-tree -r 'HEAD:"$dir"' \
- \| sed -n '"s/^100[^ ]*./$sed_esc/p"' $postprocess
-elif test -d .hg; then
- eval exec hg locate '"$dir/*"' $postprocess
-elif test -d .bzr; then
- test "$postprocess" = '' && postprocess="| sed 's|^\./||'"
- eval exec bzr ls -R --versioned '"$dir"' $postprocess
-elif test -d CVS; then
- test "$postprocess" = '' && postprocess="| sed 's|^\./||'"
- if test -x build-aux/cvsu; then
- eval build-aux/cvsu --find --types=AFGM '"$dir"' $postprocess
- elif (cvsu --help) >/dev/null 2>&1; then
- eval cvsu --find --types=AFGM '"$dir"' $postprocess
+test $# = 0 && set .
+
+for dir
+do
+ if test -d .git; then
+ test "x$dir" = x. \
+ && dir= sed_esc= \
+ || { dir="$dir/"; sed_esc=`echo "$dir"|env sed 's,\([\\/]\),\\\\\1,g'`; }
+ # Ignore git symlinks - either they point into the tree, in which case
+ # we don't need to visit the target twice, or they point somewhere
+ # else (often into a submodule), in which case the content does not
+ # belong to this package.
+ eval exec git ls-tree -r 'HEAD:"$dir"' \
+ \| sed -n '"s/^100[^ ]*./$sed_esc/p"' $postprocess
+ elif test -d .hg; then
+ eval exec hg locate '"$dir/*"' $postprocess
+ elif test -d .bzr; then
+ test "$postprocess" = '' && postprocess="| sed 's|^\./||'"
+ eval exec bzr ls -R --versioned '"$dir"' $postprocess
+ elif test -d CVS; then
+ test "$postprocess" = '' && postprocess="| sed 's|^\./||'"
+ if test -x build-aux/cvsu; then
+ eval build-aux/cvsu --find --types=AFGM '"$dir"' $postprocess
+ elif (cvsu --help) >/dev/null 2>&1; then
+ eval cvsu --find --types=AFGM '"$dir"' $postprocess
+ else
+ eval awk -F/ \''{ \
+ if (!$1 && $3 !~ /^-/) { \
+ f=FILENAME; \
+ if (f ~ /CVS\/Entries$/) \
+ f = substr(f, 1, length(f)-11); \
+ print f $2; \
+ }}'\'' \
+ `find "$dir" -name Entries -print` /dev/null' $postprocess
+ fi
+ elif test -d .svn; then
+ eval exec svn list -R '"$dir"' $postprocess
else
- eval awk -F/ \''{ \
- if (!$1 && $3 !~ /^-/) { \
- f=FILENAME; \
- if (f ~ /CVS\/Entries$/) \
- f = substr(f, 1, length(f)-11); \
- print f $2; \
- }}'\'' \
- `find "$dir" -name Entries -print` /dev/null' $postprocess
+ echo "$0: Failed to determine type of version control used in `pwd`" 1>&2
+ exit 1
fi
-elif test -d .svn; then
- eval exec svn list -R '"$dir"' $postprocess
-else
- echo "$0: Failed to determine type of version control used in `pwd`" 1>&2
- exit 1
-fi
+done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)