aboutsummaryrefslogtreecommitdiffstats
path: root/main/knot/APKBUILD
blob: c87795ea3d99cbb791d4d0fc7c9991ab4495cd2e (plain) (blame)
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
110
111
112
113
114
115
# 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: Jakub Jirutka <jakub@jirutka.cz>
pkgname=knot
pkgver=3.0.4
pkgrel=0
pkgdesc="An high-performance authoritative-only DNS server"
url="https://www.knot-dns.cz/"
# testsuite fails on 32 bit arches with musl 1.2
arch="all !x86 !armhf !armv7"
license="GPL-3.0-or-later"
depends_dev="$pkgname $pkgname-libs-static $pkgname-utils"
checkdepends="softhsm"
makedepends="
	bison
	bsd-compat-headers
	flex
	gnutls-dev
	jansson-dev
	libcap-ng-dev
	libedit-dev
	libidn-dev
	libtool
	lmdb-dev
	m4
	nghttp2-dev
	openssl-dev
	perl
	sed
	userspace-rcu-dev
	zlib-dev
	"
install="$pkgname.pre-install $pkgname.post-install $pkgname.post-upgrade"
pkgusers="$pkgname"
pkggroups="$pkgname"
subpackages="$pkgname-libs
	$pkgname-libs-static
	$pkgname-utils
	$pkgname-dev
	$pkgname-doc
	$pkgname-openrc
	"
source="https://secure.nic.cz/files/$pkgname-dns/$pkgname-$pkgver.tar.xz
	test_net.patch
	knotd.confd
	knotd.initd
	"
# tests fail due to alignment problems on armv6
[ "$CARCH" = "armhf" ] && options="!check"

prepare() {
	default_prepare

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

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

check() {
	make check
}

package() {
	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="Knot and DNS client utilities shipped with the Knot DNS server"

	amove usr/bin
	amove usr/sbin/keymgr usr/sbin/kjournalprint usr/sbin/kcatalogprint
}

gpg_signature_extensions="asc"
gpgfingerprints="good:742F A4E9 5829 B6C5 EAC6  B857 10BB 7AF6 FEBB D6AB"

sha512sums="d674faaafcbe882539d28e53f1cd6cdda61ca8065f66dc0b9127f249f34b59a9d3d1ac206799c2974a2d38264842a2387db35f814bd05f3eaeac0b35b90b21ac  knot-3.0.4.tar.xz
39503d16603eaff04cb34de97bff987952818d229ccb5b190567198505ece8077efdf230d5402e69ca4ab8acb282c53bfaaf495360dc11191c985a48fbb61318  test_net.patch
471d3c639a8235ba09491c99d36c0a4f1074d6055ccfd3807be02a30d3ed5bbe69a84f0414ea7810db6bbc1e38f5837108e5744fc59f949ed78a262a7de4597e  knotd.confd
979f06a83dd4326920a682f8190319577faf904e0e379b3c55e0420eb43dcb55d86c6727015634fa0c2dff1dddac43bbd5a216ff04f217ad91d670eb899dbefa  knotd.initd"