blob: a24c6cab6e8e8a25350b4bc22e6240edfd9cadd9 (
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
110
111
112
113
114
115
116
|
# Created by: Sergey Matveychuk <sem@FreeBSD.org>
# $FreeBSD$
PORTNAME= unbound
PORTVERSION= 1.12.0
CATEGORIES= dns
MASTER_SITES= https://www.nlnetlabs.nl/downloads/unbound/ \
https://distfiles.crux.guru/
MAINTAINER= jaap@NLnetLabs.nl
COMMENT= Validating, recursive, and caching DNS resolver
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libexpat.so:textproc/expat2
USES= autoreconf cpe libtool pkgconfig ssl
CPE_VENDOR= nlnetlabs
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --with-ssl=${OPENSSLBASE} --with-libexpat=${LOCALBASE}
USE_LDCONFIG= yes
TEST_TARGET= test
USERS= ${PORTNAME}
GROUPS= ${PORTNAME}
USE_RC_SUBR= unbound
PORTDOCS= CREDITS Changelog FEATURES LICENSE README README.svn \
README.tests TODO control_proto_spec.txt ietf67-design-02.odp \
ietf67-design-02.pdf requirements.txt
OPTIONS_SUB= yes
OPTIONS_DEFINE= THREADS PYTHON GOST ECDSA MUNIN_PLUGIN DOCS LIBEVENT \
FILTER_AAAA DNSTAP DNSCRYPT SUBNET EVAPI TFOCL TFOSE \
HIREDIS DOH
OPTIONS_DEFAULT=THREADS ECDSA LIBEVENT GOST
LIBEVENT_DESC= Build against libevent
GOST_DESC= Enable GOST support (requires OpenSSL >= 1.0)
ECDSA_DESC= Enable ECDSA (elliptic curve) support (OpenSSL >= 1.0)
MUNIN_PLUGIN_DESC= Install Munin plugin
FILTER_AAAA_DESC= Build with AAAA filter functionality (contrib)
DNSTAP_DESC= Enable dnstap logging support
DNSCRYPT_DESC= Enable dnscrypt support
SUBNET_DESC= Enable client subnet support
EVAPI_DESC= (Experimental) pluggable event based libunbound API support
TFOCL_DESC= Enable TCP Fast Open for client mode
TFOSE_DESC= Enable TCP Fast Open for server mode
HIREDIS_DESC= Enable hiredis support for the cachedb module
DOH_DESC= Enable DNS-over-HTTPS supports
STRIP_FILES= .libs/libunbound.so unbound-checkconf unbound \
unbound-control .libs/unbound-host .libs/unbound-anchor
DNSTAP_CONFIGURE_ENABLE=dnstap
DNSTAP_LIB_DEPENDS= libfstrm.so:devel/fstrm \
libprotobuf-c.so:devel/protobuf-c
DNSCRYPT_CONFIGURE_ENABLE= dnscrypt
DNSCRYPT_LIB_DEPENDS= libsodium.so:security/libsodium
SUBNET_CONFIGURE_ENABLE= subnet
EVAPI_CONFIGURE_ENABLE= event-api
TFOCL_CONFIGURE_ENABLE= tfo-client
TFOSE_CONFIGURE_ENABLE= tfo-server
ECDSA_CONFIGURE_ENABLE= ecdsa
ECDSA_VARS= DEPENDS_ARGS+=WITH_ECDSA=yes
GOST_CONFIGURE_ENABLE= gost
GOST_VARS= DEPENDS_ARGS+=WITH_GOST=yes
LIBEVENT_CONFIGURE_WITH=libevent
LIBEVENT_CPPFLAGS+= $$(pkg-config libevent --cflags-only-I)
LIBEVENT_LIB_DEPENDS= libevent.so:devel/libevent
LIBEVENT_LDFLAGS+= $$(pkg-config libevent --libs-only-L)
MUNIN_PLUGIN_SUB_FILES= pkg-message
PYTHON_BUILD_DEPENDS= swig:devel/swig
PYTHON_CONFIGURE_ON= --with-pyunbound=yes --with-pythonmodule=yes \
LDFLAGS="-L${LOCALBASE}/lib" \
ac_cv_path_SWIG=${LOCALBASE}/bin/swig
PYTHON_USES= python
PYTHON_VARS= STRIP_FILES+=.libs/_unbound.so
THREADS_CONFIGURE_WITH= pthreads
HIREDIS_CONFIGURE_ON= --enable-cachedb --with-libhiredis
HIREDIS_LIB_DEPENDS= libhiredis.so:databases/hiredis
DOH_CONFIGURE_ON= --with-libnghttp2
DOH_LIB_DEPENDS= libnghttp2.so:www/libnghttp2
post-patch:
@${RM} ${WRKSRC}/util/configlexer.c
@${REINPLACE_CMD} -e 's|if test ! -e $$(DESTDIR)$$(configfile); then || ; \
s|$$(configfile); fi|$$(configfile).sample|' \
${WRKSRC}/Makefile.in
post-patch-FILTER_AAAA-on:
${CAT} ${WRKSRC}/contrib/aaaa-filter-iterator.patch | ${PATCH} -d ${WRKSRC} -p1 -s
post-build:
@for s in ${STRIP_FILES}; do ${STRIP_CMD} ${WRKSRC}/$$s; done
post-install-PYTHON-on:
@${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/_unbound.so
post-install-MUNIN_PLUGIN-on:
@${MKDIR} ${STAGEDIR}${PREFIX}/share/munin/plugins
${INSTALL_SCRIPT} ${WRKDIR}/unbound-${PORTVERSION}/contrib/unbound_munin_ \
${STAGEDIR}${PREFIX}/share/munin/plugins/
@${ECHO_MSG}
@${ECHO_MSG} "============================================================="
@${CAT} ${WRKDIR}/pkg-message
@${ECHO_MSG} "============================================================="
post-install-DOCS-on:
${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/doc/|} ${STAGEDIR}${DOCSDIR}
.include <bsd.port.mk>
|