Help: Use stable 'if' namespace instead of experimental
[nijm-empathy.git] / tools / telepathy.am
blob20ff0be1393a1205ae59b09bef6de327372bfdae
1 ## Useful top-level Makefile.am snippets for Telepathy projects.
3 dist-hook:
4         chmod u+w ${distdir}/ChangeLog
5         if test -d ${top_srcdir}/.git; then \
6                 ( cd ${top_srcdir} && git log --date=iso $(CHANGELOG_RANGE) ) > ${distdir}/ChangeLog; \
7         fi
9 distcheck-hook:
10         @test "z$(CHECK_FOR_UNRELEASED)" = z || \
11         case @VERSION@ in \
12                 *.*.*.*|*+) ;; \
13                 *) \
14                         if grep -r UNRELEASED $(CHECK_FOR_UNRELEASED); \
15                         then \
16                                 echo "^^^ This is meant to be a release, but some files say UNRELEASED" >&2; \
17                                 exit 2; \
18                         fi \
19                         ;; \
20         esac
22 _is-release-check:
23         @case @VERSION@ in \
24                 (*.*.*.*|*+) \
25                         echo "Hey! @VERSION@ is not a release!" >&2; \
26                         exit 2; \
27                         ;; \
28         esac
29         @cd ${top_srcdir} && \
30         if ! git diff --no-ext-diff --quiet --exit-code; then \
31                 echo "Hey! Your tree is dirty! No release for you." >&2; \
32                 exit 2; \
33         fi
34         @cd ${top_srcdir} && \
35         if ! git diff --cached --no-ext-diff --quiet --exit-code; then \
36                 echo "Hey! You have changes staged! No release for you." >&2; \
37                 exit 2; \
38         fi
39 if ENABLE_GTK_DOC
40 else
41         @echo "Hey! You need to pass --enable-gtk-doc to configure!"
42         @exit 2;
43 endif
45 %.tar.gz.asc: %.tar.gz
46         $(AM_V_GEN)gpg --detach-sign --armor $@
48 @PACKAGE@-@VERSION@.tar.gz:
49         $(MAKE) _is-release-check
50         $(MAKE) check
51         $(MAKE) distcheck
53 maintainer-prepare-release:
54         $(MAKE) _is-release-check
55         $(MAKE) all
56         $(MAKE) distcheck
57         $(MAKE) release-mail
58         git tag -s @PACKAGE@-@VERSION@ -m @PACKAGE@' '@VERSION@
59         gpg --detach-sign --armor @PACKAGE@-@VERSION@.tar.gz
61 release-mail: NEWS
62         $(AM_V_GEN)(python $(top_srcdir)/tools/make-release-mail.py \
63                 @PACKAGE@ @VERSION@ $(top_srcdir)/NEWS > $@.tmp && \
64                 mv $@.tmp $@)
66 maintainer-upload-release: _maintainer-upload-release
68 _maintainer-upload-release-check: _is-release-check
69         test -f @PACKAGE@-@VERSION@.tar.gz
70         test -f @PACKAGE@-@VERSION@.tar.gz.asc
71         gpg --verify @PACKAGE@-@VERSION@.tar.gz.asc
73 _maintainer-upload-release: _maintainer-upload-release-check
74         rsync -vzP @PACKAGE@-@VERSION@.tar.gz telepathy.freedesktop.org:/srv/telepathy.freedesktop.org/www/releases/@PACKAGE@/@PACKAGE@-@VERSION@.tar.gz
75         rsync -vzP @PACKAGE@-@VERSION@.tar.gz.asc telepathy.freedesktop.org:/srv/telepathy.freedesktop.org/www/releases/@PACKAGE@/@PACKAGE@-@VERSION@.tar.gz.asc
77 maintainer-make-release:
78         $(MAKE) maintainer-prepare-release
79         $(MAKE) maintainer-upload-release
80         @echo "Now:"
81         @echo " • bump the nano-version;"
82         @echo " • push the branch and tags upstream; and"
83         @echo " • send release-mail to <telepathy@lists.freedesktop.org>."
85 ## vim:set ft=automake: