aboutsummaryrefslogtreecommitdiff
path: root/dns/nsd
diff options
context:
space:
mode:
authorEdwin Groothuis <edwin@FreeBSD.org>2005-02-07 21:51:13 +0000
committerEdwin Groothuis <edwin@FreeBSD.org>2005-02-07 21:51:13 +0000
commit2926ccd9e637bafff0c35a6e9dbf37795151e5a5 (patch)
treec98a26939471146d2fd68a473c91eb10b255568f /dns/nsd
parentbaca421960de869cce3d3a01d3705d322003324d (diff)
downloadports-2926ccd9e637bafff0c35a6e9dbf37795151e5a5.tar.gz
ports-2926ccd9e637bafff0c35a6e9dbf37795151e5a5.zip
Notes
Diffstat (limited to 'dns/nsd')
-rw-r--r--dns/nsd/Makefile77
-rw-r--r--dns/nsd/distinfo4
-rw-r--r--dns/nsd/pkg-plist5
-rw-r--r--dns/nsd/scripts/configure.nsd86
4 files changed, 120 insertions, 52 deletions
diff --git a/dns/nsd/Makefile b/dns/nsd/Makefile
index 775834b4be73..2b7bc88e9db8 100644
--- a/dns/nsd/Makefile
+++ b/dns/nsd/Makefile
@@ -5,8 +5,15 @@
# $FreeBSD$
#
+# To pre-select options in batch mode, run make like this:
+#
+# make -DBATCH NSD_OPTIONS="ROOT_SERVER BIND8_STATS"
+#
+# the options are the same names as in the scripts/configure.nsd file.
+# NSD_OPTIONS can be set in /etc/make.conf also.
+
PORTNAME= nsd
-PORTVERSION= 2.1.5
+PORTVERSION= 2.2.0
CATEGORIES= dns ipv6
MASTER_SITES= http://www.nlnetlabs.nl/downloads/nsd/ \
ftp://ftp.rhnet.is/pub/nsd/
@@ -19,70 +26,41 @@ USE_RC_SUBR= yes
NSDUSER?= bind
NSDDIR?= ${PREFIX}/etc/nsd
NSDDBFILE?= /var/db/nsd.database
-NSDXFER?= /usr/libexec/named-xfer
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --with-user=${NSDUSER} \
--with-configdir=${NSDDIR} \
--with-pidfile=/var/run/nsd.pid \
--with-dbfile=${NSDDBFILE} \
- --with-namedxfer=${NSDXFER} \
--with-libwrap
CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
-.if defined(WITHOUT_IPV6)
-CONFIGURE_ARGS+= --disable-ipv6
-.endif
-
-.if defined(WITHOUT_AXFR)
-CONFIGURE_ARGS+= --disable-axfr
-.endif
-
-.if defined(WITH_PLUGINS)
-CONFIGURE_ARGS+= --enable-plugins
-.endif
-
-.if defined(WITH_BIND8_STATS)
-CONFIGURE_ARGS+= --enable-bind8-stats
-.endif
-
-.if defined(WITH_DNSSEC)
-CONFIGURE_ARGS+= --enable-dnssec
-.endif
-
-.if defined(WITH_ROOT_SERVER)
-CONFIGURE_ARGS+= --enable-root-server
-.endif
-
-.if defined(WITH_MMAP)
-CONFIGURE_ARGS+= --enable-mmap
-.endif
-
SED_SCRIPT= -e 's,%%NSDUSER%%,${NSDUSER},g' \
-e 's,%%NSDDIR%%,${NSDDIR},g' \
-e 's,%%PREFIX%%,${PREFIX},g' \
-e 's,%%RC_SUBR%%,${RC_SUBR},g'
-MAN8= nsd.8 zonec.8 nsdc.8 nsd-notify.8
+MAN8= nsd.8 zonec.8 nsdc.8 nsd-notify.8 nsd-xfer.8
PORTDOCS= README RELNOTES CREDITS DIFFERENCES REQUIREMENTS
-pre-everything::
- @${ECHO_MSG} ""
- @${ECHO_MSG} "nsd has the following tunables:"
- @${ECHO_MSG} ""
- @${ECHO_MSG} " WITHOUT_IPV6 Disables IPv6 support"
- @${ECHO_MSG} " WITHOUT_AXFR Disables AXFR"
- @${ECHO_MSG} ""
- @${ECHO_MSG} " WITH_PLUGINS Enable plugin support"
- @${ECHO_MSG} " WITH_BIND8_STATS Enables BIND8 like NSTATS & XSTATS"
- @${ECHO_MSG} " WITH_DNSSEC Enable experimental DNSSEC support"
- @${ECHO_MSG} " according to the latest drafts"
- @${ECHO_MSG} " WITH_ROOT_SERVER Configure NSD as a root server"
- @${ECHO_MSG} " WITH_MMAP Configure NSD to load the database using mmap(2)"
- @${ECHO_MSG} ""
-
-pre-build:
+SCRIPTS_ENV= WRKDIRPREFIX="${WRKDIRPREFIX}" \
+ TOUCH="${TOUCH}" \
+ MKDIR="${MKDIR}" \
+ NSD_OPTIONS="${NSD_OPTIONS}"
+
+pre-fetch:
+ @${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure.nsd
+
+.if exists(${WRKDIRPREFIX}${.CURDIR}/Makefile.inc)
+.include "${WRKDIRPREFIX}${.CURDIR}/Makefile.inc"
+.endif
+
+.if defined(NOPORTDOCS)
+READMEDIR=no
+.else
+READMEDIR=${PREFIX}/share/doc/nsd
+.endif
post-install:
${SED} ${SED_SCRIPT} < ${FILESDIR}/nsd.sh.tmpl >${WRKDIR}/nsd.sh
@@ -97,4 +75,7 @@ post-install:
${INSTALL_SCRIPT} ${WRKDIR}/nsd.sh ${PREFIX}/etc/rc.d/
@${CAT} ${PKGMESSAGE}
+post-clean:
+ @${RM} -f ${WRKDIRPREFIX}${.CURDIR}/Makefile.inc
+
.include <bsd.port.mk>
diff --git a/dns/nsd/distinfo b/dns/nsd/distinfo
index 596cfe7dee2b..37289afec473 100644
--- a/dns/nsd/distinfo
+++ b/dns/nsd/distinfo
@@ -1,2 +1,2 @@
-MD5 (nsd-2.1.5.tar.gz) = 24e81b2bb25f0663e153e174bb585f04
-SIZE (nsd-2.1.5.tar.gz) = 225543
+MD5 (nsd-2.2.0.tar.gz) = e84b8e9d03062710ea847ea146ccb5d5
+SIZE (nsd-2.2.0.tar.gz) = 230431
diff --git a/dns/nsd/pkg-plist b/dns/nsd/pkg-plist
index 66d58f3b77e0..1f13a4c52ae2 100644
--- a/dns/nsd/pkg-plist
+++ b/dns/nsd/pkg-plist
@@ -3,7 +3,8 @@ etc/rc.d/nsd.sh
etc/nsd/nsd.zones.sample
etc/nsd/nsdc.conf.sample
sbin/nsd
-sbin/nsd-notify
-sbin/nsdc
sbin/zonec
+sbin/nsdc
+sbin/nsd-notify
+sbin/nsd-xfer
@dirrm etc/nsd
diff --git a/dns/nsd/scripts/configure.nsd b/dns/nsd/scripts/configure.nsd
new file mode 100644
index 000000000000..f67ab73e5296
--- /dev/null
+++ b/dns/nsd/scripts/configure.nsd
@@ -0,0 +1,86 @@
+#!/bin/sh
+# $FreeBSD$
+
+if [ -f ${WRKDIRPREFIX}${CURDIR}/Makefile.inc ]; then
+ exit
+fi
+
+tempfile=`mktemp -t checklist`
+
+if [ "${NSD_OPTIONS}" ]; then
+ set ${NSD_OPTIONS}
+fi
+
+for i; do
+ eval status_$i=ON
+done
+
+if [ -z "${BATCH}" ]; then
+ /usr/bin/dialog --title "NSD configuration options" --clear \
+ --checklist "\n\
+Please select desired options:" -1 -1 16 \
+ROOT_SERVER "Configure NSD as a root server" "$status_ROOT_SERVER" \
+NOIPv6 "Disable IPv6 support" "$status_NOIPv6" \
+DNSSEC "Enable experimental DNSSEC support according to the latest drafts." "$status_DNSSEC" \
+NOAXFR "Disable AXFR" "$status_NOAXFR" \
+BIND8_STATS "Enable BIND8 like NSTATS & XSTATS" "$status_BIND8_STATS" \
+PLUGINS "Enable plugin support" "$status_PLUGINS" \
+NOTSIG "Disable TSIG support" "$status_NOTSIG" \
+MMAP "Configure NSD to load the database using mmap(2)" "$status_MMAP" \
+2> $tempfile
+
+ retval=$?
+
+ if [ -s $tempfile ]; then
+ set `sed 's/"//g' $tempfile`
+ fi
+ rm -f $tempfile
+
+ case $retval in
+ 0) if [ -z "$*" ]; then
+ echo "Nothing selected"
+ fi
+ ;;
+ 1) echo "Cancel pressed."
+ exit 1
+ ;;
+ esac
+fi
+
+${MKDIR} ${WRKDIRPREFIX}${CURDIR}
+exec > ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
+
+while [ "$1" ]; do
+ case $1 in
+ ROOT_SERVER)
+ echo "CONFIGURE_ARGS+= --enable-root-server"
+ ;;
+ NOIPv6)
+ echo "CONFIGURE_ARGS+= --disable-ipv6"
+ ;;
+ DNSSEC)
+ echo "CONFIGURE_ARGS+= --enable-dnssec"
+ ;;
+ NOAXFR)
+ echo "CONFIGURE_ARGS+= --disable-axfr"
+ ;;
+ BIND8_STATS)
+ echo "CONFIGURE_ARGS+= --enable-bind8-stats"
+ ;;
+ PLUGINS)
+ echo "CONFIGURE_ARGS+= --enable-plugins"
+ ;;
+ NOTSIG)
+ echo "CONFIGURE_ARGS+= --disable-tsig"
+ ;;
+ MMAP)
+ echo "CONFIGURE_ARGS+= --enable-mmap"
+ ;;
+ *)
+ echo "Unknown option(s): $*" > /dev/stderr
+ rm -f ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
+ exit 1
+ ;;
+ esac
+ shift
+done