aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2020-12-11 20:34:07 +0100
committerGuilhem Moulin <guilhem@fripost.org>2020-12-11 20:51:12 +0100
commit765a8c2f7cac073b3b70277160639f8df3acb8ef (patch)
tree6efe6ae7a4564296ab41830f04a17df6e932ab3d /Makefile
parent9c192cc8946800535be678644314ec38f6e48ec7 (diff)
`make release`: also bump libinterimap version and pin it in 'use' declarations.
Also, make use the tag doesn't exist, and fail early if we can't detect the version.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile13
1 files changed, 9 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index ff62bf1..9f4702d 100644
--- a/Makefile
+++ b/Makefile
@@ -20,16 +20,21 @@ test:
./tests/run-all
release:
- @if ! git diff HEAD --quiet -- ./interimap ./pullimap ./Changelog; then \
+ @if ! git diff HEAD --quiet -- ./Changelog ./interimap ./pullimap ./lib/Net/IMAP/InterIMAP.pm; then \
echo "Dirty state, refusing to release!" >&2; \
exit 1; \
fi
- sed -ri "0,/^( -- .*) .*/ s//\1 $(shell date -R)/" ./Changelog
VERS=$$(dpkg-parsechangelog -l Changelog -SVersion 2>/dev/null) && \
- sed -ri "0,/^(our \\\$$VERSION\\s*=\s*)'[0-9.]+'\\s*;/ s//\1'$$VERS';/" \
+ if git rev-parse -q --verify "refs/tags/v$$VERS" >/dev/null; then echo "tag exists" 2>/dev/null; exit 1; fi && \
+ sed -ri "0,/^( -- .*) .*/ s//\\1 $(shell date -R)/" ./Changelog && \
+ sed -ri "0,/^(our\\s+\\\$$VERSION\\s*=\\s*)'[0-9.]+'\\s*;/ s//\\1'$$VERS';/" \
+ -- ./interimap ./pullimap && \
+ sed -ri "0,/^(package\\s+Net::IMAP::InterIMAP\\s+)v[0-9.]+\\s*;/ s//\\1v$$VERS;/" \
+ -- ./lib/Net/IMAP/InterIMAP.pm && \
+ sed -ri "0,/^(use\\s+Net::IMAP::InterIMAP\\s+)[0-9.]+(\\s|\\$$)/ s//\\1$$VERS\\2/" \
-- ./interimap ./pullimap && \
git commit -m "Prepare new release v$$VERS." \
- -- ./interimap ./pullimap ./Changelog && \
+ -- ./Changelog ./interimap ./pullimap ./lib/Net/IMAP/InterIMAP.pm && \
git tag -sm "Release version $$VERS" "v$$VERS"
## make html CSS="https://guilhem.org/static/css/bootstrap.min.css" BUILD_DOCDIR="$XDG_RUNTIME_DIR/Downloads"