summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'mkrelease.sh')
-rwxr-xr-xmkrelease.sh16
1 files changed, 14 insertions, 2 deletions
diff --git a/mkrelease.sh b/mkrelease.sh
index cb1ffc55..b0be479a 100755
--- a/mkrelease.sh
+++ b/mkrelease.sh
@@ -5,6 +5,10 @@ SOURCE_DIR=${RELEASE_BUILDDIR}/checkout
BRANCH=${BRANCH:-trunk}
REPOSITORY=svn+ssh://cvs.gentoo.org/var/svnroot/portage/main
SVN_LOCATION=${REPOSITORY}/${BRANCH}
+CHANGELOG_REVISION=""
+CREATE_TAG=
+CHANGELOG_REVISION=
+UPLOAD_LOCATION=
die() {
echo $@
@@ -12,7 +16,8 @@ die() {
exit 1
}
-ARGS=$(getopt -o tu: --long anon,tag,upload: -n $(basename $0) -- "$@")
+ARGS=$(getopt -o tu: --long anon,changelog-rev:,tag,upload: \
+ -n ${0##*/} -- "$@")
[ $? != 0 ] && die "initialization error"
eval set -- "${ARGS}"
@@ -24,6 +29,10 @@ while true; do
SVN_LOCATION=${REPOSITORY}/${BRANCH}
shift
;;
+ --changelog-rev)
+ CHANGELOG_REVISION=$2
+ shift 2
+ ;;
-t|--tag)
CREATE_TAG=true
shift
@@ -58,7 +67,10 @@ echo ">>> Starting Subversion export"
svn export "${SVN_LOCATION}" "${SOURCE_DIR}" > /dev/null || die "svn export failed"
echo ">>> Creating Changelog"
-svn2cl -o "${SOURCE_DIR}/ChangeLog" "${SVN_LOCATION}" || die "ChangeLog creation failed"
+svn2cl_opts="-i --reparagraph"
+[ -n $CHANGELOG_REVISION ] && svn2cl_opts+=" -r HEAD:$CHANGELOG_REVISION"
+svn2cl $svn2cl_opts -o "${SOURCE_DIR}/ChangeLog" "${SVN_LOCATION}" \
+ || die "ChangeLog creation failed"
echo ">>> Building release tree"
cp -a "${SOURCE_DIR}/"{bin,cnf,doc,man,pym,src} "${RELEASE_DIR}/" || die "directory copy failed"