maint.mk: allow a project to override release-prep commands
authorAlfred M. Szmidt <ams@gnu.org>
Sun, 13 Dec 2009 14:11:14 +0000 (15:11 +0100)
committerJim Meyering <meyering@redhat.com>
Sun, 13 Dec 2009 14:59:23 +0000 (15:59 +0100)
* top/maint.mk (alpha, beta, stable): Move release-preparatory
commands into a new rule.
(release-prep): New rule.
(release-prep-hook): New overridable variable.

ChangeLog
top/maint.mk

index 13b22ff..91fd096 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2009-12-05  Alfred M. Szmidt  <ams@gnu.org>
+
+       maint.mk: allow a project to override release-prep commands
+       * top/maint.mk (alpha, beta, stable): Move release-preparatory
+       commands into a new rule.
+       (release-prep): New rule.
+       (release-prep-hook): New overridable variable.
+
 2009-12-13  Bruno Haible  <bruno@clisp.org>
 
        * lib/localcharset.c (locale_charset): Fix comment about use of GetACP.
index f0fdee4..be061a6 100644 (file)
@@ -750,12 +750,21 @@ alpha beta stable: $(local-check) writable-files no-submodule-changes
        $(MAKE) news-check
        $(MAKE) distcheck
        $(MAKE) dist XZ_OPT=-9ev
-       $(MAKE) -s announcement RELEASE_TYPE=$@ > /tmp/announce-$(my_distdir)
+       $(MAKE) $(release-prep-hook) RELEASE_TYPE=$@
+       $(MAKE) -s emit_upload_commands RELEASE_TYPE=$@
+
+# Override this in cfg.mk if you follow different procedures.
+release-prep-hook ?= release-prep
+
+.PHONY: release-prep
+release-prep:
+       case $$RELEASE_TYPE in alpha|beta|stable) ;; \
+         *) echo "invalid RELEASE_TYPE: $$RELEASE_TYPE" 1>&2; exit 1;; esac
+       $(MAKE) -s announcement > /tmp/announce-$(my_distdir)
        if test -d $(release_archive_dir); then                 \
          ln $(rel-files) $(release_archive_dir);               \
          chmod a-w $(rel-files);                               \
        fi
-       $(MAKE) -s emit_upload_commands RELEASE_TYPE=$@
        echo $(VERSION) > $(prev_version_file)
        $(MAKE) update-NEWS-hash
        perl -pi -e '$$. == 3 and print "$(noteworthy)\n\n\n"' NEWS