diff options
author | Mark Pulford <mark@kyne.com.au> | 2011-12-15 12:34:55 +0400 |
---|---|---|
committer | Mark Pulford <mark@kyne.com.au> | 2011-12-15 12:34:55 +0400 |
commit | 1d8eba4368aa53ad5e534b68873d24b3ee69cc51 (patch) | |
tree | b89337163d96a0f48e0eda487ef36aa48e1cc1cd /build-packages.sh | |
parent | 353784724505b23539aa693bd2aed3932493ed62 (diff) |
Automate package releases with build-packages.sh
build-packages.sh has several advantages:
- Automatically bumps version numbers
- Builds HTML documentation on the fly
Diffstat (limited to 'build-packages.sh')
-rwxr-xr-x | build-packages.sh | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/build-packages.sh b/build-packages.sh new file mode 100755 index 0000000..858ad0d --- /dev/null +++ b/build-packages.sh @@ -0,0 +1,46 @@ +#!/bin/sh + +# build-packages.sh [ VERSION [ BRANCH ] ] + +# No args: Build current 1.0devel packages +# 1 args: Build release package for VERSION (>= 1.0.5) +# 2 args: Build release package for VERSION from BRANCH + +# Files requiring a version bump +VERSION_FILES="lua-cjson-1.0devel-1.rockspec lua-cjson.spec lua_cjson.c manual.txt runtests.sh" + +if [ "$1" ] +then + VERSION="$1" + BRANCH="cjson-$VERSION" + VER_BUMP=1 +else + VERSION=1.0devel + BRANCH=master +fi + +[ "$2" ] && BRANCH="$2" + +PREFIX="lua-cjson-$VERSION" + +set -x +set -e + +DESTDIR="`pwd`/packages" +mkdir -p "$DESTDIR" +BUILDROOT="`mktemp -d`" +trap "rm -rf '$BUILDROOT'" 0 + +git archive --prefix="$PREFIX/" "$BRANCH" | tar xf - -C "$BUILDROOT" +cd "$BUILDROOT" + +if [ "$VER_BUMP" ]; then + ( cd "$PREFIX" + rename 1.0devel "$VERSION" $VERSION_FILES + perl -pi -e "s/\\b1.0devel\\b/$VERSION/g" ${VERSION_FILES/1.0devel/$VERSION}; ) +fi +make -C "$PREFIX" doc +tar cf - "$PREFIX" | gzip -9 > "$DESTDIR/$PREFIX.tar.gz" +zip -9rq "$DESTDIR/$PREFIX.zip" "$PREFIX" + +# vi:ai et sw=4 ts=4: |