View | Details | Raw Unified | Return to bug 247699 | Differences between
and this patch

Collapse All | Expand All

(-)dns/knot-resolver/Makefile 2020-07-01 23:47:17.321375000 +0000 (-41 / +66 lines)
Lines 2-8 Link Here
2
# $FreeBSD: head/dns/knot-resolver/Makefile 538826 2020-06-14 19:19:12Z pi $
2
# $FreeBSD: head/dns/knot-resolver/Makefile 538826 2020-06-14 19:19:12Z pi $
3
3
4
PORTNAME=      knot-resolver
4
PORTNAME=      knot-resolver
5
DISTVERSION=   5.1.1
5
DISTVERSION=   5.1.2
6
CATEGORIES=    dns
6
CATEGORIES=    dns
7
MASTER_SITES=  https://secure.nic.cz/files/knot-resolver/ \
7
MASTER_SITES=  https://secure.nic.cz/files/knot-resolver/ \
8
               https://dns.company/downloads/knot-resolver/
8
               https://dns.company/downloads/knot-resolver/
Lines 13-37 Link Here
13
LICENSE=       GPLv3+
13
LICENSE=       GPLv3+
14
LICENSE_FILE=  ${WRKSRC}/COPYING
14
LICENSE_FILE=  ${WRKSRC}/COPYING
15
15
16
LIB_DEPENDS=   libknot.so:dns/knot2-lib \
17
               libdnssec.so:dns/knot2-lib \
18
               libzscanner.so:dns/knot2-lib \
19
               libgnutls.so:security/gnutls \
20
               liblmdb.so:databases/lmdb \
21
               libluajit-${LUA_VER}.so:lang/luajit-openresty \
22
               libuv.so:devel/libuv
23
16
BUILD_DEPENDS= bash:shells/bash \
24
BUILD_DEPENDS= bash:shells/bash \
17
               cmocka>=1.1.1:sysutils/cmocka \
18
               flake8:devel/py-flake8@${PY_FLAVOR} \
25
               flake8:devel/py-flake8@${PY_FLAVOR} \
19
               luacheck:devel/lua-luacheck
26
               luacheck:devel/lua-luacheck
20
27
21
LIB_DEPENDS=   libgnutls.so:security/gnutls \
28
USES=          compiler:c11 compiler:c++11-lang libedit libtool lua:51 \
22
               libknot.so:dns/knot2-lib \
29
               meson ncurses ninja pkgconfig python:build shebangfix tar:xz
23
               liblmdb.so:databases/lmdb \
24
               libluajit-5.1.so:lang/luajit-openresty \
25
               libuv.so:devel/libuv
26
30
27
USES=          compiler:c11 compiler:c++11-lang libedit libtool meson \
28
               ncurses ninja pkgconfig python shebangfix tar:xz
29
USE_CXXSTD=    c++11
31
USE_CXXSTD=    c++11
32
30
USE_LDCONFIG=  yes
33
USE_LDCONFIG=  yes
31
LDFLAGS+=      -L${LOCALBASE}/lib
34
LDFLAGS+=      -L${LOCALBASE}/lib
32
35
36
USE_RC_SUBR=   krescachegc kresd
37
33
SUB_FILES=     pkg-message
38
SUB_FILES=     pkg-message
34
39
40
KRESDUSER?=    kresd
41
KRESDGROUP?=   kresd
42
KRESDRUNDIR1=  /var/run/kresd
43
KRESDRUNDIR2=  /var/run/krescachegc
44
45
USERS=         ${KRESDUSER}
46
GROUPS=                ${KRESDGROUP}
47
48
PLIST_SUB=     KRESDUSER=${KRESDUSER} \
49
               KRESDGROUP=${KRESDGROUP} \
50
               KRESDRUNDIR1=${KRESDRUNDIR1} \
51
               KRESDRUNDIR2=${KRESDRUNDIR2}
52
35
SHEBANG_FILES= scripts/bench.sh \
53
SHEBANG_FILES= scripts/bench.sh \
36
               scripts/build-in-obs.sh \
