bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

announce-gen improvements


From: Jim Meyering
Subject: announce-gen improvements
Date: Sat, 12 Jan 2008 10:25:00 +0100

I've just pushed the following two changes:
(copyright- and version-string changes omitted here)
The first is a no-brainer: support lzma.
The second may require some adaptation.

If you use announce-gen's relatively new --bootstrap-tools=LIST option,
you'll probably want to do something similar to the patch included below
for coreutils.

2008-01-12  Jim Meyering  <address@hidden>

        * build-aux/announce-gen: Also check for lzma-compressed files.

2008-01-12  Jim Meyering  <address@hidden>

        announce-gen: emit Gnulib's git-based version string.
        * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
        New option --gnulib-version=V, where V is expected to be
        the output of running git describe in the gnulib directory.
        (get_tool_versions): Request feedback on xdelta.  I suspect it's
        not useful, and plan to stop publishing an xdelta file with each
        coreutils release.


diff --git a/build-aux/announce-gen b/build-aux/announce-gen
index cc087d0..1fb60b1 100755
--- a/build-aux/announce-gen
+++ b/build-aux/announce-gen
@@ -426,9 +426,10 @@ sub get_tool_versions ($$)
   my $my_distdir = "$package_name-$curr_version";
   my $tgz = "$my_distdir.tar.gz";
   my $tbz = "$my_distdir.tar.bz2";
+  my $lzma = "$my_distdir.tar.lzma";
   my $xd = "$package_name-$prev_version-$curr_version.xdelta";

-  my @tarballs = grep {-f $_} ($tgz, $tbz);
+  my @tarballs = grep {-f $_} ($tgz, $tbz, $lzma);
   my @sizable = @tarballs;
   -f $xd
     and push @sizable, $xd;

diff --git a/build-aux/announce-gen b/build-aux/announce-gen
index 1fb60b1..9248876 100755
--- a/build-aux/announce-gen
+++ b/build-aux/announce-gen
@@ -327,22 +327,17 @@ sub print_changelog_deltas ($$)

 sub get_tool_versions ($$)
 {
-  my ($bootstrap_tools, $gnulib_snapshot_timestamp) = @_;
-  defined $bootstrap_tools
+  my ($tool_list, $gnulib_version) = @_;
+  @$tool_list
     or return ();

-  defined $gnulib_snapshot_timestamp
-    or $gnulib_snapshot_timestamp = strftime '%Y-%m-%d %T UTC', gmtime;
-
   my $fail;
-  my @tool_list = split ',', $bootstrap_tools;
   my @tool_version_pair;
-  foreach my $t (@tool_list)
+  foreach my $t (@$tool_list)
     {
       if ($t eq 'gnulib')
        {
-         push @tool_version_pair,
-           "CVS Gnulib sources from $gnulib_snapshot_timestamp";
+         push @tool_version_pair, ucfirst $t . ' ' . $gnulib_version;
          next;
        }
       # Assume that the last "word" on the first line of
@@ -381,7 +376,7 @@ sub get_tool_versions ($$)
   my @url_dir_list;
   my @news_file;
   my $bootstrap_tools;
-  my $gnulib_snapshot_timestamp;
+  my $gnulib_version;

   GetOptions
     (
@@ -393,7 +388,7 @@ sub get_tool_versions ($$)
      'url-directory=s'    => address@hidden,
      'news=s'             => address@hidden,
      'bootstrap-tools=s'  => \$bootstrap_tools,
-     'gnulib-snapshot-time-stamp=s' => \$gnulib_snapshot_timestamp,
+     'gnulib-version=s'   => \$gnulib_version,

      help => sub { usage 0 },
      version => sub { print "$ME version $VERSION\n"; exit },
@@ -414,6 +409,13 @@ sub get_tool_versions ($$)
   @url_dir_list
     or (warn "$ME: URL directory name(s) not specified\n"), $fail = 1;

+  my @tool_list = split ',', $bootstrap_tools;
+
+  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;
+
   exists $valid_release_types{$release_type}
     or (warn "$ME: `$release_type': invalid release type\n"), $fail = 1;

@@ -451,7 +453,9 @@ EOF

   print_locations ("compressed sources", @url_dir_list, %size, @tarballs);
   -f $xd
-    and print_locations ("xdelta-style diffs", @url_dir_list, %size, $xd);
+    and print_locations ("xdelta diffs (useful? if so, "
+                        . "please tell address@hidden)",
+                        @url_dir_list, %size, $xd);
   my @sig_files = map { "$_.sig" } @tarballs;
   print_locations ("GPG detached signatures[*]", @url_dir_list, %size,
                   @sig_files);
@@ -475,8 +479,7 @@ then run this command to import it:
 and rerun the \`gpg --verify' command.
 EOF

-  my @tool_versions = get_tool_versions ($bootstrap_tools,
-                                         $gnulib_snapshot_timestamp);
+  my @tool_versions = get_tool_versions (address@hidden, $gnulib_version);
   @tool_versions
     and print "\nThis release was bootstrapped with the following tools:",
       join ('', map {"\n  $_"} @tool_versions), "\n";
--
1.5.4.rc2.85.g71fd

===================================================================

2008-01-12  Jim Meyering  <address@hidden>

        Use new version of announce-gen.
        * Makefile.maint (announcement): Remove use of the
        --gnulib-snapshot-time-stamp option.
        Use new --gnulib-version option instead.
        (gnulib-version): New variable.

diff --git a/Makefile.maint b/Makefile.maint
index fe6bee5..fa2ceb6 100644
--- a/Makefile.maint
+++ b/Makefile.maint
@@ -2,7 +2,7 @@
 # This Makefile fragment is shared between the coreutils,
 # CPPI, Bison, and Autoconf.

-## Copyright (C) 2001-2007 Free Software Foundation, Inc.
+## Copyright (C) 2001-2008 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
@@ -617,10 +617,15 @@ rel-check:
        md5sum -c $$md5_tmp < $$tarz

 prev-tgz = $(PACKAGE)-$(PREV_VERSION).tar.gz
+
+# FIXME: stop distributing xdelta files in 2008, unless someone speaks up.
+# So far, not one person has said they'd miss this.
 xd-delta = $(PACKAGE)-$(PREV_VERSION)-$(VERSION).xdelta

 rel-files = $(xd-delta) $(DIST_ARCHIVES)

+gnulib-version = $$(cd $(gnulib_dir) && git describe)
+
 # Approximate the date of last gnulib "update" by the ChangeLog file's
 # mtime, and provide that date in the announcement.
 announcement: NEWS ChangeLog $(rel-files)
@@ -634,7 +639,7 @@ announcement: NEWS ChangeLog $(rel-files)
            --gpg-key-id=$(gpg_key_ID)                                  \
            --news=NEWS                                                 \
            --bootstrap-tools=autoconf,automake,bison,gnulib            \
-           --gnulib-snapshot-time-stamp="$$utc_date"                   \
+           --gnulib-version=$(gnulib-version)                          \
            $(addprefix --url-dir=, $(url_dir_list))

 ## ---------------- ##
--
1.5.4.rc2.85.g71fd




reply via email to

[Prev in Thread] Current Thread [Next in Thread]