+: ${TERMUX_ANDROID_BUILD_TOOLS_VERSION:="23.0.3"}
+: ${TERMUX_NDK_VERSION:="11"}
+
+# Handle command-line arguments:
+show_usage () {
+ echo "Usage: ./build-package.sh [-a ARCH] PACKAGE"
+ echo "Build a package."
+ echo ""
+ exit 1
+}
+while getopts :a:h option
+do
+ case "$option" in
+ a) TERMUX_ARCH="$OPTARG";;
+ h) show_usage;;
+ ?) echo "./build-package.sh: illegal option -$OPTARG"; exit 1;;
+ esac
+done
+shift $(($OPTIND-1))
+if [ "$#" -ne 1 ]; then show_usage; fi
+
+# Check the NDK:
+if [ ! -d "$NDK" ]; then
+ echo 'ERROR: $NDK not defined as pointing at a directory - define it pointing at a android NDK installation!'
+ exit 1
+fi
+if grep -s -q "Pkg.Revision = $TERMUX_NDK_VERSION" $NDK/source.properties; then
+ :
+else
+ echo "Wrong NDK version - we need $TERMUX_NDK_VERSION"
+ exit 1
+fi
+
+# Compute standalone toolchain dir, bitness of arch and name of host platform:
+TERMUX_STANDALONE_TOOLCHAIN="$TERMUX_TOPDIR/_lib/android-standalone-toolchain-${TERMUX_ARCH}-api${TERMUX_API_LEVEL}-"
+if [ "$TERMUX_CLANG" = "" ]; then
+ TERMUX_STANDALONE_TOOLCHAIN+="gcc4.9"
+else
+ TERMUX_STANDALONE_TOOLCHAIN+="clang38"
+fi
+if [ "x86_64" = $TERMUX_ARCH -o "aarch64" = $TERMUX_ARCH ]; then
+ TERMUX_ARCH_BITS=64
+else
+ TERMUX_ARCH_BITS=32
+fi
+TERMUX_HOST_PLATFORM="${TERMUX_ARCH}-linux-android"
+if [ $TERMUX_ARCH = "arm" ]; then TERMUX_HOST_PLATFORM="${TERMUX_HOST_PLATFORM}eabi"; fi
+
+# Check the package to build:
+TERMUX_PKG_NAME=`basename $1`
+export TERMUX_SCRIPTDIR=`cd $(dirname $0); pwd`
+if [[ $1 == *"/"* ]]; then
+ # Path to directory which may be outside this repo:
+ if [ ! -d $1 ]; then echo "ERROR: '$1' seems to be a path but is not a directory"; exit 1; fi
+ export TERMUX_PKG_BUILDER_DIR=`realpath $1`
+else
+ # Package name:
+ export TERMUX_PKG_BUILDER_DIR=$TERMUX_SCRIPTDIR/packages/$TERMUX_PKG_NAME
+fi
+TERMUX_PKG_BUILDER_SCRIPT=$TERMUX_PKG_BUILDER_DIR/build.sh
+if test ! -f $TERMUX_PKG_BUILDER_SCRIPT; then
+ echo "ERROR: No build.sh script at supposed package dir $TERMUX_PKG_BUILDER_DIR!"
+ exit 1
+fi
+
+# Handle 'all' arch:
+if [ $TERMUX_ARCH = 'all' ]; then
+ for arch in 'arm' 'i686' 'aarch64'; do
+ ./build-package.sh -a $arch $1
+ done
+ exit
+fi
+
+echo "termux - building $1 for arch $TERMUX_ARCH..."
+test -t 1 && printf "\033]0;$1...\007"
+