54
               scripts/build-in-obs.sh \
37
               scripts/coverage_c_combine.sh \
55
               scripts/coverage_c_combine.sh \
Lines 60-113 Link Here
60
               -Dinstall_kresd_conf=enabled \
78
               -Dinstall_kresd_conf=enabled \
61
               -Dclient=enabled \
79
               -Dclient=enabled \
62
               -Dutils=enabled \
80
               -Dutils=enabled \
63
               -Dinstall_root_keys=enabled \
64
               -Dkeyfile_default=${ETCDIR}/root.keys \
81
               -Dkeyfile_default=${ETCDIR}/root.keys \
65
               -Dmanaged_ta=enabled \
82
               -Droot_hints=${ETCDIR}/root.hints
66
               -Droot_hints=${ETCDIR}/root.hints \
67
               -Dunit_tests=enabled
68
83
69
#              --libdir=${PREFIX}/lib
84
OPTIONS_DEFINE=                DOCS EXAMPLES DNSTAP ROOTKEYS TRUSTANCHOR TEST TESTUNIT TESTCONF TESTEXTRA
70
#              --pkg-config-path=${PREFIX}/libdata/pkgconfig
85
OPTIONS_DEFAULT=       DOCS EXAMPLES        ROOTKEYS TRUSTANCHOR TEST TESTUNIT
71
#              lmdb_CFLAGS=-I${PREFIX}/include lmdb_LIBS=-llmdb
72
#              -Dlmdb_CFLAGS=-I${PREFIX}/include \     # doesn't help
73
#              -Dlmdb_LIBS=-llmdb                      # doesn't help
74
#              -Dconfig_tests=enabled \                # complains about missing cqueues lua package
75
#              -Dextra_tests=enabled \                 # also requires -Dsendmmsg=disabled
76
86
77
OPTIONS_DEFINE=                DOCS DNSTAP DOXYGEN TRUSTANCHOR
78
OPTIONS_DEFAULT=       DOCS DNSTAP DOXYGEN
79
80
# docs/meson.build wants python2 or python3 - not -for example- python3.7
81
# So this currently is partially broken:
82
#DOCS_MESON_ON=                        -Ddoc=enabled
83
84
DNSTAP_DESC=                   dnstap support
87
DNSTAP_DESC=                   dnstap support
85
DNSTAP_LIB_DEPENDS=            libprotobuf.so:devel/protobuf \
88
DNSTAP_LIB_DEPENDS=            libprotobuf.so:devel/protobuf \
86
                               libprotobuf-c.so:devel/protobuf-c \
89
                               libprotobuf-c.so:devel/protobuf-c \
87
                               libfstrm.so:devel/fstrm
90
                               libfstrm.so:devel/fstrm
88
DNSTAP_PLIST_FILES=            lib/knot-resolver/kres_modules/dnstap.so
89
DNSTAP_MESON_ON=               -Ddnstap=enabled
91
DNSTAP_MESON_ON=               -Ddnstap=enabled
90
DNSTAP_MESON_OFF=              -Ddnstap=disabled
92
DNSTAP_MESON_OFF=              -Ddnstap=disabled
93
DNSTAP_PLIST_FILES=            lib/knot-resolver/kres_modules/dnstap.so
91
94
92
DOXYGEN_IMPLIES=               DOCS
95
ROOTKEYS_DESC=                 install root.keys
93
DOXYGEN_BUILD_DEPENDS=         doxygen:devel/doxygen \
96
ROOTKEYS_MESON_ON=             -Dinstall_root_keys=enabled
94
                               ${PY_SPHINX} \
97
ROOTKEYS_MESON_OFF=            -Dinstall_root_keys=disabled
95
                               ${PYTHON_PKGNAMEPREFIX}sphinx_rtd_theme>0:textproc/py-sphinx_rtd_theme@${PY_FLAVOR}
