diff options
author | David 'Digit' Turner <digit@google.com> | 2009-05-07 21:58:22 +0200 |
---|---|---|
committer | David 'Digit' Turner <digit@google.com> | 2009-05-07 21:58:22 +0200 |
commit | c8906b0ac264f8a5f07849c760b4d9fc60789c94 (patch) | |
tree | 90c7b683befaf73c48528a2eaa1d929b4ac5646e /build/tools | |
parent | 88ac246e9be90699ab2580c59ec825822c161608 (diff) | |
download | ndk-c8906b0ac264f8a5f07849c760b4d9fc60789c94.tar.gz |
Add a release packaging script
Diffstat (limited to 'build/tools')
-rwxr-xr-x | build/tools/make-release.sh | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/build/tools/make-release.sh b/build/tools/make-release.sh new file mode 100755 index 000000000..27753638f --- /dev/null +++ b/build/tools/make-release.sh @@ -0,0 +1,76 @@ +#!/bin/sh +# +# This script is used to build complete Android NDK release packages +# from the git repository and a set of prebuilt cross-toolchain tarballs +# + +# location of the root ndk directory. we assume this script is under build/tools +NDK_ROOT_DIR=`dirname $0`/../.. +NDK_ROOT_DIR=`cd $NDK_ROOT_DIR && pwd` + +# the release name +RELEASE=1.5_r1 + +# the directory containing the prebuilt toolchain tarballs +PREBUILT_DIR=/home/digit/android/ndk + +# the prefix of prebuilt toolchain tarballs in $PREBUILT_DIR +PREBUILT_PREFIX=android-ndk-prebuilt-20090323 + +# the list of supported host development systems +PREBUILT_SYSTEMS="linux-x86 linux-x86_64 darwin-x86 windows" + +# the list of git files to copy into the archives +GIT_FILES=`cd $NDK_ROOT_DIR && git-ls-files` + +# temporary directory used for packaging +TMPDIR=/tmp/ndk-release + +RELEASE_PREFIX=android-ndk-$RELEASE + +rm -rf $TMPDIR && mkdir -p $TMPDIR + +# first create the reference ndk directory from the git reference +echo "Creating reference from git files" +REFERENCE=$TMPDIR/reference && +mkdir -p $REFERENCE && +for ff in $GIT_FILES; do install -pD $ff $REFERENCE/$ff; done && +rm -f $REFERENCE/Android.mk +if [ $? != 0 ] ; then + echo "Could not create git reference. Aborting." + exit 2 +fi + +# now, for each system, create a preview package +# +for SYSTEM in $PREBUILT_SYSTEMS; do + echo "Preparing package for system $SYSTEM." + BIN_RELEASE=$RELEASE_PREFIX-$SYSTEM + PREBUILT=$PREBUILT_DIR/$PREBUILT_PREFIX-$SYSTEM + DSTDIR=$TMPDIR/$RELEASE_PREFIX + rm -rf $DSTDIR && mkdir -p $DSTDIR && + cp -rp $REFERENCE/* $DSTDIR + if [ $? != 0 ] ; then + echo "Could not copy reference. Aborting." + exit 2 + fi + echo "Unpacking $PREBUILT.tar.bz2" + (cd $DSTDIR && tar xjf $PREBUILT.tar.bz2) + if [ $? != 0 ] ; then + echo "Could not unpack prebuilt for system $SYSTEM. Aborting." + exit 1 + fi + echo "Creating $BIN_RELEASE.tar.bz2" + (cd $TMPDIR && tar cjf $BIN_RELEASE.tar.bz2 $RELEASE_PREFIX && rm -rf $DSTDIR) + if [ $? != 0 ] ; then + echo "Could not create archive. Aborting." + exit 1 + fi +done + +echo "Cleaning up." +rm -rf $TMPDIR/reference + +echo "Done, please see packages in $TMPDIR:" +ls -l $TMPDIR + |