#!/bin/bash

# arm/build
# Check package dependencies, set metadata and launch
# package build script.
# by Stuart Winter <stuart@armedslack.org>
#
source /usr/share/slackdev/buildkit.sh

# Package metadata:
export PACKAGE=php
export VERSION=4.4.4
export ARCH=arm
export BUILD=2
export PKGSERIES=n
export SLACKPACKAGE=$PACKAGE-$VERSION-$ARCH-$BUILD.tgz

# Reset the ARM file system: restore it to the 'factory settings'
# as it were (this has no effect when building natively):
sboxsysrestore

# Ensure base ARM packages are installed first:
slackbasedeps

# Ensure $PACKAGE isn't already installed:
slackfailpkgdeps $PACKAGE || removepkg $PACKAGE

# Ensure specific build dependencies (mainly libraries):
# ncurses is used for PINE (and we build PINE from PHP in order to use
# its IMAP library):
slackcheckpkgdeps bzip2           || installpkg $PKGSTORE/a/bzip2-*.tgz
slackcheckpkgdeps mysql           || installpkg $PKGSTORE/ap/mysql-*.tgz
slackcheckpkgdeps db42            || installpkg $PKGSTORE/l/db42-*.tgz
slackcheckpkgdeps expat           || installpkg $PKGSTORE/l/expat-*.tgz
slackcheckpkgdeps freetype        || installpkg $PKGSTORE/l/freetype-*.tgz
slackcheckpkgdeps gdbm            || installpkg $PKGSTORE/l/gdbm-*.tgz
slackcheckpkgdeps gmp             || installpkg $PKGSTORE/l/gmp-*.tgz
slackcheckpkgdeps libidn          || installpkg $PKGSTORE/l/libidn-*.tgz
slackcheckpkgdeps libjpeg         || installpkg $PKGSTORE/l/libjpeg-*.tgz
slackcheckpkgdeps libpng          || installpkg $PKGSTORE/l/libpng-*.tgz
slackcheckpkgdeps libxml2         || installpkg $PKGSTORE/l/libxml2-*.tgz
slackcheckpkgdeps mhash           || installpkg $PKGSTORE/l/mhash-*.tgz
slackcheckpkgdeps pcre            || installpkg $PKGSTORE/l/pcre-*.tgz
slackcheckpkgdeps apache          || installpkg $PKGSTORE/n/apache-*.tgz
slackcheckpkgdeps curl            || installpkg $PKGSTORE/n/curl-*.tgz
slackcheckpkgdeps cyrus-sasl      || installpkg $PKGSTORE/n/cyrus-sasl-*.tgz
slackcheckpkgdeps openldap-client || installpkg $PKGSTORE/n/openldap-client-*.tgz
slackcheckpkgdeps openssl         || installpkg $PKGSTORE/n/openssl-*.tgz
slackcheckpkgdeps bzip2,mysql,db42,expat,freetype,gdbm,gmp,libidn,libjpeg,libpng,libxml2,mhash,pcre,apache,curl,cyrus-sasl,openldap-client,openssl || exit 99

# Launch the package build script:
( ./$PACKAGE.SlackBuild ) >& /dev/stdout | tee build.$ARCH.log

# Compress the build log:
bzip2 -9f build.$ARCH.log