98
ROOTKEYS_PLIST_FILES=          ${ETCDIR}/root.keys
96
99
97
TRUSTANCHOR_DESC=              Trust anchor bootstrapping and stats
100
TEST_DESC=                     Do tests
98
TRUSTANCHOR_USES=              lua
99
TRUSTANCHOR_BUILD_DEPENDS=     ${LUA_PKGNAMEPREFIX}luasocket>=0:net/luasocket@${LUA_FLAVOR} \
100
                               ${LUA_PKGNAMEPREFIX}luasec>=0:security/luasec@${LUA_FLAVOR}
101
101
102
.include <bsd.port.options.mk>
102
TESTUNIT_DESC=                 Do unit tests
103
TESTUNIT_MESON_ON=             -Dunit_tests=enabled
104
TESTUNIT_MESON_OFF=            -Dunit_tests=disabled
105
TESTUNIT_BUILD_DEPENDS=                cmocka>=1.1.1:sysutils/cmocka
103
106
104
USERS=         kresd
107
TESTCONF_DESC=                 Do config tests
105
GROUPS=                ${USERS}
108
TESTCONF_MESON_ON=             -Dconfig_tests=enabled
109
TESTCONF_MESON_OFF=            -Dconfig_tests=disabled
110
TESTCONF_BROKEN=               Lua cqueues package seems missing
106
111
112
TESTEXTRA_DESC=                        Do extra tests
113
TESTEXTRA_MESON_ON=            -Dextra_tests=enabled \
114
                               -Dsendmmsg=disabled
115
TESTEXTRA_MESON_OFF=           -Dextra_tests=disabled
116
TESTEXTRA_USES=                        cmake
117
TESTEXTRA_BROKEN=              CMake Error: The source directory misses CMakeLists.txt
118
119
TRUSTANCHOR_DESC=              Trust anchor bootstrapping, management and stats
120
TRUSTANCHOR_MESON_ON=          -Dmanaged_ta=enabled
121
TRUSTANCHOR_MESON_OFF=         -Dmanaged_ta=disabled
122
123
.include <bsd.port.options.mk>
124
107
PORTDOCS=      AUTHORS COPYING CodingStyle NEWS README.md
125
PORTDOCS=      AUTHORS COPYING CodingStyle NEWS README.md
126
PORTEXAMPLES=  config.cluster config.docker config.internal config.isp \
127
               config.personal config.privacy config.splitview
108
128
109
STRIP_TARGETS= sbin/kresd \
129
STRIP_TARGETS= sbin/kres-cache-gc \
110
               sbin/kresc \
130
               sbin/kresc \
131
               sbin/kresd \
111
               lib/knot-resolver/ahocorasick.so \
132
               lib/knot-resolver/ahocorasick.so \
112
               lib/knot-resolver/kres_modules/bogus_log.so \
133
               lib/knot-resolver/kres_modules/bogus_log.so \
113
               lib/knot-resolver/kres_modules/dnstap.so \
134
               lib/knot-resolver/kres_modules/dnstap.so \
Lines 119-126 Link Here
119
140
120
pre-install-TEST-on: do-test
141
pre-install-TEST-on: do-test
121
142
143
pre-install:
144
       ${MKDIR} ${STAGEDIR}${DOCSDIR}
145
       ${MKDIR} ${STAGEDIR}/var/run/krescachegc
146
       ${MKDIR} ${STAGEDIR}/var/run/kresd
147
122
post-install:
148
post-install:
123
       @${MKDIR} ${STAGEDIR}${DOCSDIR}
124
       ${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR}/
149
       ${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR}/
125
.for STRIP_TGT in ${STRIP_TARGETS}
150
.for STRIP_TGT in ${STRIP_TARGETS}
126
       if [ -f ${STAGEDIR}${PREFIX}/${STRIP_TGT} ]; then \
151
       if [ -f ${STAGEDIR}${PREFIX}/${STRIP_TGT} ]; then \
