Lines 1-120
Link Here
|
1 |
# Created by: Leo Vandewoestijne <freebsd@dns.company> |
|
|
2 |
# $FreeBSD: head/dns/knot2/Makefile 548443 2020-09-13 01:55:26Z dbaio $ |
3 |
|
4 |
PORTNAME= knot |
5 |
DISTVERSION= 2.9.6 |
6 |
CATEGORIES= dns |
7 |
MASTER_SITES= https://secure.nic.cz/files/knot-dns/ \ |
8 |
https://dns.company/downloads/knot-dns/ |
9 |
PKGNAMESUFFIX?= 2 |
10 |
|
11 |
MAINTAINER= freebsd@dns.company |
12 |
COMMENT?= High performance authoritative-only DNS server |
13 |
|
14 |
LICENSE= GPLv3 |
15 |
LICENSE_FILE= ${WRKSRC}/COPYING |
16 |
|
17 |
CONFLICTS= knot-1.* knot1-[0-6].* |
18 |
|
19 |
BUILD_DEPENDS= autoconf>=2.65:devel/autoconf \ |
20 |
gsed:textproc/gsed |
21 |
|
22 |
LIB_DEPENDS= libgnutls.so:security/gnutls \ |
23 |
liblmdb.so:databases/lmdb |
24 |
|
25 |
USES= alias libtool localbase pkgconfig tar:xz |
26 |
|
27 |
HAS_CONFIGURE= yes |
28 |
BINARY_ALIAS= sed=${LOCALBASE}/bin/gsed |
29 |
CONFIGURE_ARGS= --enable-recvmmsg=no \ |
30 |
--with-pkgconfigdir=${PREFIX}/libdata/pkgconfig \ |
31 |
--mandir=${MANPREFIX}/man |
32 |
|
33 |
.if !defined(UTILS_ONLY) && !defined(LIB_ONLY) |
34 |
CONFIGURE_ARGS+= --with-rundir=/var/run/knot \ |
35 |
--with-storage=/var/db/knot |
36 |
USE_RC_SUBR= ${PORTNAME} |
37 |
SUB_FILES= pkg-message |
38 |
USES+= libedit |
39 |
LIB_DEPENDS+= liburcu.so:sysutils/liburcu |
40 |
.endif |
41 |
|
42 |
.if defined(UTILS_ONLY) || defined(LIB_ONLY) |
43 |
CONFIGURE_ARGS+= --disable-daemon \ |
44 |
--disable-modules |
45 |
.endif |
46 |
|
47 |
.if defined(LIB_ONLY) |
48 |
CONFIGURE_ARGS+= --disable-utilities |
49 |
.endif |
50 |
|
51 |
USE_LDCONFIG= yes |
52 |
INSTALL_TARGET= install-strip |
53 |
|
54 |
USERS= knot |
55 |
GROUPS= knot |
56 |
SUB_LIST+= USERS="${USERS}" GROUPS="${GROUPS}" |
57 |
|
58 |
PORTDOCS= COPYING NEWS README |
59 |
|
60 |
OPTIONS_DEFINE= DNSTAP DOCS |
61 |
|
62 |
.if !defined(LIB_ONLY) |
63 |
OPTIONS_DEFINE+= IDN |
64 |
.endif |
65 |
|
66 |
.if !defined(UTILS_ONLY) && !defined(LIB_ONLY) |
67 |
OPTIONS_DEFINE+= FASTPARSER MAXMINDDB |
68 |
.endif |
69 |
|
70 |
DNSTAP_DESC= dnstap support (see dnstap.info) |
71 |
DNSTAP_CONFIGURE_ENABLE= dnstap |
72 |
DNSTAP_CONFIGURE_WITH= module-dnstap=yes |
73 |
DNSTAP_LIB_DEPENDS= libprotobuf-c.so:devel/protobuf-c \ |
74 |
libfstrm.so:devel/fstrm |
75 |
# XXX: because `kdig_CPPFLAGS += $(DNSTAP_CFLAGS)' line is missing from |
76 |
# `src/Makefile.am' file (and thus pre-generated `src/Makefile.in') which |
77 |
# should contain "$libfstrm_CFLAGS $libprotobuf_c_CFLAGS" set by configure |
78 |
# script, provide it here explicitly as patching those files would result |
79 |
# in higher line count. Ideally this bug should be fixed upstream. |
80 |
DNSTAP_CPPFLAGS= -I${LOCALBASE}/include |
81 |
|
82 |
DOCS_CONFIGURE_OFF= --disable-documentation |
83 |
|
84 |
FASTPARSER_DESC= Fast zone parser (demanding compilation) |
85 |
FASTPARSER_CONFIGURE_ENABLE= fastparser |
86 |
|
87 |
IDN_CONFIGURE_WITH= libidn |
88 |
IDN_CONFIGURE_OFF= --without-libidn |
89 |
IDN_LIB_DEPENDS= libidn2.so:dns/libidn2 |
90 |
|
91 |
MAXMINDDB_DESC= Enable MaxMind for geodb module |
92 |
MAXMINDDB_LIB_DEPENDS= libmaxminddb.so:net/libmaxminddb |
93 |
MAXMINDDB_CONFIGURE_ENABLE= maxminddb |
94 |
|
95 |
.include <bsd.port.options.mk> |
96 |
|
97 |
.if ${ARCH} == i386 |
98 |
USES+= autoreconf |
99 |
EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-configure.ac |
100 |
.endif |
101 |
|
102 |
post-patch: |
103 |
.if !defined(UTILS_ONLY) && !defined(LIB_ONLY) |
104 |
@${REINPLACE_CMD} 's|$$(INSTALL) -d $$(DESTDIR)/\@run_dir\@|#$$(INSTALL) -d $$(DESTDIR)/\@run_dir\@|' \ |
105 |
${WRKSRC}/src/Makefile.in |
106 |
@${REINPLACE_CMD} 's|$$(INSTALL) -d $$(DESTDIR)/\@storage_dir\@|#$$(INSTALL) -d $$(DESTDIR)/\@storage_dir\@|' \ |
107 |
${WRKSRC}/src/Makefile.in |
108 |
@${RM} -r ${WRKSRC}/src/zscanner/scanner.c |
109 |
.endif |
110 |
|
111 |
post-install: |
112 |
.if !defined(UTILS_ONLY) && !defined(LIB_ONLY) |
113 |
${MV} ${STAGEDIR}${ETCDIR}/knot.sample.conf \ |
114 |
${STAGEDIR}${ETCDIR}/knot.conf.sample |
115 |
@${MKDIR} ${STAGEDIR}/var/run/knot ${STAGEDIR}/var/db/knot |
116 |
.endif |
117 |
@${MKDIR} ${STAGEDIR}${DOCSDIR} |
118 |
${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR}/ |
119 |
|
120 |
.include <bsd.port.mk> |