#!/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=php8 #export VERSION=${VERSION:-8.0.3} #export PKGSERIES=${PKGSERIES:-../extra} export PKGNAM=php export VERSION=${VERSION:-8.3.15} export BUILD=1 slack_var_pkgseries # If building in /patches for a Stable Release, we drop the packages into /tmp/patches/ slack_findpkgstore_is_stablerelease && { export PKGSTORE=$PORTPATCHPKGS export PKGSERIES=/ # unset as it's not required for patches export BUILD=1_slack15.0 mkdir -vpm755 $PKGSTORE/$PKGSERIES ;} # Set package name: export SLACKPACKAGE=$PKGNAM-$VERSION-$PKGARCH-$BUILD.txz # 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): # # 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; } # { slackcheckpkgdeps bzip2 || installpkg $PKGSTORE/a/bzip2-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps e2fsprogs || installpkg $PKGSTORE/a/e2fsprogs-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps sqlite || installpkg $PKGSTORE/ap/sqlite-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps argon2 || installpkg $PKGSTORE/l/argon2-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps aspell || installpkg $PKGSTORE/l/aspell-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps db48 || installpkg $PKGSTORE/l/db48-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps enchant || installpkg $PKGSTORE/l/enchant-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps expat || installpkg $PKGSTORE/l/expat-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps gd || installpkg $PKGSTORE/l/gd-[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 icu4c || installpkg $PKGSTORE/l/icu4c-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libedit || installpkg $PKGSTORE/l/libedit-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libiodbc || installpkg $PKGSTORE/l/libiodbc-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libnl3 || installpkg $PKGSTORE/l/libnl3-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps libsodium || installpkg $PKGSTORE/l/libsodium-[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 libzip || installpkg $PKGSTORE/l/libzip-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps ncurses || installpkg $PKGSTORE/l/ncurses-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps oniguruma || installpkg $PKGSTORE/l/oniguruma-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps pcre2 || installpkg $PKGSTORE/l/pcre2-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps curl || installpkg $PKGSTORE/n/curl-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps krb5 || installpkg $PKGSTORE/n/krb5-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps net-snmp || installpkg $PKGSTORE/n/net-snmp-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps openldap || installpkg $PKGSTORE/n/openldap-[0-9]*.t?z || exit 99; } { slackcheckpkgdeps openssl || installpkg $PKGSTORE/n/openssl-[0-9]*.t?z || exit 99; } # Launch the package build script: BUILDLOG=$SLKPORTARCH-$( basename $SLACKPACKAGE .t?z ).build.log ( ./$PKGNAM.SlackBuild ) >& /dev/stdout | tee $BUILDLOG # Compress the build log: bzip2 -9fvz $BUILDLOG