ports/172586: [PATCH] dns/bind9[6789]: Add configure options and convert to OptionsNG
Craig Leres
leres at ee.lbl.gov
Wed Oct 10 22:58:34 UTC 2012
>Number: 172586
>Category: ports
>Synopsis: [PATCH] dns/bind9[6789]: Add configure options and convert to OptionsNG
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Wed Oct 10 22:58:33 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator: Craig Leres
>Release: FreeBSD 8.2-RELEASE amd64
>Organization:
Lawrence Berkeley National Laboratory
>Environment:
System: FreeBSD hot.ee.lbl.gov 8.2-RELEASE FreeBSD 8.2-RELEASE #13: Wed Jun 13 18:31:18 PDT 2012 leres at hot.ee.lbl.gov:/usr/src/8.2-RELEASE/sys/amd64/compile/LBLIPV6 amd64
>Description:
The bind ports are missing some configure options including
--enable-fixed-rrset and --enable-rpz-nsdname. Upgrade to
OptionsNG and update CONFLICTS while we're at it.
>How-To-Repeat:
>Fix:
Please see attached patches
--- patch-bind96.txt begins here ---
--- Makefile.orig 2012-10-10 12:11:45.000000000 -0700
+++ Makefile 2012-10-10 14:26:05.000000000 -0700
@@ -1,4 +1,4 @@
-# $FreeBSD: ports/dns/bind96/Makefile,v 1.127 2012/10/10 11:54:44 erwin Exp $
+# $FreeBSD$
PORTNAME= bind96
PORTVERSION= 9.6.3.1.ESV.R7.4
@@ -21,109 +21,121 @@
CONFIGURE_ARGS= --localstatedir=/var --disable-linux-caps \
--with-randomdev=/dev/random
-CONFLICTS= bind9*-9.[45789].* bind9-sdb-* host-* bind-tools-9.*
+CONFLICTS= bind9*-9.[45789].* bind9*-sdb-9.[45789].* bind-tools-9.*
-OPTIONS= SSL "Building without OpenSSL removes DNSSEC" on \
- LINKS "Create conf file symlinks in ${PREFIX}" on \
- XML "Support for xml statistics output" on \
- IDN "Add IDN support to dig, host, etc." off \
- REPLACE_BASE "Replace base BIND with this version" off \
- LARGE_FILE "64-bit file support" off \
- SIGCHASE "dig/host/nslookup will do DNSSEC validation" off \
- IPV6 "IPv6 Support (autodetected by default)" off \
- THREADS "Compile with thread support" on \
- DLZ_POSTGRESQL "DLZ Postgres driver" off \
- DLZ_MYSQL "DLZ MySQL driver (single-threaded BIND)" off \
- DLZ_BDB "DLZ BDB driver" off \
- DLZ_LDAP "DLZ LDAP driver" off \
- DLZ_FILESYSTEM "DLZ filesystem driver" off \
- DLZ_STUB "DLZ stub driver" off
+.include <bsd.port.options.mk>
-# Just in case
-USE_OPENSSL= yes
-
-.include <bsd.port.pre.mk>
+OPTIONS_DEFINE= SSL LINKS XML IDN REPLACE_BASE LARGE_FILE SIGCHASE \
+ IPV6 THREADS FIXED_RRSET \
+ DLZ_POSTGRESQL DLZ_MYSQL DLZ_BDB DLZ_LDAP DLZ_FILESYSTEM \
+ DLZ_STUB
+
+OPTIONS_DEFAULT=SSL LINKS XML THREADS
+
+SSL_DESC= Building without OpenSSL removes DNSSEC
+LINKS_DESC= Create conf file symlinks in ${PREFIX}
+XML_DESC= Support for xml statistics output
+IDN_DESC= Add IDN support to dig, host, etc.
+REPLACE_BASE_DESC= Replace base BIND with this version
+LARGE_FILE_DESC= 64-bit file support
+SIGCHASE_DESC= dig/host/nslookup will do DNSSEC validation
+IPV6_DESC= IPv6 Support (autodetected by default)
+THREADS_DESC= Compile with thread support
+FIXED_RRSET_DESC= Enable fixed rrset ordering
+DLZ_POSTGRESQL_DESC= DLZ Postgres driver
+DLZ_MYSQL_DESC= DLZ MySQL driver (single-threaded BIND)
+DLZ_BDB_DESC= DLZ BDB driver
+DLZ_LDAP_DESC= DLZ LDAP driver
+DLZ_FILESYSTEM_DESC= DLZ filesystem driver
+DLZ_STUB_DESC= DLZ stub driver
.if (${ARCH} == "amd64")
ARCH= x86_64
.endif
-.if !defined(WITHOUT_SSL)
+.if ${PORT_OPTIONS:MSSL}
CONFIGURE_ARGS+= --with-openssl=${OPENSSLBASE}
+USE_OPENSSL= yes
.else
CONFIGURE_ARGS+= --disable-openssl-version-check
CONFIGURE_ARGS+= --without-openssl
.endif
-.if !defined(WITHOUT_XML)
+.if ${PORT_OPTIONS:MXML}
CONFIGURE_ARGS+= --with-libxml2=${LOCALBASE}
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.else
CONFIGURE_ARGS+= --without-libxml2
.endif
-.if defined(WITH_IDN)
+.if ${PORT_OPTIONS:MIDN}
CONFIGURE_ARGS+= --with-idn=${LOCALBASE} --with-libiconv=${LOCALBASE}
LIB_DEPENDS+= idnkit.1:${PORTSDIR}/dns/idnkit
.else
CONFIGURE_ARGS+= --without-idn
.endif
-.if !defined(WITHOUT_LINKS) && !defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MLINKS} && empty(PORT_OPTIONS:MREPLACE_BASE)
PLIST_SUB+= LINKS=""
.else
PLIST_SUB+= LINKS="@comment "
.endif
-.if defined(WITH_LARGE_FILE)
+.if ${PORT_OPTIONS:MLARGE_FILE}
CONFIGURE_ARGS+= --enable-largefile
.endif
-.if defined(WITH_SIGCHASE)
+.if ${PORT_OPTIONS:MSIGCHASE}
CONFIGURE_ARGS+= STD_CDEFINES="-DDIG_SIGCHASE=1"
.endif
-.if defined(WITH_IPV6)
+.if ${PORT_OPTIONS:MIPV6}
CONFIGURE_ARGS+= --enable-ipv6
.endif
-.if defined(WITH_DLZ_POSTGRESQL)
+.if ${PORT_OPTIONS:MTHREADS}
+CONFIGURE_ARGS+= --enable-threads
+.else
+CONFIGURE_ARGS+= --disable-threads
+.endif
+
+.if ${PORT_OPTIONS:MFIXED_RRSET}
+CONFIGURE_ARGS+= --enable-fixed-rrset
+.endif
+
+.if ${PORT_OPTIONS:MDLZ_POSTGRESQL}
CONFIGURE_ARGS+= --with-dlz-postgres=yes
USE_PGSQL= yes
.endif
-.if defined(WITH_DLZ_MYSQL)
+.if ${PORT_OPTIONS:MDLZ_MYSQL}
CONFIGURE_ARGS+= --with-dlz-mysql=yes
USE_MYSQL= yes
-WITHOUT_THREADS= yes
+.if ${PORT_OPTIONS:MTHREADS}
+ @${ECHO_CMD} "Incompatible options: DLZ_MYSQL and THREADS"
+ @${FALSE}
+.endif
.endif
-.if defined(WITH_DLZ_BDB)
+.if ${PORT_OPTIONS:MDLZ_BDB}
CONFIGURE_ARGS+= --with-dlz-bdb=yes
USE_BDB= yes
.endif
-.if defined(WITH_DLZ_LDAP)
+.if ${PORT_OPTIONS:MDLZ_LDAP}
CONFIGURE_ARGS+= --with-dlz-ldap=yes
USE_OPENLDAP= yes
.endif
-.if defined(WITH_DLZ_FILESYSTEM)
+.if ${PORT_OPTIONS:MDLZ_FILESYSTEM}
CONFIGURE_ARGS+= --with-dlz-filesystem=yes
.endif
-.if defined(WITH_DLZ_STUB)
+.if ${PORT_OPTIONS:MDLZ_STUB}
CONFIGURE_ARGS+= --with-dlz-stub=yes
.endif
-# Has to be after the DLZ_MYSQL option
-.if !defined(WITHOUT_THREADS)
-CONFIGURE_ARGS+= --enable-threads
-.else
-CONFIGURE_ARGS+= --disable-threads
-.endif
-
-.if defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MREPLACE_BASE}
PKGNAMESUFFIX= -base
PREFIX= /usr
BIND_DESTETC= /etc/namedb
@@ -178,6 +190,8 @@
verify: checksum
gpg --verify ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}.asc
+.include <bsd.port.pre.mk>
+
post-patch:
.for FILE in check/named-checkconf.8 named/named.8 nsupdate/nsupdate.1 \
rndc/rndc.8
@@ -204,7 +218,7 @@
${CP} ${WRKSRC}/CHANGES ${WRKSRC}/COPYRIGHT ${WRKSRC}/FAQ \
${WRKSRC}/NSEC3-NOTES ${WRKSRC}/README* ${DOCSDIR}/
.endif
-.if !defined(WITHOUT_LINKS) && !defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MLINKS} && empty(PORT_OPTIONS:MREPLACE_BASE)
PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.endif
--- patch-bind96.txt ends here ---
--- patch-bind97.txt begins here ---
--- Makefile.orig 2012-10-10 12:11:45.000000000 -0700
+++ Makefile 2012-10-10 14:26:09.000000000 -0700
@@ -1,4 +1,4 @@
-# $FreeBSD: ports/dns/bind97/Makefile,v 1.30 2012/10/10 11:54:44 erwin Exp $
+# $FreeBSD$
PORTNAME?= bind97
PORTVERSION= 9.7.6.4
@@ -23,112 +23,127 @@
--disable-symtable \
--with-randomdev=/dev/random
-CONFLICTS= bind9*-9.[45689].* bind9-sdb-* host-*
+CONFLICTS= bind9*-9.[45789].* bind9*-sdb-9.[45789].*
-OPTIONS+= SSL "Building without OpenSSL removes DNSSEC" on \
- IDN "Add IDN support to dig, host, etc." off \
- REPLACE_BASE "Replace base BIND with this version" off \
- LARGE_FILE "64-bit file support" off \
- SIGCHASE "dig/host/nslookup will do DNSSEC validation" off \
- IPV6 "IPv6 Support (autodetected by default)" off \
- THREADS "Compile with thread support" on
+.include <bsd.port.options.mk>
+
+OPTIONS_DEFINE= SSL IDN REPLACE_BASE LARGE_FILE SIGCHASE IPV6 THREADS
.if !defined(BIND_TOOLS_SLAVE)
-OPTIONS+= LINKS "Create conf file symlinks in ${PREFIX}" on \
- XML "Support for xml statistics output" on \
- DLZ_POSTGRESQL "DLZ Postgres driver" off \
- DLZ_MYSQL "DLZ MySQL driver (single-threaded BIND)" off \
- DLZ_BDB "DLZ BDB driver" off \
- DLZ_LDAP "DLZ LDAP driver" off \
- DLZ_FILESYSTEM "DLZ filesystem driver" off \
- DLZ_STUB "DLZ stub driver" off
+OPTIONS_DEFINE+=LINKS XML FIXED_RRSET DLZ_POSTGRESQL DLZ_MYSQL \
+ DLZ_BDB DLZ_LDAP DLZ_FILESYSTEM DLZ_STUB
+
CONFLICTS+= bind-tools-9.*
.endif
-# Just in case
-USE_OPENSSL= yes
+OPTIONS_DEFAULT=THREADS
+.if !defined(BIND_TOOLS_SLAVE)
+OPTIONS_DEFAULT+=LINKS XML
+.endif
-.include <bsd.port.pre.mk>
+SSL_DESC= Building without OpenSSL removes DNSSEC
+LINKS_DESC= Create conf file symlinks in ${PREFIX}
+XML_DESC= Support for xml statistics output
+IDN_DESC= Add IDN support to dig, host, etc.
+REPLACE_BASE_DESC= Replace base BIND with this version
+LARGE_FILE_DESC= 64-bit file support
+SIGCHASE_DESC= dig/host/nslookup will do DNSSEC validation
+IPV6_DESC= IPv6 Support (autodetected by default)
+THREADS_DESC= Compile with thread support
+FIXED_RRSET_DESC= Enable fixed rrset ordering
+DLZ_POSTGRESQL_DESC= DLZ Postgres driver
+DLZ_MYSQL_DESC= DLZ MySQL driver (single-threaded BIND)
+DLZ_BDB_DESC= DLZ BDB driver
+DLZ_LDAP_DESC= DLZ LDAP driver
+DLZ_FILESYSTEM_DESC= DLZ filesystem driver
+DLZ_STUB_DESC= DLZ stub driver
.if (${ARCH} == "amd64")
ARCH= x86_64
.endif
-.if !defined(WITHOUT_SSL)
+.if ${PORT_OPTIONS:MSSL}
CONFIGURE_ARGS+= --with-openssl=${OPENSSLBASE}
+USE_OPENSSL= yes
.else
CONFIGURE_ARGS+= --disable-openssl-version-check
CONFIGURE_ARGS+= --without-openssl
.endif
-.if !defined(WITHOUT_XML) && !defined(BIND_TOOLS_SLAVE)
+.if ${PORT_OPTIONS:MXML} && !defined(BIND_TOOLS_SLAVE)
CONFIGURE_ARGS+= --with-libxml2=${LOCALBASE}
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.else
CONFIGURE_ARGS+= --without-libxml2
.endif
-.if defined(WITH_IDN)
+.if ${PORT_OPTIONS:MIDN}
CONFIGURE_ARGS+= --with-idn=${LOCALBASE} --with-libiconv=${LOCALBASE}
LIB_DEPENDS+= idnkit.1:${PORTSDIR}/dns/idnkit
.else
CONFIGURE_ARGS+= --without-idn
.endif
-.if !defined(WITHOUT_LINKS) && !defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MLINKS} && empty(PORT_OPTIONS:MREPLACE_BASE)
PLIST_SUB+= LINKS=""
.else
PLIST_SUB+= LINKS="@comment "
.endif
-.if defined(WITH_LARGE_FILE)
+.if ${PORT_OPTIONS:MLARGE_FILE}
CONFIGURE_ARGS+= --enable-largefile
.endif
-.if defined(WITH_SIGCHASE)
+.if ${PORT_OPTIONS:MSIGCHASE}
CONFIGURE_ARGS+= STD_CDEFINES="-DDIG_SIGCHASE=1"
.endif
-.if defined(WITH_IPV6)
+.if ${PORT_OPTIONS:MIPV6}
CONFIGURE_ARGS+= --enable-ipv6
.endif
-.if defined(WITH_DLZ_POSTGRESQL)
+.if ${PORT_OPTIONS:MTHREADS}
+CONFIGURE_ARGS+= --enable-threads
+.else
+CONFIGURE_ARGS+= --disable-threads
+.endif
+
+.if ${PORT_OPTIONS:MFIXED_RRSET}
+CONFIGURE_ARGS+= --enable-fixed-rrset
+.endif
+
+.if ${PORT_OPTIONS:MDLZ_POSTGRESQL}
CONFIGURE_ARGS+= --with-dlz-postgres=yes
USE_PGSQL= yes
.endif
-.if defined(WITH_DLZ_MYSQL)
+.if ${PORT_OPTIONS:MDLZ_MYSQL}
CONFIGURE_ARGS+= --with-dlz-mysql=yes
USE_MYSQL= yes
-WITHOUT_THREADS= yes
+.if ${PORT_OPTIONS:MTHREADS}
+ @${ECHO_CMD} "Incompatible options: DLZ_MYSQL and THREADS"
+ @${FALSE}
+.endif
.endif
-.if defined(WITH_DLZ_BDB)
+.if ${PORT_OPTIONS:MDLZ_BDB}
CONFIGURE_ARGS+= --with-dlz-bdb=yes
USE_BDB= yes
.endif
-.if defined(WITH_DLZ_LDAP)
+.if ${PORT_OPTIONS:MDLZ_LDAP}
CONFIGURE_ARGS+= --with-dlz-ldap=yes
USE_OPENLDAP= yes
.endif
-.if defined(WITH_DLZ_FILESYSTEM)
+.if ${PORT_OPTIONS:MDLZ_FILESYSTEM}
CONFIGURE_ARGS+= --with-dlz-filesystem=yes
.endif
-.if defined(WITH_DLZ_STUB)
+.if ${PORT_OPTIONS:MDLZ_STUB}
CONFIGURE_ARGS+= --with-dlz-stub=yes
.endif
-# Has to be after the DLZ_MYSQL option
-.if !defined(WITHOUT_THREADS)
-CONFIGURE_ARGS+= --enable-threads
-.else
-CONFIGURE_ARGS+= --disable-threads
-.endif
-
-.if defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MREPLACE_BASE}
PKGNAMESUFFIX= -base
PREFIX= /usr
BIND_DESTETC= /etc/namedb
@@ -187,6 +202,8 @@
verify: checksum
gpg --verify ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}.asc
+.include <bsd.port.pre.mk>
+
.if !defined(BIND_TOOLS_SLAVE)
post-patch:
.for FILE in check/named-checkconf.8 named/named.8 nsupdate/nsupdate.1 \
@@ -219,7 +236,7 @@
${CP} ${WRKSRC}/CHANGES ${WRKSRC}/COPYRIGHT ${WRKSRC}/FAQ* \
${WRKSRC}/README ${DOCSDIR}/
.endif
-.if !defined(WITHOUT_LINKS) && !defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MLINKS} && empty(PORT_OPTIONS:MREPLACE_BASE)
PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.endif
--- patch-bind97.txt ends here ---
--- patch-bind98.txt begins here ---
--- Makefile.orig 2012-10-10 12:11:45.000000000 -0700
+++ Makefile 2012-10-10 14:26:11.000000000 -0700
@@ -1,4 +1,4 @@
-# $FreeBSD: ports/dns/bind98/Makefile,v 1.20 2012/10/10 11:54:44 erwin Exp $
+# $FreeBSD$
PORTNAME= bind98
PORTVERSION= 9.8.3.4
@@ -22,109 +22,131 @@
--disable-symtable \
--with-randomdev=/dev/random
-CONFLICTS= bind9*-9.[45679].* bind9-sdb-* host-* bind-tools-9.*
+CONFLICTS= bind9*-9.[45789].* bind9*-sdb-9.[45789].* bind-tools-9.*
-OPTIONS= SSL "Building without OpenSSL removes DNSSEC" on \
- LINKS "Create conf file symlinks in ${PREFIX}" on \
- XML "Support for xml statistics output" on \
- IDN "Add IDN support to dig, host, etc." off \
- REPLACE_BASE "Replace base BIND with this version" off \
- LARGE_FILE "64-bit file support" off \
- SIGCHASE "dig/host/nslookup will do DNSSEC validation" off \
- IPV6 "IPv6 Support (autodetected by default)" off \
- THREADS "Compile with thread support" on \
- DLZ_POSTGRESQL "DLZ Postgres driver" off \
- DLZ_MYSQL "DLZ MySQL driver (single-threaded BIND)" off \
- DLZ_BDB "DLZ BDB driver" off \
- DLZ_LDAP "DLZ LDAP driver" off \
- DLZ_FILESYSTEM "DLZ filesystem driver" off \
- DLZ_STUB "DLZ stub driver" off
+.include <bsd.port.options.mk>
-# Just in case
-USE_OPENSSL= yes
-
-.include <bsd.port.pre.mk>
+OPTIONS_DEFINE= SSL LINKS XML IDN REPLACE_BASE LARGE_FILE SIGCHASE \
+ IPV6 THREADS FIXED_RRSET RPZ_NSIP RPZ_NSDNAME \
+ DLZ_POSTGRESQL DLZ_MYSQL DLZ_BDB DLZ_LDAP DLZ_FILESYSTEM \
+ DLZ_STUB
+
+OPTIONS_DEFAULT=SSL LINKS XML THREADS
+
+SSL_DESC= Building without OpenSSL removes DNSSEC
+LINKS_DESC= Create conf file symlinks in ${PREFIX}
+XML_DESC= Support for xml statistics output
+IDN_DESC= Add IDN support to dig, host, etc.
+REPLACE_BASE_DESC= Replace base BIND with this version
+LARGE_FILE_DESC= 64-bit file support
+SIGCHASE_DESC= dig/host/nslookup will do DNSSEC validation
+IPV6_DESC= IPv6 Support (autodetected by default)
+THREADS_DESC= Compile with thread support
+FIXED_RRSET_DESC= Enable fixed rrset ordering
+RPZ_NSIP_DESC= Enable RPZ NSIP trigger rules
+RPZ_NSDNAME_DESC= Enable RPZ NSDNAME policy records
+DLZ_POSTGRESQL_DESC= DLZ Postgres driver
+DLZ_MYSQL_DESC= DLZ MySQL driver (single-threaded BIND)
+DLZ_BDB_DESC= DLZ BDB driver
+DLZ_LDAP_DESC= DLZ LDAP driver
+DLZ_FILESYSTEM_DESC= DLZ filesystem driver
+DLZ_STUB_DESC= DLZ stub driver
.if (${ARCH} == "amd64")
ARCH= x86_64
.endif
-.if !defined(WITHOUT_SSL)
+.if ${PORT_OPTIONS:MSSL}
CONFIGURE_ARGS+= --with-openssl=${OPENSSLBASE}
+USE_OPENSSL= yes
.else
CONFIGURE_ARGS+= --disable-openssl-version-check
CONFIGURE_ARGS+= --without-openssl
.endif
-.if !defined(WITHOUT_XML)
+.if ${PORT_OPTIONS:MXML}
CONFIGURE_ARGS+= --with-libxml2=${LOCALBASE}
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.else
CONFIGURE_ARGS+= --without-libxml2
.endif
-.if defined(WITH_IDN)
+.if ${PORT_OPTIONS:MIDN}
CONFIGURE_ARGS+= --with-idn=${LOCALBASE} --with-libiconv=${LOCALBASE}
LIB_DEPENDS+= idnkit.1:${PORTSDIR}/dns/idnkit
.else
CONFIGURE_ARGS+= --without-idn
.endif
-.if !defined(WITHOUT_LINKS) && !defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MLINKS} && empty(PORT_OPTIONS:MREPLACE_BASE)
PLIST_SUB+= LINKS=""
.else
PLIST_SUB+= LINKS="@comment "
.endif
-.if defined(WITH_LARGE_FILE)
+.if ${PORT_OPTIONS:MLARGE_FILE}
CONFIGURE_ARGS+= --enable-largefile
.endif
-.if defined(WITH_SIGCHASE)
+.if ${PORT_OPTIONS:MSIGCHASE}
CONFIGURE_ARGS+= STD_CDEFINES="-DDIG_SIGCHASE=1"
.endif
-.if defined(WITH_IPV6)
+.if ${PORT_OPTIONS:MIPV6}
CONFIGURE_ARGS+= --enable-ipv6
.endif
-.if defined(WITH_DLZ_POSTGRESQL)
+.if ${PORT_OPTIONS:MTHREADS}
+CONFIGURE_ARGS+= --enable-threads
+.else
+CONFIGURE_ARGS+= --disable-threads
+.endif
+
+.if ${PORT_OPTIONS:MFIXED_RRSET}
+CONFIGURE_ARGS+= --enable-fixed-rrset
+.endif
+
+.if ${PORT_OPTIONS:MRPZ_NSIP}
+CONFIGURE_ARGS+= --enable-rpz-nsip
+.endif
+
+.if ${PORT_OPTIONS:MRPZ_NSDNAME}
+CONFIGURE_ARGS+= --enable-rpz-nsdname
+.endif
+
+.if ${PORT_OPTIONS:MDLZ_POSTGRESQL}
CONFIGURE_ARGS+= --with-dlz-postgres=yes
USE_PGSQL= yes
.endif
-.if defined(WITH_DLZ_MYSQL)
+.if ${PORT_OPTIONS:MDLZ_MYSQL}
CONFIGURE_ARGS+= --with-dlz-mysql=yes
USE_MYSQL= yes
-WITHOUT_THREADS= yes
+.if ${PORT_OPTIONS:MTHREADS}
+ @${ECHO_CMD} "Incompatible options: DLZ_MYSQL and THREADS"
+ @${FALSE}
+.endif
.endif
-.if defined(WITH_DLZ_BDB)
+.if ${PORT_OPTIONS:MDLZ_BDB}
CONFIGURE_ARGS+= --with-dlz-bdb=yes
USE_BDB= yes
.endif
-.if defined(WITH_DLZ_LDAP)
+.if ${PORT_OPTIONS:MDLZ_LDAP}
CONFIGURE_ARGS+= --with-dlz-ldap=yes
USE_OPENLDAP= yes
.endif
-.if defined(WITH_DLZ_FILESYSTEM)
+.if ${PORT_OPTIONS:MDLZ_FILESYSTEM}
CONFIGURE_ARGS+= --with-dlz-filesystem=yes
.endif
-.if defined(WITH_DLZ_STUB)
+.if ${PORT_OPTIONS:MDLZ_STUB}
CONFIGURE_ARGS+= --with-dlz-stub=yes
.endif
-# Has to be after the DLZ_MYSQL option
-.if !defined(WITHOUT_THREADS)
-CONFIGURE_ARGS+= --enable-threads
-.else
-CONFIGURE_ARGS+= --disable-threads
-.endif
-
-.if defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MREPLACE_BASE}
PKGNAMESUFFIX= -base
PREFIX= /usr
BIND_DESTETC= /etc/namedb
@@ -181,6 +203,8 @@
verify: checksum
gpg --verify ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}.asc
+.include <bsd.port.pre.mk>
+
post-patch:
.for FILE in check/named-checkconf.8 named/named.8 nsupdate/nsupdate.1 \
rndc/rndc.8
@@ -214,7 +238,7 @@
${CP} ${WRKSRC}/CHANGES ${WRKSRC}/COPYRIGHT ${WRKSRC}/FAQ \
${WRKSRC}/HISTORY ${WRKSRC}/README ${DOCSDIR}/
.endif
-.if !defined(WITHOUT_LINKS) && !defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MLINKS} && empty(PORT_OPTIONS:MREPLACE_BASE)
PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.endif
--- patch-bind98.txt ends here ---
--- patch-bind99.txt begins here ---
--- Makefile.orig 2012-10-10 12:11:45.000000000 -0700
+++ Makefile 2012-10-10 14:26:13.000000000 -0700
@@ -1,4 +1,4 @@
-# $FreeBSD: ports/dns/bind99/Makefile,v 1.14 2012/10/10 11:54:44 erwin Exp $
+# $FreeBSD$
PORTNAME= bind99
PORTVERSION= 9.9.1.4
@@ -22,26 +22,35 @@
--disable-symtable \
--with-randomdev=/dev/random
-CONFLICTS= bind9*-9.[45678].* bind9-sdb-* host-* bind-tools-9.*
+CONFLICTS= bind9*-9.[45789].* bind9*-sdb-9.[45789].* bind-tools-9.*
-OPTIONS= SSL "Building without OpenSSL removes DNSSEC" on \
- LINKS "Create conf file symlinks in ${PREFIX}" on \
- XML "Support for xml statistics output" on \
- IDN "Add IDN support to dig, host, etc." off \
- REPLACE_BASE "Replace base BIND with this version" off \
- LARGE_FILE "64-bit file support" off \
- SIGCHASE "dig/host/nslookup will do DNSSEC validation" off \
- IPV6 "IPv6 Support (autodetected by default)" off \
- THREADS "Compile with thread support" on \
- DLZ_POSTGRESQL "DLZ Postgres driver" off \
- DLZ_MYSQL "DLZ MySQL driver (single-threaded BIND)" off \
- DLZ_BDB "DLZ BDB driver" off \
- DLZ_LDAP "DLZ LDAP driver" off \
- DLZ_FILESYSTEM "DLZ filesystem driver" off \
- DLZ_STUB "DLZ stub driver" off
+.include <bsd.port.options.mk>
-# Just in case
-USE_OPENSSL= yes
+OPTIONS_DEFINE= SSL LINKS XML IDN REPLACE_BASE LARGE_FILE SIGCHASE \
+ IPV6 THREADS FIXED_RRSET RPZ_NSIP RPZ_NSDNAME \
+ DLZ_POSTGRESQL DLZ_MYSQL DLZ_BDB DLZ_LDAP DLZ_FILESYSTEM \
+ DLZ_STUB
+
+OPTIONS_DEFAULT=SSL LINKS XML THREADS
+
+SSL_DESC= Building without OpenSSL removes DNSSEC
+LINKS_DESC= Create conf file symlinks in ${PREFIX}
+XML_DESC= Support for xml statistics output
+IDN_DESC= Add IDN support to dig, host, etc.
+REPLACE_BASE_DESC= Replace base BIND with this version
+LARGE_FILE_DESC= 64-bit file support
+SIGCHASE_DESC= dig/host/nslookup will do DNSSEC validation
+IPV6_DESC= IPv6 Support (autodetected by default)
+THREADS_DESC= Compile with thread support
+FIXED_RRSET_DESC= Enable fixed rrset ordering
+RPZ_NSIP_DESC= Enable RPZ NSIP trigger rules
+RPZ_NSDNAME_DESC= Enable RPZ NSDNAME policy records
+DLZ_POSTGRESQL_DESC= DLZ Postgres driver
+DLZ_MYSQL_DESC= DLZ MySQL driver (single-threaded BIND)
+DLZ_BDB_DESC= DLZ BDB driver
+DLZ_LDAP_DESC= DLZ LDAP driver
+DLZ_FILESYSTEM_DESC= DLZ filesystem driver
+DLZ_STUB_DESC= DLZ stub driver
.include <bsd.port.pre.mk>
@@ -49,82 +58,97 @@
ARCH= x86_64
.endif
-.if !defined(WITHOUT_SSL)
+.if ${PORT_OPTIONS:MSSL}
CONFIGURE_ARGS+= --with-openssl=${OPENSSLBASE}
+USE_OPENSSL= yes
.else
CONFIGURE_ARGS+= --disable-openssl-version-check
CONFIGURE_ARGS+= --without-openssl
.endif
-.if !defined(WITHOUT_XML)
+.if ${PORT_OPTIONS:MXML}
CONFIGURE_ARGS+= --with-libxml2=${LOCALBASE}
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.else
CONFIGURE_ARGS+= --without-libxml2
.endif
-.if defined(WITH_IDN)
+.if ${PORT_OPTIONS:MIDN}
CONFIGURE_ARGS+= --with-idn=${LOCALBASE} --with-libiconv=${LOCALBASE}
LIB_DEPENDS+= idnkit.1:${PORTSDIR}/dns/idnkit
.else
CONFIGURE_ARGS+= --without-idn
.endif
-.if !defined(WITHOUT_LINKS) && !defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MLINKS} && empty(PORT_OPTIONS:MREPLACE_BASE)
PLIST_SUB+= LINKS=""
.else
PLIST_SUB+= LINKS="@comment "
.endif
-.if defined(WITH_LARGE_FILE)
+.if ${PORT_OPTIONS:MLARGE_FILE}
CONFIGURE_ARGS+= --enable-largefile
.endif
-.if defined(WITH_SIGCHASE)
+.if ${PORT_OPTIONS:MSIGCHASE}
CONFIGURE_ARGS+= STD_CDEFINES="-DDIG_SIGCHASE=1"
.endif
-.if defined(WITH_IPV6)
+.if ${PORT_OPTIONS:MIPV6}
CONFIGURE_ARGS+= --enable-ipv6
.endif
-.if defined(WITH_DLZ_POSTGRESQL)
+.if ${PORT_OPTIONS:MTHREADS}
+CONFIGURE_ARGS+= --enable-threads
+.else
+CONFIGURE_ARGS+= --disable-threads
+.endif
+
+.if ${PORT_OPTIONS:MFIXED_RRSET}
+CONFIGURE_ARGS+= --enable-fixed-rrset
+.endif
+
+.if ${PORT_OPTIONS:MRPZ_NSIP}
+CONFIGURE_ARGS+= --enable-rpz-nsip
+.endif
+
+.if ${PORT_OPTIONS:MRPZ_NSDNAME}
+CONFIGURE_ARGS+= --enable-rpz-nsdname
+.endif
+
+.if ${PORT_OPTIONS:MDLZ_POSTGRESQL}
CONFIGURE_ARGS+= --with-dlz-postgres=yes
USE_PGSQL= yes
.endif
-.if defined(WITH_DLZ_MYSQL)
+.if ${PORT_OPTIONS:MDLZ_MYSQL}
CONFIGURE_ARGS+= --with-dlz-mysql=yes
USE_MYSQL= yes
-WITHOUT_THREADS= yes
+.if ${PORT_OPTIONS:MTHREADS}
+ @${ECHO_CMD} "Incompatible options: DLZ_MYSQL and THREADS"
+ @${FALSE}
+.endif
.endif
-.if defined(WITH_DLZ_BDB)
+.if ${PORT_OPTIONS:MDLZ_BDB}
CONFIGURE_ARGS+= --with-dlz-bdb=yes
USE_BDB= yes
.endif
-.if defined(WITH_DLZ_LDAP)
+.if ${PORT_OPTIONS:MDLZ_LDAP}
CONFIGURE_ARGS+= --with-dlz-ldap=yes
USE_OPENLDAP= yes
.endif
-.if defined(WITH_DLZ_FILESYSTEM)
+.if ${PORT_OPTIONS:MDLZ_FILESYSTEM}
CONFIGURE_ARGS+= --with-dlz-filesystem=yes
.endif
-.if defined(WITH_DLZ_STUB)
+.if ${PORT_OPTIONS:MDLZ_STUB}
CONFIGURE_ARGS+= --with-dlz-stub=yes
.endif
-# Has to be after the DLZ_MYSQL option
-.if !defined(WITHOUT_THREADS)
-CONFIGURE_ARGS+= --enable-threads
-.else
-CONFIGURE_ARGS+= --disable-threads
-.endif
-
-.if defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MREPLACE_BASE}
PKGNAMESUFFIX= -base
PREFIX= /usr
BIND_DESTETC= /etc/namedb
@@ -214,7 +238,7 @@
${CP} ${WRKSRC}/CHANGES ${WRKSRC}/COPYRIGHT ${WRKSRC}/FAQ \
${WRKSRC}/HISTORY ${WRKSRC}/README ${DOCSDIR}/
.endif
-.if !defined(WITHOUT_LINKS) && !defined(WITH_REPLACE_BASE)
+.if ${PORT_OPTIONS:MLINKS} && empty(PORT_OPTIONS:MREPLACE_BASE)
PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.endif
--- patch-bind99.txt ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list