PKGBUILDs/extra/bind/PKGBUILD
2020-12-02 16:13:10 +00:00

112 lines
3.9 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Maintainer: Sébastien Luttringer
# Contributor: Gaetan Bisson <bisson@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
# Contributor: Mario Vazquez <mario_vazq@hotmail.com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - !makeflags - bind build doesn't like concurrency
# - build v6 as armv6kz
_pkgver=9.16.8
pkgname=bind
pkgver=${_pkgver//-/.}
pkgrel=3
pkgdesc='A complete, highly portable implementation of the DNS protocol'
url='https://www.isc.org/software/bind/'
license=('MPL2')
arch=('x86_64')
options=('!emptydirs' '!makeflags')
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')
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')
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
validpgpkeys=('AE3FAC796711EC59FC007AA474BB6B9A4CBB3D38') #ISC Code Signing Key 2019 2020 (codesign@isc.org)
source=("https://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.xz"{,.asc}
'tmpfiles.conf'
'sysusers.conf'
'named.conf'
'named.service'
'localhost.zone'
'localhost.ip6.zone'
'127.0.0.zone')
sha256sums=('9e9b9c563692be86ec41f670f6b70e26c14e72445c742d7b5eb4db7d2b5e8d31'
'SKIP'
'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'
[[ $CARCH == "armv6h" ]] && CFLAGS+=" -march=armv6zk"
./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: