# Maintainer: Erich Eckner # Contributor: Sébastien Luttringer # Contributor: Gaetan Bisson # Contributor: judd # Contributor: Mario Vazquez _pkgver=9.16.16 pkgname=bind-next _pkgnam=${pkgname%-*} pkgver=${_pkgver//-/.} pkgrel=24 pkgdesc='A complete, highly portable implementation of the DNS protocol' url='https://www.isc.org/software/bind/' license=('MPL2') arch=('i486' 'i686' 'pentium4' 'x86_64') options=('!emptydirs') provides=($_pkgname=$pkgver) conflicts=($_pkgname) makedepends=('libcap' 'libxml2' 'zlib' 'krb5' 'e2fsprogs' 'openssl' 'readline' 'libidn2' 'dnssec-anchors' 'python' 'json-c' 'python-ply' 'lmdb' 'zlib' 'icu' 'xz' 'libmaxminddb' 'libnsl' 'libuv' 'python-sphinx') _pinned_dependencies_i486=( 'gcc-libs=12.2.0' ) _pinned_dependencies=( 'glibc>=2.33' 'libcap.so=2' 'libcom_err.so=2' 'libedit.so=0' 'libgssapi_krb5.so=2' 'libidn2.so=0' 'libjson-c.so=5' 'libk5crypto.so=3' 'libkrb5.so=3' 'libmaxminddb=1.7.1' 'libuv=1.44.2' 'libxml2.so=2' 'lmdb=0.9.29' 'openssl=1.1.1.q' 'zlib=1:1.2.13' ) depends_i486=("${_pinned_dependencies_i486[@]}") depends=('bash' 'dnssec-anchors' 'e2fsprogs' 'glibc' 'icu' 'libedit' 'json-c' 'krb5' 'libcap' 'libidn2' 'libmaxminddb' 'libnsl' 'libuv' 'libxml2' 'lmdb' 'openssl' 'python' 'python-ply' 'readline' 'xz' 'zlib' "${_pinned_dependencies[@]}") conflicts=('bind-tools' 'dnsutils') replaces=('bind-tools' 'dnsutils' 'host') provides=('bind-tools' 'dnsutils' 'dns-server') backup=('etc/named.conf' 'var/named/127.0.0.zone' 'var/named/localhost.zone' 'var/named/localhost.ip6.zone') install=bind.install source=("https://users.isc.org/~ondrej/bind-${_pkgver%.*}.$((${_pkgver##*.}+1))-pre.tar.xz" 'tmpfiles.conf' 'sysusers.conf' 'named.conf' 'named.service' 'localhost.zone' 'localhost.ip6.zone' '127.0.0.zone') sha256sums=('8d8b83c92788650bde2d6b7198660da41db7afa99da2490388a3a340fc53deb4' 'f0423c4ee8495da487e07e9144bec1d25f46a0cd2dfa7cfd7a761ef15bfefc98' '7c0acefcfcc3ae093550caed7ec90fe84bec8f7477459ffa7e71dda76bcbdb2c' 'e08a01d41b18bdb771d534daca99642314939aafdb088e5cfcf0ef2d33f8e7eb' '3f0f8db0a1deae270dd166b4750be7c1041b4b44891176f35a8df7dd55d24d34' '0011708e516128647dd25b59b6ebc465f36e85bbe0a8fbdc3eb04b7f28c2197f' 'c06fc270e32a843c8b6d86335a2ec607d405dfba6875de8d8a9abde39a9e2c17' 'b88fd2b99e7d42d414b329b814b9ff3304fa0ef9c67df81bde235bbfa0f3a3b8') prepare() { cd bind-$pkgver # apply patch from the source array (should be a pacman feature) local src for src in "${source[@]}"; do src="${src%%::*}" src="${src##*/}" [[ $src = *.patch ]] || continue echo "Applying patch $src..." patch -Np1 < "../$src" done } build() { cd bind-$pkgver export CFLAGS # support to chase DNSSEC signature chains CFLAGS+=' -DDIG_SIGCHASE' # compile with gcc10, https://gcc.gnu.org/gcc-10/porting_to.html CFLAGS+=' -fcommon' ./configure \ --prefix=/usr \ --sysconfdir=/etc \ --sbindir=/usr/bin \ --localstatedir=/var \ --disable-static \ --enable-fixed-rrset \ --enable-full-report \ --enable-dnsrps \ --with-python=/usr/bin/python \ --with-maxminddb \ --with-openssl \ --with-libidn2 \ --with-json-c \ --with-libxml2 \ --with-lmdb \ --with-libtool make } package() { cd "bind-$pkgver" install -dm755 "$pkgdir/usr/share/licenses/$_pkgname/" install -Dm644 LICENSE COPYRIGHT "$pkgdir/usr/share/licenses/$_pkgname/" make DESTDIR="$pkgdir" install cd "$srcdir" install -D -m644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/$_pkgname.conf" install -D -m644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/$_pkgname.conf" install -D -m644 named.service "$pkgdir/usr/lib/systemd/system/named.service" install -D -m640 -o 0 -g 40 named.conf "$pkgdir/etc/named.conf" install -d -m770 -o 0 -g 40 "$pkgdir/var/named" install -m640 -o 0 -g 40 localhost.zone "$pkgdir/var/named" install -m640 -o 0 -g 40 localhost.ip6.zone "$pkgdir/var/named" install -m640 -o 0 -g 40 127.0.0.zone "$pkgdir/var/named" } # vim:set ts=2 sw=2 et: