]> git.ipfire.org Git - thirdparty/autoconf.git/commitdiff
Improve release automation.
authorEric Blake <ebb9@byu.net>
Wed, 6 Jan 2010 04:31:32 +0000 (21:31 -0700)
committerEric Blake <ebb9@byu.net>
Wed, 6 Jan 2010 04:31:32 +0000 (21:31 -0700)
* maint.mk (gnulib_dir, gnulib-version, bootstrap-tools)
(announcement): Copy from latest gnulib maint.mk.
* cfg.mk (announce_gen, gpg_key_ID): Delete.
(bootstrap-tools): Override the default.

Signed-off-by: Eric Blake <ebb9@byu.net>
ChangeLog
cfg.mk
maint.mk

index de8101f19160c98bd3c6f0f7fe7c0339a58686db..2765bda92a9dd78f0160dd8f3ad7db100c020c8e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2010-01-05  Eric Blake  <ebb9@byu.net>
 
+       Improve release automation.
+       * maint.mk (gnulib_dir, gnulib-version, bootstrap-tools)
+       (announcement): Copy from latest gnulib maint.mk.
+       * cfg.mk (announce_gen, gpg_key_ID): Delete.
+       (bootstrap-tools): Override the default.
+
        Update upstream files.
        * GNUmakefile: Update via 'make fetch'.
        * build-aux/announce-gen: Likewise.
diff --git a/cfg.mk b/cfg.mk
index 7b1eb938bf9d2a389d21d2ec8a282e1a1714637b..4bdf97f948528119c495f2a1bcae329b272c2e6c 100644 (file)
--- a/cfg.mk
+++ b/cfg.mk
@@ -23,19 +23,16 @@ export PATH = $(shell echo "`pwd`/tests:$$PATH")
 # Remove the autoreconf-provided INSTALL, so that we regenerate it.
 _autoreconf = autoreconf -i -v && rm -f INSTALL
 
-# Version management.
-announce_gen   = $(srcdir)/build-aux/announce-gen
-
 # Used in maint.mk's web-manual rule
 manual_title = Creating Automatic Configuration Scripts
 
-# The GnuPG ID of the key used to sign the tarballs.
-gpg_key_ID = F4850180
-
 # The local directory containing the checked-out copy of gnulib used in this
-# release.
+# release (override the default).
 gnulib_dir = '$(abs_srcdir)'/../gnulib
 
+# The bootstrap tools (override the default).
+bootstrap-tools = automake
+
 # Update files from gnulib.
 .PHONY: fetch gnulib-update autom4te-update
 fetch: gnulib-update autom4te-update
index 119a52a658a5a3b5d85066e936facc53e52b0204..7696c96d971d45e31c9732682dd037a56d530274 100644 (file)
--- a/maint.mk
+++ b/maint.mk
@@ -546,15 +546,29 @@ my-distcheck: $(local-check) $(release_archive_dir)/$(prev-tgz)
 prev-tgz = $(PACKAGE)-$(PREV_VERSION).tar.gz
 
 rel-files = $(DIST_ARCHIVES)
+
+gnulib_dir ?= $(srcdir)/gnulib
+gnulib-version = $$(cd $(gnulib_dir) && git describe)
+bootstrap-tools ?= autoconf,automake,gnulib
+
+# If it's not already specified, derive the GPG key ID from
+# the signed tag we've just applied to mark this release.
+gpg_key_ID ?= \
+  $$(git cat-file tag v$(VERSION) > .ann-sig \
+     && gpgv .ann-sig - < /dev/null 2>&1 \
+         | sed -n '/.*key ID \([0-9A-F]*\)/s//\1/p'; rm -f .ann-sig)
+
 announcement: NEWS ChangeLog $(rel-files)
-       @$(announce_gen)                                                \
+       @$(build_aux)/announce_gen                                      \
            --release-type=$(RELEASE_TYPE)                              \
            --package=$(PACKAGE)                                        \
            --prev=$(PREV_VERSION)                                      \
            --curr=$(VERSION)                                           \
            --gpg-key-id=$(gpg_key_ID)                                  \
            --news=$(srcdir)/NEWS                                       \
-           --bootstrap-tools=automake                                  \
+           --bootstrap-tools=$(bootstrap-tools)                        \
+           --gnulib-version=$(gnulib-version)                          \
+           --no-print-checksums                                        \
            $(addprefix --url-dir=, $(url_dir_list))
 
 ## ---------------- ##