(-)dns/knot-resolver/distinfo 2020-07-01 23:24:46.337418000 +0000 (-3 / +3 lines)
Lines 1-3 Link Here
1
TIMESTAMP = 1589914626
1
TIMESTAMP = 1593645886
2
SHA256 (knot-resolver-5.1.1.tar.xz) = f72214046df8aae2b1a5c6d1ad0bc8b166aa060df5b008f6e88b4f6ba79cbf4e
2
SHA256 (knot-resolver-5.1.2.tar.xz) = caa4f941caf39080184554fb1310f383eba4b30d9c4c2215670d6b0a2de8f836
3
SIZE (knot-resolver-5.1.1.tar.xz) = 1744544
3
SIZE (knot-resolver-5.1.2.tar.xz) = 1749236
(-)dns/knot-resolver/files/krescachegc.in 2020-06-29 10:24:33.193848000 +0000 (+39 lines)
Line 0 Link Here
1
#!/bin/sh
2
#
3
# $FreeBSD$
4
#
5
# PROVIDE: krescachegc
6
# REQUIRE: SERVERS cleanvar
7
# KEYWORD: shutdown
8
#
9
# Add the following lines to /etc/rc.conf to enable knot-resolver:
10
#
11
# krescachegc_enable="YES":    Set to YES to enable krescachegc.
12
#                              Set to NO by default.
13
# krescachegc_millis="1000":   Set to garbage collect interval in milliseconds
14
#                              Set to 1000 by default.
15
# krescachegc_rundir="":       Set to /var/run/krescachegc by default.
16
#
17
18
. /etc/rc.subr
19
20
name=krescachegc
21
rcvar=krescachegc_enable
22
23
load_rc_config ${name}
24
25
# set defaults
26
27
krescachegc_enable=${krescachegc_enable:-"NO"}
28
krescachegc_rundir=${krescachegc_rundir:-"/var/run/${name}"}
29
krescachegc_millis=${krescachegc_millis:-"1000"}
30
user=kresd
31
group=kresd
32
33
pidfile="${krescachegc_rundir}/${name}.pid"
34
procname="%%PREFIX%%/sbin/kres-cache-gc"
35
36
command=/usr/sbin/daemon
37
command_args="-c -f -r -P ${pidfile} -u ${user} -- ${procname} -c ${krescachegc_rundir} -d ${krescachegc_millis}"
38
39
run_rc_command "$1"
(-)dns/knot-resolver/files/kresd.in 2020-07-02 00:48:32.660913000 +0000 (+39 lines)
Line 0 Link Here
1
#!/bin/sh
2
#
3
# $FreeBSD$
4
#
5
# PROVIDE: kresd
6
# REQUIRE: NETWORKING
7
# BEFORE: SERVERS
8
# KEYWORD: shutdown
9
#
10
# Add the following lines to /etc/rc.conf to enable knot-resolver:
11
#
12
# kresd_enable="YES":  Set to YES to enable kresd.
13
#                      Set to NO by default.
14
# kresd_config="":     Set to %%ETCDIR%%/kresd.conf
15
#                      by default.
16
# kresd_rundir="":     Set to /var/run/kresd by default.
17
#
18
19
. /etc/rc.subr
20
21
name=kresd
22
rcvar=kresd_enable
23
24
load_rc_config ${name}
25
26
# set defaults
27
28
kresd_enable=${kresd_enable:-"NO"}
29
kresd_config=${kresd_config:-"%%ETCDIR%%/${name}.conf"}
30
kresd_rundir=${kresd_rundir:-"/var/run/${name}"}
31
32
pidfile="${kresd_rundir}/${name}.pid"
33
procname="%%PREFIX%%/sbin/${name}"
34
required_files="${kresd_config}"
35
36
command="/usr/sbin/daemon"
37
command_args="-c -f -S -r -P ${pidfile} -- ${procname} -c ${kresd_config} -n -q ${kresd_rundir}"
38
39
run_rc_command "$1"
(-)dns/knot-resolver/files/patch-meson.build 2020-06-23 09:59:27.612966000 +0000 (+11 lines)
Line 0 Link Here
1
--- meson.build.orig   2020-06-23 09:59:10 UTC
2
+++ meson.build
3
@@ -47,7 +47,7 @@ endif
4
 prefix = get_option('prefix')
