PKGBUILDs/extra/bind/PKGBUILD
2019-09-20 23:58:06 +00:00

134 lines
4.4 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
pkgbase=bind
pkgname=(bind bind-tools)
_pkgver=9.14.6
pkgver=${_pkgver//-/.}
pkgrel=1
url='https://www.isc.org/software/bind/'
license=('MPL2')
arch=('x86_64')
options=('!emptydirs' '!makeflags')
makedepends=('libcap' 'libxml2' 'zlib' 'krb5' 'e2fsprogs' 'openssl' 'readline'
'libidn2' 'geoip' 'dnssec-anchors' 'python' 'json-c' 'python-ply' 'lmdb'
'zlib' 'icu' 'xz')
validpgpkeys=('AE3FAC796711EC59FC007AA474BB6B9A4CBB3D38') #ISC Code Signing Key 2019 2020 (codesign@isc.org)
source=("https://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.gz"{,.asc}
'tmpfiles.conf'
'sysusers.conf'
'named.conf'
'named.service'
'localhost.zone'
'localhost.ip6.zone'
'127.0.0.zone'
'empty.zone')
sha1sums=('320cb035c0c5d2699c6b82adeeeb7772f3ea43be'
'SKIP'
'c5a2bcd9b0f009ae71f3a03fbdbe012196962a11'
'9537f4835a1f736788d0733c7996a10db2d4eee4'
'c017aae379c32c7cb1aa1ad84776b83e3a5c139f'
'62b06487323dd0d515a4dc659b8ecd193c29107b'
'6704303a6ed431a29b1d8fe7b12decd4d1f2f50f'
'52da8f1c0247a11b16daa4e03d920e8f09315cbe'
'9c33726088342207ad06d33b2c13408290a0c8ad'
'4f4457b310cbbeadca2272eced062a9c2b2b42fe')
prepare() {
msg2 'Getting a fresh version of root DNS'
# no more using source array, lack of versioning.
curl -o root.hint https://www.internic.net/zones/named.root
[[ -s root.hint ]]
cd bind-$_pkgver
# apply patch from the source array (should be a pacman feature)
local filename
for filename in "${source[@]}"; do
if [[ "$filename" =~ \.patch$ ]]; then
msg2 "Applying patch ${filename##*/}"
patch -p1 -N -i "$srcdir/${filename##*/}"
fi
done
}
build() {
cd bind-$_pkgver
export CFLAGS+=' -DDIG_SIGCHASE'
[[ $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-geoip \
--with-openssl \
--with-libidn2 \
--with-libjson \
--with-libxml2 \
--with-lmdb \
--with-libtool
make
}
package_bind() {
pkgdesc='The ISC DNS Server'
provides=('dns-server')
depends=('glibc' 'libxml2' 'libcap' 'openssl' 'geoip' 'json-c' 'bind-tools'
'zlib' 'lmdb')
backup=('etc/named.conf'
'var/named/127.0.0.zone'
'var/named/localhost.zone'
'var/named/localhost.ip6.zone'
'var/named/empty.zone')
cd "bind-$_pkgver"
install -dm755 "$pkgdir/usr/share/licenses/$pkgname/"
install -Dm644 LICENSE COPYRIGHT "$pkgdir/usr/share/licenses/$pkgname/"
for _d in bin/{check,named,rndc}; do
(cd "$_d" && make DESTDIR="$pkgdir" install)
done
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 root.hint "$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"
install -m640 -o 0 -g 40 empty.zone "$pkgdir/var/named"
}
package_bind-tools() {
pkgdesc='The ISC DNS tools'
depends=('glibc' 'libcap' 'libxml2' 'zlib' 'krb5' 'e2fsprogs' 'python' 'bash'
'openssl' 'readline' 'geoip' 'libidn2' 'dnssec-anchors' 'json-c'
'lmdb' 'xz' 'icu')
conflicts=('dnsutils')
replaces=('dnsutils' 'host')
provides=("dnsutils=$pkgver")
cd "bind-$_pkgver"
install -Dm644 COPYRIGHT "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
make DESTDIR="$pkgdir" SUBDIRS="" install
(cd lib && make DESTDIR="$pkgdir" install)
for _d in bin/{confgen,dig,dnssec,delv,nsupdate,python,tools}; do
(cd "$_d" && make DESTDIR="$pkgdir" install)
done
}
# vim:set ts=2 sw=2 et: