diff options
author | Mark Pulford <mark@kyne.com.au> | 2011-12-15 19:04:55 +1030 |
---|---|---|
committer | Mark Pulford <mark@kyne.com.au> | 2011-12-15 19:04:55 +1030 |
commit | 1d8eba4368aa53ad5e534b68873d24b3ee69cc51 (patch) | |
tree | b89337163d96a0f48e0eda487ef36aa48e1cc1cd /build-packages.sh | |
parent | 353784724505b23539aa693bd2aed3932493ed62 (diff) | |
download | lua-cjson-1d8eba4368aa53ad5e534b68873d24b3ee69cc51.tar.gz lua-cjson-1d8eba4368aa53ad5e534b68873d24b3ee69cc51.tar.bz2 lua-cjson-1d8eba4368aa53ad5e534b68873d24b3ee69cc51.zip |
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 @@ | |||
1 | #!/bin/sh | ||
2 | |||
3 | # build-packages.sh [ VERSION [ BRANCH ] ] | ||
4 | |||
5 | # No args: Build current 1.0devel packages | ||
6 | # 1 args: Build release package for VERSION (>= 1.0.5) | ||
7 | # 2 args: Build release package for VERSION from BRANCH | ||
8 | |||
9 | # Files requiring a version bump | ||
10 | VERSION_FILES="lua-cjson-1.0devel-1.rockspec lua-cjson.spec lua_cjson.c manual.txt runtests.sh" | ||
11 | |||
12 | if [ "$1" ] | ||
13 | then | ||
14 | VERSION="$1" | ||
15 | BRANCH="cjson-$VERSION" | ||
16 | VER_BUMP=1 | ||
17 | else | ||
18 | VERSION=1.0devel | ||
19 | BRANCH=master | ||
20 | fi | ||
21 | |||
22 | [ "$2" ] && BRANCH="$2" | ||
23 | |||
24 | PREFIX="lua-cjson-$VERSION" | ||
25 | |||
26 | set -x | ||
27 | set -e | ||
28 | |||
29 | DESTDIR="`pwd`/packages" | ||
30 | mkdir -p "$DESTDIR" | ||
31 | BUILDROOT="`mktemp -d`" | ||
32 | trap "rm -rf '$BUILDROOT'" 0 | ||
33 | |||
34 | git archive --prefix="$PREFIX/" "$BRANCH" | tar xf - -C "$BUILDROOT" | ||
35 | cd "$BUILDROOT" | ||
36 | |||
37 | if [ "$VER_BUMP" ]; then | ||
38 | ( cd "$PREFIX" | ||
39 | rename 1.0devel "$VERSION" $VERSION_FILES | ||
40 | perl -pi -e "s/\\b1.0devel\\b/$VERSION/g" ${VERSION_FILES/1.0devel/$VERSION}; ) | ||
41 | fi | ||
42 | make -C "$PREFIX" doc | ||
43 | tar cf - "$PREFIX" | gzip -9 > "$DESTDIR/$PREFIX.tar.gz" | ||
44 | zip -9rq "$DESTDIR/$PREFIX.zip" "$PREFIX" | ||
45 | |||
46 | # vi:ai et sw=4 ts=4: | ||