# Created by: Konstantin Saurbier # $FreeBSD$ PORTNAME= ldns PORTVERSION= 1.7.0 PORTREVISION= 1 CATEGORIES= dns MASTER_SITES= https://www.nlnetlabs.nl/downloads/ldns/ \ LOCAL/ehaupt MAINTAINER= jaap@NLnetLabs.nl COMMENT= Library for programs conforming to DNS RFCs and drafts LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE GNU_CONFIGURE= yes USES= cpe gmake libtool ssl perl5 USE_PERL5= build CPE_VENDOR= nlnetlabs USE_LDCONFIG= yes CONFIGURE_ARGS+= --with-ssl=${OPENSSLBASE} --disable-dane-ta-usage .if ! (defined(BUILD_PYLDNS) || defined(BUILD_P5PERL)) OPTIONS_DEFINE= DOXYGEN EXAMPLES DRILL OPTIONS_DEFAULT= DRILL DRILL_DESC= With drill program .endif DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen HTMLDOCS= doc/html/* OPTIONS_DEFINE+= GOST DANETAUSAGE \ RRTYPENINFO RRTYPERKEY RRTYPETA RRTYPEAVC DANETAUSAGE_DESC= Enable ta uasage, requires openssl >= 1.1.0 GOST_DESC= GOST signatures enabled, requires openssl >= 1.0.0 RRTYPENINFO_DESC= Enable draft RR type ninfo. RRTYPERKEY_DESC= Enable draft RR type rkey. RRTYPETA_DESC= Enable draft RR type ta. RRTYPEAVC_DESC= Enable draft RR type avc. OPTIONS_SUB= yes DANETAUSAGE_CONFIGURE_ENABLE= dane-ta-usage DANETAUSAGE_IMPLIES= RRTYPETA GOST_CONFIGURE_ENABLE= gost RRTYPENINFO_CONFIGURE_ENABLE= rrtype-ninfo RRTYPERKEY_CONFIGURE_ENABLE= rrtype-rkey RRTYPETA_CONFIGURE_ENABLE= rrtype-ta RRTYPEAVC_CONFIGURE_ENABLE= rrtype-avc EXAMPLES_CONFIGURE_WITH= examples DRILL_CONFIGURE_WITH= drill DRILL_INSTALL_TARGET= install-drill EXAMPLES_INSTALL_TARGET= install-examples .if defined(BUILD_PYLDNS) USES+= python USE_PYTHON= flavors PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} ALL_TARGET= pyldns INSTALL_TARGET= install-pyldns CONFIGURE_ARGS+=--with-pyldns LIB_DEPENDS+= libldns.so:dns/ldns BUILD_DEPENDS+= swig3.0:devel/swig30 CFLAGS+= -I${OPENSSLINC} BINARY_ALIAS= swig=swig3.0 post-patch: @${REINPLACE_CMD} \ -e 's=-I./include/ldns=-I${LOCALBASE}/include/ldns=' \ ${WRKSRC}/Makefile.in .elif defined(BUILD_P5PERL) USES+= perl5 USE_PERL5= build run PKGNAMEPREFIX= p5-DNS- ALL_TARGET= p5-dns-ldns INSTALL_TARGET= install-p5-dns-ldns CONFIGURE_ARGS+=--with-p5-dns-ldns LIB_DEPENDS+= libldns.so:dns/ldns RUN_DEPENDS= p5-Test-Exception>=0:devel/p5-Test-Exception \ p5-Devel-CheckLib>=0:devel/p5-Devel-CheckLib BUILD_DEPENDS=${RUN_DEPENDS} post-patch: @${SED} -i '' -e 's=-I./include/ldns=-I${LOCALBASE}/include/ldns=' ${WRKSRC}/Makefile.in post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/DNS/LDNS/LDNS.so .else ALL_TARGET= all INSTALL_TARGET= install-lib install-h install-config .endif # BUILD_PYLDNS || BUILD_P5PERL .include .if ${PORT_OPTIONS:MDANETAUSAGE} && ${SSL_DEFAULT} != openssl-devel BROKEN= this option requires openssl >= 1.1.0 .endif .if ! ${PORT_OPTIONS:MGOST} NO_GOST= --disable-gost .endif .if ! (defined(BUILD_PYLDNS) || defined(BUILD_P5PERL)) post-build: .if ${PORT_OPTIONS:MDOXYGEN} @(cd ${WRKSRC}; ${MAKE_CMD} doxygen) .endif post-install: ${INSTALL_DATA} ${WRKSRC}/packaging/libldns.pc \ ${STAGEDIR}${PREFIX}/libdata/pkgconfig ${INSTALL_MAN} ${WRKSRC}/packaging/ldns-config.1 \ ${STAGEDIR}${PREFIX}/man/man1 ${INSTALL_MAN} ${WRKSRC}/doc/man/man3/ldns_*.3 \ ${STAGEDIR}${PREFIX}/man/man3 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so.2 .if ${PORT_OPTIONS:MDRILL} ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/drill .endif .if ${PORT_OPTIONS:MEXAMPLES} for p in ldns-chaos ldns-compare-zones ldns-dane ldns-dpa ldns-gen-zone ldns-key2ds \ ldns-keyfetcher ldns-keygen ldns-mx ldns-notify ldns-nsec3-hash \ ldns-read-zone ldns-resolver ldns-revoke ldns-rrsig ldns-signzone \ ldns-test-edns ldns-testns ldns-update ldns-verify-zone ldns-version \ ldns-walk ldns-zcat ldns-zsplit ldnsd; do \ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/$$p; done .endif .if ${PORT_OPTIONS:MDOXYGEN} ${MKDIR} ${STAGEDIR}${DOCSDIR}/html ${INSTALL_DATA} ${HTMLDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}/html .endif .endif # BUILD_PYLDNS || BUILD_P5PERL .include