aboutsummaryrefslogtreecommitdiffstats
path: root/testing/knot-resolver4/APKBUILD
blob: e45d2b9bbe8a0b481ddc9e24a3d725ac3bf6a168 (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
# Contributor: tcely <knot-resolver+aports@tcely.33mail.com>
# Maintainer: tcely <knot-resolver+aports@tcely.33mail.com>
_pkgname="knot-resolver"
pkgname="${_pkgname}4"
pkgver=4.0.0
pkgrel=1
pkgdesc="Minimalistic caching DNS resolver implementation"
url="https://www.knot-resolver.cz/"
arch="all !s390x" # luajit unavailable for s390x
license="GPL-3.0"
pkgusers="kresd"
pkggroups="kresd"
depends="dns-root-hints dnssec-root lua5.1-sec lua5.1-socket"
_depends_dnstap_dev="fstrm-dev protobuf-dev protobuf-c-dev"
_depends_http="$pkgname lua5.1-http"
depends_dev="knot-dev>=2.8.0 libedit-dev libuv-dev>=1.7 lmdb-dev luajit-dev>=2.0 $_depends_dnstap_dev"
makedepends="$depends_dev bash cmake gnutls-dev luacheck meson>=0.46 ninja pkgconf py-flake8"
checkdepends="cmocka-dev"
install="$pkgname.pre-install"
subpackages="$pkgname-mod-http:http:noarch $pkgname-mod-dnstap:dnstap $pkgname-dev $pkgname-doc $pkgname-openrc"
source="
	https://secure.nic.cz/files/${_pkgname}/${_pkgname}-$pkgver.tar.xz
	meson-dnstap-generated-sources.patch
	stats-module-memset-upstreams.patch
	knot-resolver4.logrotate
	knot-resolver4.confd
	knot-resolver4.initd
	"
builddir="${srcdir}/${_pkgname}-${pkgver}"

build() {
	meson build \
		--prefix=/usr \
		--buildtype=release \
		--default-library=both \
		-Dclient=enabled \
		-Dgroup="$pkggroups" \
		-Dinstall_kresd_conf=enabled \
		-Dunit_tests=enabled \
		-Duser="$pkgusers" \
		-Droot_hints=/usr/share/dns-root-hints/named.root \
		-Dmanaged_ta=disabled \
		-Dkeyfile_default=/usr/share/dnssec-root/trusted-key.key

	ninja -C build
}

check() {
	meson test -C build
}

package() {
	DESTDIR="$pkgdir" ninja install -C build

	cd "$pkgdir"

	install -m 755 -D "$srcdir"/$pkgname.initd ./etc/init.d/$pkgname
	install -m 644 -D "$srcdir"/$pkgname.confd ./etc/conf.d/$pkgname

	install -m 644 -D "$srcdir"/$pkgname.logrotate ./etc/logrotate.d/$pkgname

	# Rename -doc directory
	mkdir -p ./usr/share/doc
	mv ./usr/share/doc/${_pkgname} ./usr/share/doc/$pkgname
}

http() {
	pkgdesc="Knot Resolver - HTTP/2 services"
	depends="$_depends_http"
	local moddir="usr/lib/knot-resolver/kres_modules"

	mkdir -p "$subpkgdir"/$moddir
	mv "$pkgdir"/$moddir/http* "$subpkgdir"/$moddir/
}

dnstap() {
	pkgdesc="Knot Resolver - dnstap logging"
	depends="$_depends_dnstap"
	local moddir="usr/lib/knot-resolver/kres_modules"

	mkdir -p "$subpkgdir"/$moddir
	mv "$pkgdir"/$moddir/dnstap.so "$subpkgdir"/$moddir/
}

sha256sums="37161d931e64535ce38c33b9635f06a43cd1541945bf2c79a55e37f230de1631  knot-resolver-4.0.0.tar.xz
630e9e22fc6c343e3f864ab6a83ab57071c1dbf8a55cad24628c30c536c45e4f  meson-dnstap-generated-sources.patch
ea377e19ae7bd1c0906c1a15e9d92d275468df5d162b968696b5e985d70667c4  stats-module-memset-upstreams.patch
23a9fff29fae658e669553a385cf5563311a3451bb8f77889a8d8501e8c98c5a  knot-resolver4.logrotate
bb3e4c1f666c3e1d995aad8fa0af98960298d91b0222fc7f423692493ffbb3a5  knot-resolver4.confd
41acd36d8f84805d851865daf993cb5f6697190662edf7f95d0e92ab1ff58b80  knot-resolver4.initd"
sha512sums="e4c7e21ec36b5a733adf9f8e3751bbc347ce9ce7af8d71e8d5f3a7a87da673db753490c5257466e8433cd5fff1651046c8500ee59e91be8e55b1a16614eaf53a  knot-resolver-4.0.0.tar.xz
d51fb4eacc2b86fe7ee6d39a9f34d9eaf874204ab4c965cb5c053b3a5b5920f90e0cee388c2707d0ff3eb705f5764221e0823813baa9c1ccf247b185436adb6a  meson-dnstap-generated-sources.patch
c71a01d6fe74c348fe4a070aa448c234b75a9f4b790685deffaef1dad48668f95fa9fe9ae2e38bdc82ca2cde68d740c28511e83b47191f221f1fa265e8ef9537  stats-module-memset-upstreams.patch
86fcd63264a21b83850d42328c89f051055bbd81c95bb96b298fb74a0826fa453b05fd34ae247e176635466d678ea740912047d05cacaea96c67fd2ded6b5bb5  knot-resolver4.logrotate
0379745f15175aa9a740c7e58b7279b2e1520effb465dd168ea2165118fdb79291082b914dce34d7967068568c35ad381950845e2b03802a1c88fe99b55a7211  knot-resolver4.confd
2f192e5c66455a211f113ae92a8001711d4b174490bd95617eb66cc2072804ba3881508754c2841dd12bcae15a50d85d32f53b026a04a7f4134942ce4a15edb2  knot-resolver4.initd"