[23377] trunk/dports/net/maradns/Portfile

source_changes at macosforge.org source_changes at macosforge.org
Fri Mar 30 00:28:21 PDT 2007


Revision: 23377
          http://trac.macosforge.org/projects/macports/changeset/23377
Author:   jann at macports.org
Date:     2007-03-30 00:28:20 -0700 (Fri, 30 Mar 2007)

Log Message:
-----------
maradns version update to 1.2.12.05

Modified Paths:
--------------
    trunk/dports/net/maradns/Portfile

Modified: trunk/dports/net/maradns/Portfile
===================================================================
--- trunk/dports/net/maradns/Portfile	2007-03-30 07:07:09 UTC (rev 23376)
+++ trunk/dports/net/maradns/Portfile	2007-03-30 07:28:20 UTC (rev 23377)
@@ -3,19 +3,79 @@
 PortSystem 1.0
 
 name			maradns
-version			1.1.55
+version			1.2.12.05
+
+set branch		[strsed ${version} {s/\.[0-9]*\.[0-9]*$//}]
+
 categories		net
 platforms		darwin
-maintainers		nomaintainer at macports.org
+maintainers		boeyms at fastmail.fm openmaintainer at macports.org
 description		DNS server supporting authoritative, recursive and caching DNS
 long_description	MaraDNS is a fully functional DNS server supporting \
 			authoritative DNS, recursive DNS, and caching DNS.
 
 homepage		http://www.maradns.org/
-master_sites	http://www.maradns.org/download/1.1/
-checksums		md5 8f42f1e1de21fdd5287f58985e189a32
+master_sites		http://www.maradns.org/download/${branch}/${version} \
+			sourceforge
+			
+checksums		md5	b0094bf223fe052f4551c6a20391ba92 \
+			sha1	4b250eed12dd8d8551d020bd270abaebac41e329
 use_bzip2		yes
 
+patchfiles		patch-configure patch-install.darwin
+
+post-extract {
+	cd ${worksrcpath}
+# Delete unneeded stress-testing code (not built by default).  It may be worth
+# adding this as a variant in a future revision.
+	file delete -force sqa
+# Delete Portuguese documentation sources (documentation not built by default;
+# will need to add a section to build these docs if localisation desired)
+	file delete -force doc/pt_br
+# Delete unneeded English documentation sources (documentation already built)
+# and support files that will otherwise be installed in the doc directories
+	file delete -force doc/en/source
+	file delete doc/en/man/read.manpage
+	file delete doc/en/pdf/tmac.an.patch
+	eval file delete [glob doc/en/*/{Makefile,*.embed,make.*}]
+# Fix installation script (called by "make install") so that configuration
+# files and directories are placed in destroot
+	reinplace "s|\$RPM_BUILD_ROOT|${destroot}${prefix}|g" build/install.sh
+# Fix hardcoding of default paths to chroot, log and zone file dirs, and
+# configuration file, in source and docs. copy.devs.c is only used if maradns
+# is built for Solaris, and maraconf.sh is neither installed by default nor yet
+# by this Portfile, but hey.
+	set marabindocpages	"duende maradns mararc zoneserver"
+	set marasetupdocpages	"authoritative compile convert dangling \
+		dnsmaster dnsslave dnstcp quick_start recursive update"
+	set marareinplace	"s|/etc/mara|${prefix}/etc/mara|g"
+	foreach docpage ${marabindocpages} {
+		eval reinplace "${marareinplace}" \
+		doc/en/text/man.${docpage}.txt \
+		doc/en/tutorial/man.${docpage}.html
+	}
+	foreach docpage ${marasetupdocpages} {
+		eval reinplace "${marareinplace}" \
+		doc/en/text/${docpage}.txt \
+		doc/en/tutorial/${docpage}.html
+	}
+	eval reinplace "${marareinplace}" \
+		MaraDns.h \
+		build/copy.devs.c \
+		parse/ParseMaraRc.c \
+		tools/maraconf.sh \
+		doc/en/QuickStart \
+		doc/en/examples/example_authoritative_mararc.txt \
+		doc/en/examples/example_full_mararc \
+		doc/en/examples/example_mararc \
+		doc/en/examples/example_recursive_mararc.txt \
+		doc/en/man/duende.8 \
+		doc/en/man/maradns.8 \
+		doc/en/man/zoneserver.8 \
+		doc/en/man/mararc.5
+}
+
+
 configure.pre_args
 
 build.target
@@ -23,11 +83,24 @@
 destroot.env	PREFIX=${destroot}${prefix}
 destroot.destdir
 
+# Keep chroot directory for duende (monitors and logs maradns instances)
+#
+# (This places a .turd file in the logger directory, but the duende man page
+# states that it requires a _blank_ logger directory to run (emphasis added).
+# Testing has not revealed any interference from the .turd file so far, but
+# the testing done may not have been exhaustive (I don't know enough about
+# chroot jails).)
+destroot.keepdirs	${destroot}${prefix}/etc/maradns/logger
+
 post-destroot {
-	xinstall -m 755 -d ${destroot}${prefix}/etc/maradns/logger
-	xinstall -m 644 ${filespath}/mararc ${destroot}${prefix}/etc/maradns
-	reinplace "s|__PREFIX__|${prefix}|g" ${destroot}${prefix}/etc/maradns/mararc
-	file delete -force ${destroot}${prefix}/maradns-${version}
+# Delete remaining unneeded build files; this also deletes the man page for
+# the mqhash tool, which is not installed by default, but it appears to be only
+# for development testing.
+	file delete -force \
+		${destroot}${prefix}/share/doc/maradns-${version}/Makefile \
+		${destroot}${prefix}/share/doc/maradns-${version}/man
+	file rename ${destroot}${prefix}/etc/mararc \
+		${destroot}${prefix}/etc/example-mararc
 }
 
 startupitem.create	yes
@@ -36,7 +109,21 @@
 startupitem.start	"\[ -x \${BIN} \] && \${BIN} &; echo \$! > \${PID}"
 startupitem.stop	"\[ -r \${PID} \] && /bin/kill \$(cat \${PID})"
 
+post-install {
+	ui_msg "***************************************************************"
+	ui_msg "* To make MaraDNS functional, you will need to create"
+	ui_msg "* ${prefix}/etc/mararc.  Please read the mararc man page"
+	ui_msg "* for details.  Example mararc files are in"
+	ui_msg "* ${prefix}/share/doc/maradns-${version}/examples ."
+	ui_msg "***************************************************************"
+}
+
 platform darwin 8 {
 	build.args	CC="/usr/bin/gcc-4.0 -DDARWIN"
 }
 
+variant authonly {
+	configure.args-append	--authonly
+	startupitem.init	\
+		"PID=${prefix}/var/run/${name}.pid\nBIN=${prefix}/sbin/maradns.authonly"
+}

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20070330/0866015a/attachment.html


More information about the macports-changes mailing list