#!/bin/bash # arm/build # Check package dependencies, set metadata and launch # package build script. # by Stuart Winter # source /usr/share/slackdev/buildkit.sh # Package metadata: export PKGNAM=php export VERSION=${VERSION:-5.4.40} export PKGARCH=${PKGARCH:-arm} export PKGSERIES=${PKGSERIES:-n} export BUILD=${BUILD:-1_slack14.0} export SLACKPACKAGE=$PKGNAM-$VERSION-$PKGARCH-$BUILD.txz # Reset the ARM file system: restore it to the 'factory settings' # as it were (this has no effect when building natively): sboxsysrestore ## ******************************************************************* ## # For test packages - best to store in another location rather than # overwriting the working copy in the main tree: export PKGSTORE=/tmp/ mkdir -vpm755 $PKGSTORE/$PKGSERIES ## ******************************************************************* ## # Ensure base ARM packages are installed first: slackbasedeps # Ensure $PKGNAM isn't already installed: slackfailpkgdeps $PKGNAM || removepkg $PKGNAM # 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-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps xz || installpkg $PKGSTORE/a/xz-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps sqlite || installpkg $PKGSTORE/ap/sqlite-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libtool || installpkg $PKGSTORE/d/libtool-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps aspell || installpkg $PKGSTORE/l/aspell-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps db44 || installpkg $PKGSTORE/l/db44-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps enchant || installpkg $PKGSTORE/l/enchant-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps freetype || installpkg $PKGSTORE/l/freetype-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps gdbm || installpkg $PKGSTORE/l/gdbm-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps gmp || installpkg $PKGSTORE/l/gmp-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libjpeg || installpkg $PKGSTORE/l/libjpeg-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libmcrypt || installpkg $PKGSTORE/l/libmcrypt-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libpng || installpkg $PKGSTORE/l/libpng-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libxml2 || installpkg $PKGSTORE/l/libxml2-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libxslt || installpkg $PKGSTORE/l/libxslt-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps pcre || installpkg $PKGSTORE/l/pcre-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps t1lib || installpkg $PKGSTORE/l/t1lib-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps curl || installpkg $PKGSTORE/n/curl-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps net-snmp || installpkg $PKGSTORE/n/net-snmp-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps openldap-client || installpkg $PKGSTORE/n/openldap-client-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libX11 || installpkg $PKGSTORE/x/libX11-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libXpm || installpkg $PKGSTORE/x/libXpm-[0-9]*.t?z || exit 99; } # # We need Apache to be installed since we're building the Apache module: { slackcheckpkgdeps httpd || installpkg $PKGSTORE/n/httpd-[0-9]*.t?z || exit 99; } # Launch the package build script: BUILDLOG=$( basename $SLACKPACKAGE .t?z ).build.log ( ./$PKGNAM.SlackBuild ) >& /dev/stdout | tee $BUILDLOG # Compress the build log: bzip2 -9fvz $BUILDLOG