5
 data_dir = join_paths(prefix, get_option('datadir'), 'knot-resolver')
6
 doc_dir = join_paths(prefix, get_option('datadir'), 'doc', 'knot-resolver')
7
-examples_dir = join_paths(doc_dir, 'examples')
8
+examples_dir = join_paths(prefix, get_option('datadir'), 'examples', 'knot-resolver')
9
 etc_dir = join_paths(prefix, get_option('sysconfdir'), 'knot-resolver')
10
 lib_dir = join_paths(prefix, get_option('libdir'), 'knot-resolver')
11
 modules_dir = join_paths(lib_dir, 'kres_modules')
(-)dns/knot-resolver/files/pkg-message.in 2020-06-30 09:35:50.197366000 +0000 (-4 / +1 lines)
Lines 6-16 Link Here
6
   - man kresd
6
   - man kresd
7
   - https://knot-resolver.readthedocs.io/
7
   - https://knot-resolver.readthedocs.io/
8
8
9
  To run as daemon see:
10
   - https://knot-resolver.readthedocs.io/en/latest/daemon.html
11
12
  If upgrading:
9
  If upgrading:
13
   - https://knot-resolver.readthedocs.io/en/stable/upgrading.html
10
   - https://knot-resolver.readthedocs.io/en/latest/upgrading.html
14
EOM
11
EOM
15
}
12
}
16
]
13
]
(-)dns/knot-resolver/pkg-descr 2020-06-23 10:03:09.120544000 +0000 (-2 / +8 lines)
Lines 1-4 Link Here
1
The Knot DNS Resolver is a caching full resolver implementation,
1
Knot Resolver is a caching DNS resolver scalable from huge resolver
2
including both a resolver library and a daemon.
2
farms down to home network routers.
3
Knot Resolver is a modern resolver implementation designed for
4
scalability, resiliency, and flexibility. Its design is
5
different from other resolvers: The core architecture is tiny and
6
efficient, and most of the rich features are implemented as
7
optional modules, which limits attack surface and improves
8
performance.
3
9
4
WWW: https://www.knot-resolver.cz/
10
WWW: https://www.knot-resolver.cz/
(-)dns/knot-resolver/pkg-plist 2020-06-30 11:49:29.841714000 +0000 (-9 / +4 lines)
Lines 1-7 Link Here
1
@sample %%ETCDIR%%/kresd.conf
1
%%ETCDIR%%/icann-ca.pem
2
%%ETCDIR%%/icann-ca.pem
2
%%ETCDIR%%/kresd.conf
3
%%ETCDIR%%/root.hints
3
%%ETCDIR%%/root.hints
4
%%ETCDIR%%/root.keys
5
include/libkres/api.h
4
include/libkres/api.h
6
include/libkres/array.h
5
include/libkres/array.h
7
include/libkres/cdb_api.h
6
include/libkres/cdb_api.h
Lines 91-100 Link Here
91
sbin/kres-cache-gc
90
sbin/kres-cache-gc
92
sbin/kresc
91
sbin/kresc
93
sbin/kresd
92
sbin/kresd
94
%%PORTDOCS%%%%DOCSDIR%%/examples/config.cluster
93
@dir(%%KRESDUSER%%,%%KRESDGROUP%%,0755) %%ETCDIR%%
95
%%PORTDOCS%%%%DOCSDIR%%/examples/config.docker
94
@dir(%%KRESDUSER%%,%%KRESDGROUP%%,0755) %%KRESDRUNDIR1%%
96
%%PORTDOCS%%%%DOCSDIR%%/examples/config.internal
95
@dir(%%KRESDUSER%%,%%KRESDGROUP%%,0755) %%KRESDRUNDIR2%%
97
%%PORTDOCS%%%%DOCSDIR%%/examples/config.isp
98
%%PORTDOCS%%%%DOCSDIR%%/examples/config.personal
99
%%PORTDOCS%%%%DOCSDIR%%/examples/config.privacy
100
%%PORTDOCS%%%%DOCSDIR%%/examples/config.splitview

Return to bug 247699