projects
/
gnulib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
TYPE_MAXIMUM: avoid theoretically undefined behavior
[gnulib.git]
/
build-aux
/
announce-gen
diff --git
a/build-aux/announce-gen
b/build-aux/announce-gen
index
3aed3ee
..
4886926
100755
(executable)
--- a/
build-aux/announce-gen
+++ b/
build-aux/announce-gen
@@
-1,13
+1,15
@@
-#!/usr/bin/perl -w
+eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
+ & eval 'exec perl -wS "$0" $argv:q'
+ if 0;
# Generate a release announcement message.
# Generate a release announcement message.
-my $VERSION = '20
09-08-22 08:05
'; # UTC
+my $VERSION = '20
10-05-03 20:17
'; # 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
# do its job. Otherwise, update this string manually.
# 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
# do its job. Otherwise, update this string manually.
-# Copyright (C) 2002-20
09
Free Software Foundation, Inc.
+# Copyright (C) 2002-20
11
Free Software Foundation, Inc.
# 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
# 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
@@
-33,7
+35,7
@@
use POSIX qw(strftime);
(my $ME = $0) =~ s|.*/||;
(my $ME = $0) =~ s|.*/||;
-my %valid_release_types = map {$_ => 1} qw (alpha beta
major
);
+my %valid_release_types = map {$_ => 1} qw (alpha beta
stable
);
my @archive_suffixes = ('tar.gz', 'tar.bz2', 'tar.lzma', 'tar.xz');
sub usage ($)
my @archive_suffixes = ('tar.gz', 'tar.bz2', 'tar.lzma', 'tar.xz');
sub usage ($)
@@
-49,11
+51,10
@@
sub usage ($)
my @types = sort keys %valid_release_types;
print $STREAM <<EOF;
Usage: $ME [OPTIONS]
my @types = sort keys %valid_release_types;
print $STREAM <<EOF;
Usage: $ME [OPTIONS]
+Generate an announcement message.
OPTIONS:
OPTIONS:
- Generate an announcement message.
-
These options must be specified:
--release-type=TYPE TYPE must be one of @types
These options must be specified:
--release-type=TYPE TYPE must be one of @types
@@
-74,6
+75,8
@@
The following are optional:
required if gnulib is in TOOL_LIST.
--no-print-checksums do not emit MD5 or SHA1 checksums
--archive-suffix=SUF add SUF to the list of archive suffixes
required if gnulib is in TOOL_LIST.
--no-print-checksums do not emit MD5 or SHA1 checksums
--archive-suffix=SUF add SUF to the list of archive suffixes
+ --mail-headers=HEADERS a space-separated list of mail headers, e.g.,
+ To: x\@example.com Cc: y-announce\@example.com,...
--help display this help and exit
--version output version information and exit
--help display this help and exit
--version output version information and exit
@@
-345,6
+348,7
@@
sub get_tool_versions ($$)
# issue "1,2" instead of "1.2", what confuses our regexps.
$ENV{LC_ALL} = "C";
# issue "1,2" instead of "1.2", what confuses our regexps.
$ENV{LC_ALL} = "C";
+ my $mail_headers;
my $release_type;
my $package_name;
my $prev_version;
my $release_type;
my $package_name;
my $prev_version;
@@
-358,6
+362,7
@@
sub get_tool_versions ($$)
GetOptions
(
GetOptions
(
+ 'mail-headers=s' => \$mail_headers,
'release-type=s' => \$release_type,
'package-name=s' => \$package_name,
'previous-version=s' => \$prev_version,
'release-type=s' => \$release_type,
'package-name=s' => \$package_name,
'previous-version=s' => \$prev_version,
@@
-421,11
+426,18
@@
sub get_tool_versions ($$)
%size
or exit 1;
%size
or exit 1;
+ my $headers = '';
+ if (defined $mail_headers)
+ {
+ ($headers = $mail_headers) =~ s/\s+(\S+:)/\n$1/g;
+ $headers .= "\n";
+ }
+
# The markup is escaped as <\# so that when this script is sent by
# mail (or part of a diff), Gnus is not triggered.
print <<EOF;
# The markup is escaped as <\# so that when this script is sent by
# mail (or part of a diff), Gnus is not triggered.
print <<EOF;
-Subject: $my_distdir released
+${headers}Subject: $my_distdir released [$release_type]
<\#secure method=pgpmime mode=sign>
<\#secure method=pgpmime mode=sign>
@@
-441,6
+453,11
@@
EOF
my @sig_files = map { "$_.sig" } @tarballs;
print_locations ("GPG detached signatures[*]", @url_dir_list, %size,
@sig_files);
my @sig_files = map { "$_.sig" } @tarballs;
print_locations ("GPG detached signatures[*]", @url_dir_list, %size,
@sig_files);
+ if ($url_dir_list[0] =~ "gnu\.org")
+ {
+ print "To reduce load on the main server, use a mirror listed at:\n";
+ print " http://www.gnu.org/order/ftp.html\n\n";
+ }
$print_checksums_p
and print_checksums (@sizable);
$print_checksums_p
and print_checksums (@sizable);
@@
-469,7
+486,7
@@
EOF
print_news_deltas ($_, $prev_version, $curr_version)
foreach @news_file;
print_news_deltas ($_, $prev_version, $curr_version)
foreach @news_file;
- $release_type eq '
major
'
+ $release_type eq '
stable
'
or print_changelog_deltas ($package_name, $prev_version);
exit 0;
or print_changelog_deltas ($package_name, $prev_version);
exit 0;
@@
-477,19
+494,15
@@
EOF
### Setup "GNU" style for perl-mode and cperl-mode.
## Local Variables:
### Setup "GNU" style for perl-mode and cperl-mode.
## Local Variables:
+## mode: perl
## perl-indent-level: 2
## perl-continued-statement-offset: 2
## perl-continued-brace-offset: 0
## perl-brace-offset: 0
## perl-brace-imaginary-offset: 0
## perl-label-offset: -2
## perl-indent-level: 2
## perl-continued-statement-offset: 2
## perl-continued-brace-offset: 0
## perl-brace-offset: 0
## perl-brace-imaginary-offset: 0
## perl-label-offset: -2
-## cperl-indent-level: 2
-## cperl-brace-offset: 0
-## cperl-continued-brace-offset: 0
-## cperl-label-offset: -2
-## cperl-extra-newline-before-brace: t
-## cperl-merge-trailing-else: nil
-## cperl-continued-statement-offset: 2
+## perl-extra-newline-before-brace: t
+## perl-merge-trailing-else: nil
## eval: (add-hook 'write-file-hooks 'time-stamp)
## time-stamp-start: "my $VERSION = '"
## time-stamp-format: "%:y-%02m-%02d %02H:%02M"
## eval: (add-hook 'write-file-hooks 'time-stamp)
## time-stamp-start: "my $VERSION = '"
## time-stamp-format: "%:y-%02m-%02d %02H:%02M"