aboutsummaryrefslogtreecommitdiffstats
path: root/community/knot/APKBUILD
blob: e3e33248ebcb89be5fd5107069d9e7683f5bba85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Contributor: Dennis Przytarski <dennis@przytarski.com>
# Contributor: Francesco Zanini <francesco@zanini.me>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=knot
pkgver=2.4.3
pkgrel=0
pkgdesc="An high-performance authoritative-only DNS server"
url="https://www.knot-dns.cz"
arch="all"
license="GPL3"
depends=""
depends_dev="gnutls-dev libedit-dev libcap-ng-dev libidn-dev lmdb-dev
	libressl-dev userspace-rcu-dev zlib-dev"
makedepends="$depends_dev m4 bison flex perl jansson-dev libtool"
install="$pkgname.pre-install $pkgname.post-install knot.post-upgrade"
pkgusers="knot"
pkggroups="knot"
options="!check"
subpackages="$pkgname-libs
	$pkgname-utils
	$pkgname-bash-completion:bashcomp:noarch
	$pkgname-zsh-completion:zshcomp:noarch
	$pkgname-dev
	$pkgname-doc
	"
source="https://secure.nic.cz/files/knot-dns/$pkgname-$pkgver.tar.xz
	knotd.confd
	knotd.initd
	"
builddir="$srcdir/$pkgname-$pkgver"

prepare() {
	default_prepare

	cd "$builddir"
	# Make sure embedded LMDB library is not used.
	rm -rf src/contrib/lmdb
}

build() {
	cd "$builddir"
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--libexecdir=/usr/lib/knot \
		--with-rundir=/run/knot \
		--with-storage=/var/lib/knot \
		--disable-silent-rules
	make
}

package() {
	cd "$builddir"

	make DESTDIR="$pkgdir" install

	rm -Rf "$pkgdir"/run
	chown $pkgusers:$pkggroups "$pkgdir"/var/lib/$pkgname
	chmod 750 "$pkgdir"/var/lib/$pkgname

	install -Dm 644 "$srcdir"/knotd.confd \
		"$pkgdir"/etc/conf.d/knotd
	install -Dm 755 "$srcdir"/knotd.initd \
		"$pkgdir"/etc/init.d/knotd
}

libs() {
	pkgdesc="Libraries used by the Knot DNS server and client applications"

	cd "$pkgdir"
	mkdir -p "$subpkgdir"/usr/lib
	mv ./usr/lib/libdnssec.so.* \
		./usr/lib/libknot.so.* \
		./usr/lib/libzscanner.so.* \
		"$subpkgdir"/usr/lib/
}

utils() {
	pkgdesc="DNS client utilities shipped with the Knot DNS server"

	mkdir -p "$subpkgdir"/usr
	mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
}

bashcomp() {
	pkgdesc="Bash completions for knot"
	depends="bash"
	install_if="$pkgname=$pkgver-r$pkgrel bash"

	install -m 644 -D "$builddir"/samples/keymgr-completion.sh \
		"$subpkgdir"/usr/share/bash-completion/completions/keymgr
}

zshcomp() {
	pkgdesc="ZSH completions for knot"
	depends="zsh"
	install_if="$pkgname=$pkgver-r$pkgrel zsh"

	install -m 644 -D "$builddir"/samples/keymgr-completion.zsh \
		"$subpkgdir"/usr/share/zsh/site-functions/_keymgr
}

sha512sums="b10b739673484c108748a247238acc8d58b7dc78bdb659d22903c9eeebd0a8d042dd5fc85328b09fa22ffa7d0aa3fe1f108ba1bf0b8eafe9ea3a81118226fae8  knot-2.4.3.tar.xz
471d3c639a8235ba09491c99d36c0a4f1074d6055ccfd3807be02a30d3ed5bbe69a84f0414ea7810db6bbc1e38f5837108e5744fc59f949ed78a262a7de4597e  knotd.confd
979f06a83dd4326920a682f8190319577faf904e0e379b3c55e0420eb43dcb55d86c6727015634fa0c2dff1dddac43bbd5a216ff04f217ad91d670eb899dbefa  knotd.initd"