1 # Created by: Konstantin Saurbier <saurbier@math.uni-bielefeld.de>
8 MASTER_SITES= http://www.nlnetlabs.nl/downloads/ldns/ \
11 MAINTAINER= jaap@NLnetLabs.nl
12 COMMENT= Library for programs conforming to DNS RFCs and drafts
15 LICENSE_FILE= ${WRKSRC}/LICENSE
18 USES= cpe gmake libtool ssl perl5
23 CONFIGURE_ARGS+= --with-ssl=${OPENSSLBASE} --disable-dane-ta-usage
25 .if ! (defined(BUILD_PYLDNS) || defined(BUILD_P5PERL))
26 OPTIONS_DEFINE= DOXYGEN DRILL
27 OPTIONS_DEFAULT= DRILL
29 DRILL_DESC= With drill program
33 DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen
36 OPTIONS_DEFINE+= GOST DANETAUSAGE \
37 RRTYPENINFO RRTYPERKEY RRTYPETA RRTYPEAVC
39 DANETAUSAGE_DESC= Enable ta uasage, requires openssl >= 1.1.0
40 GOST_DESC= GOST signatures enabled, requires openssl >= 1.0.0
41 RRTYPENINFO_DESC= Enable draft RR type ninfo.
42 RRTYPERKEY_DESC= Enable draft RR type rkey.
43 RRTYPETA_DESC= Enable draft RR type ta.
44 RRTYPEAVC_DESC= Enable draft RR type avc.
48 DANETAUSAGE_CONFIGURE_ENABLE= dane-ta-usage
49 DANETAUSAGE_IMPLIES= RRTYPETA
50 GOST_CONFIGURE_ENABLE= gost
51 RRTYPENINFO_CONFIGURE_ENABLE= rrtype-ninfo
52 RRTYPERKEY_CONFIGURE_ENABLE= rrtype-rkey
53 RRTYPETA_CONFIGURE_ENABLE= rrtype-ta
54 RRTYPEAVC_CONFIGURE_ENABLE= rrtype-avc
55 #EXAMPLES_CONFIGURE_WITH= examples
56 DRILL_CONFIGURE_WITH= drill
57 DRILL_INSTALL_TARGET= install-drill
58 #EXAMPLES_INSTALL_TARGET= install-examples
59 PLIST_SUB+= EXAMPLES="@comment "
61 .if defined(BUILD_PYLDNS)
63 PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
65 INSTALL_TARGET= install-pyldns
67 CONFIGURE_ARGS+=--with-pyldns
68 LIB_DEPENDS+= libldns.so:dns/ldns
69 BUILD_DEPENDS+= ${LOCALBASE}/bin/swig:devel/swig13
70 CFLAGS+= -I${OPENSSLINC}
74 -e 's=-I./include/ldns=-I${LOCALBASE}/include/ldns=' \
76 .elif defined(BUILD_P5PERL)
79 PKGNAMEPREFIX= p5-DNS-
81 ALL_TARGET= p5-dns-ldns
82 INSTALL_TARGET= install-p5-dns-ldns
84 CONFIGURE_ARGS+=--with-p5-dns-ldns
85 LIB_DEPENDS+= libldns.so:dns/ldns
86 RUN_DEPENDS= p5-Test-Exception>=0:devel/p5-Test-Exception \
87 p5-Devel-CheckLib>=0:devel/p5-Devel-CheckLib
88 BUILD_DEPENDS=${RUN_DEPENDS}
91 @${SED} -i '' -e 's=-I./include/ldns=-I${LOCALBASE}/include/ldns=' ${WRKSRC}/Makefile.in
94 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/DNS/LDNS/LDNS.so
97 INSTALL_TARGET= install-lib install-h install-config
99 .endif # BUILD_PYLDNS || BUILD_P5PERL
101 .include <bsd.port.pre.mk>
103 .if ${PORT_OPTIONS:MDANETAUSAGE} && ${SSL_DEFAULT} != openssl-devel
104 BROKEN= this option requires openssl >= 1.1.0
107 .if ! ${PORT_OPTIONS:MGOST}
108 NO_GOST= --disable-gost
111 .if ! (defined(BUILD_PYLDNS) || defined(BUILD_P5PERL))
114 .if ${PORT_OPTIONS:MDOXYGEN}
115 @(cd ${WRKSRC}; ${MAKE_CMD} doxygen)
119 ${INSTALL_DATA} ${WRKSRC}/packaging/libldns.pc \
120 ${STAGEDIR}${PREFIX}/libdata/pkgconfig
121 ${INSTALL_MAN} ${WRKSRC}/packaging/ldns-config.1 \
122 ${STAGEDIR}${PREFIX}/man/man1
123 ${INSTALL_MAN} ${WRKSRC}/doc/man/man3/ldns_*.3 \
124 ${STAGEDIR}${PREFIX}/man/man3
125 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so.2
126 .if ${PORT_OPTIONS:MDRILL}
127 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/drill
129 .if ${PORT_OPTIONS:MXEXAMPLES}
130 for p in ldns-chaos ldns-compare-zones ldns-dane ldns-dpa ldns-gen-zone ldns-key2ds \
131 ldns-keyfetcher ldns-keygen ldns-mx ldns-notify ldns-nsec3-hash \
132 ldns-read-zone ldns-resolver ldns-revoke ldns-rrsig ldns-signzone \
133 ldns-test-edns ldns-testns ldns-update ldns-verify-zone ldns-version \
134 ldns-walk ldns-zcat ldns-zsplit ldnsd; do \
135 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/$$p; done
137 .if ${PORT_OPTIONS:MDOXYGEN}
138 ${MKDIR} ${STAGEDIR}${DOCSDIR}/html
139 ${INSTALL_DATA} ${HTMLDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}/html
142 .endif # BUILD_PYLDNS || BUILD_P5PERL
144 .include <bsd.port.post.mk>