summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--TODO-RELEASE4
-rwxr-xr-xosmo-release.sh28
2 files changed, 13 insertions, 19 deletions
diff --git a/TODO-RELEASE b/TODO-RELEASE
index 16496d68..146ab333 100644
--- a/TODO-RELEASE
+++ b/TODO-RELEASE
@@ -1,6 +1,6 @@
# When cleaning up this file: bump API version in corresponding Makefile.am and rename corresponding debian/lib*.install
-# according to https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html#Updating-version-info
-# In short:
+# according to https://osmocom.org/projects/cellular-infrastructure/wiki/Make_a_new_release
+# In short: https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html#Updating-version-info
# LIBVERSION=c:r:a
# If the library source code has changed at all since the last update, then increment revision: c:r + 1:a.
# If any interfaces have been added, removed, or changed since the last update: c + 1:0:0.
diff --git a/osmo-release.sh b/osmo-release.sh
index 0e850235..3b50ded8 100755
--- a/osmo-release.sh
+++ b/osmo-release.sh
@@ -11,7 +11,7 @@ BUMPVER=`command -v bumpversion`
NEW_VER=`bumpversion --list --current-version $VERSION $REL --allow-dirty | awk -F '=' '{ print $2 }'`
LIBVERS=`git grep -n LIBVERSION | grep '=' | grep am | grep -v LDFLAGS`
-MAKEMOD=`git diff -GLIBVERSION --stat | grep Makefile.am`
+MAKEMOD=`git diff --cached -GLIBVERSION --stat | grep Makefile.am`
ISODATE=`date -I`
if [ "z$BUMPVER" = "z" ]; then
@@ -26,28 +26,22 @@ fi
echo "Releasing $VERSION -> $NEW_VER..."
-if [ "z$LIBVERS" = "z" ]; then
- gbp dch --debian-tag='%(version)s' --auto --meta --git-author --multimaint-merge --ignore-branch --new-version="$NEW_VER"
-else
- echo "You should NOT be doing this unless you've read and understood following article:"
- echo "https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html#Updating-version-info"
- grep -v '#' TODO-RELEASE | sed 's/\t\+/: /g' > TODO-RELEASE.entries
- if [ "$(wc -l <TODO-RELEASE.entries 2>/dev/null)" -eq "0" ]; then
- rm TODO-RELEASE.entries
- echo "TODO-RELEASE must contain at least one line with change descriptions"
- exit 1
- fi
- grep '#' TODO-RELEASE > TODO-RELEASE.clean
- mv TODO-RELEASE.clean TODO-RELEASE
+if [ "z$LIBVERS" != "z" ]; then
if [ "z$MAKEMOD" = "z" ]; then
echo "Before releasing, please modify some of the libversions: $LIBVERS"
+ echo "You should NOT be doing this unless you've read and understood following article:"
+ echo "https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html#Updating-version-info"
exit 1
fi
- xargs -a TODO-RELEASE.entries -r -d'\n' -I entry dch -m -v $NEW_VER "entry"
- rm TODO-RELEASE.entries
+ if [ -f "TODO-RELEASE" ]; then
+ grep '#' TODO-RELEASE > TODO-RELEASE.clean
+ mv TODO-RELEASE.clean TODO-RELEASE
+ git add TODO-RELEASE
+ fi
fi
+gbp dch --debian-tag='%(version)s' --auto --meta --git-author --multimaint-merge --ignore-branch --new-version="$NEW_VER"
dch -r -m --distribution "unstable" ""
-git add -u
+git add debian/changelog
bumpversion --current-version $VERSION $REL --tag --commit --tag-name $NEW_VER --allow-dirty
git tag -s $NEW_VER -f -m "Release v$NEW_VER on $ISODATE."
echo "Release $NEW_VER prepared, tagged and signed."