# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
# $Id: Portfile 89552 2012-02-02 12:46:31Z pixilla@macports.org $

PortSystem 1.0

name			pflogsumm
version			1.1.3
categories		mail
maintainers		nomaintainer
description		Produce Postfix MTA logfile summary
long_description	Pflogsumm is a log analyzer/summarizer for the \
					Postfix MTA.  It is designed to provide an over-view \
					of Postfix activity, with just enough detail to give \
					the administrator a "heads up" for potential trouble \
					spots. \
					Pflogsumm generates summaries and, in some cases, \
					detailed reports of mail server traffic volumes, \
					rejected and bounced email, and server warnings, \
					errors and panics. \
					Also installs Chris Cappuccio's CGI script for \
					browser access to the Pflogsumm output.
homepage		http://jimsun.linxnet.com/postfix_contrib.html
master_sites	        http://jimsun.linxnet.com/downloads/ \
			http://www.nmedia.net/~chris/mail/:cgi

distfiles-append	mail-cgi.txt:cgi

checksums           pflogsumm-1.1.3.tar.gz \
                    md5     5e3fb28dfb5b7f4a8b6b9bf2abde9542 \
                    sha1    86bdb3b880896e9a4991dd3ea77c4981a5c65dcb \
                    rmd160  be63bd79c3bde406fe9e7fcc5b241fd7b2283ddb \
                    mail-cgi.txt \
                    md5     352451388eed3d1f7255dc07fc411d97 \
                    sha1    ba637e06a5334f33604adb1c255a2ac9be5ef655 \
                    rmd160  7e683878f45dd401764a62ab52ad79c5f2f36a97

extract.only	        ${distname}${extract.suffix}
platforms		darwin freebsd

set perl5.bin	        ${prefix}/bin/perl5.12

depends_lib     port:perl5.12
depends_run		port:p5.12-date-calc

set cgi_path		""
set maillog_path	""

platform darwin {
	global cgi_path maillog_path
	set cgi_path "/Library/WebServer/CGI-Executables"
	set maillog_path "/var/log/mail.log"

	# MacPorts Apache interoperability
	if {[file exists ${prefix}/sbin/httpd]} {
		set cgi_path "${prefix}/www/cgi-bin"
	}
}

platform freebsd {
	global cgi_path maillog_path
	set cgi_path "/usr/local/www/cgi-bin"
	set maillog_path "/var/log/maillog"

	# MacPorts Apache interoperability
	if {[file exists ${prefix}/sbin/httpd]} {
		set cgi_path "${prefix}/www/cgi-bin"
	}
}

post-extract {
	file copy -force ${distpath}/mail-cgi.txt ${worksrcpath}/${name}.cgi
}

use_configure	no

build {
	reinplace "s|^#!.*perl|#!${perl5.bin}|" ${worksrcpath}/${name}.pl
	reinplace "s|mail.empnet.com|[exec hostname]|" ${worksrcpath}/${name}.cgi
	reinplace "s|/var/log/maillog|${maillog_path}|" ${worksrcpath}/${name}.cgi
	reinplace "s|${maillog_path}\[.\]\[0-3\]|&.gz|" ${worksrcpath}/${name}.cgi
	reinplace "s|/usr/ucb/ps|[binaryInPath ps]|" ${worksrcpath}/${name}.cgi
	reinplace "s|zcat=\"/bin/cat|zcat=\"[binaryInPath zcat]|" ${worksrcpath}/${name}.cgi
	reinplace "s|/bin/cat|[binaryInPath cat]|" ${worksrcpath}/${name}.cgi
	reinplace "s|/usr/local/bin/${name}.pl|${prefix}/bin/${name}|" ${worksrcpath}/${name}.cgi
	reinplace "s|^opts=|# &|" ${worksrcpath}/${name}.cgi
	reinplace "s|^#opts=|opts=|" ${worksrcpath}/${name}.cgi
	reinplace "s|mail.cgi|${name}.cgi|" ${worksrcpath}/${name}.cgi
	reinplace "s|\$pflog \$opts.*$|& 2>\\&1|" ${worksrcpath}/${name}.cgi
}

destroot {
	xinstall -m 0755 ${worksrcpath}/${name}.pl \
		${destroot}${prefix}/bin/${name}
	xinstall -m 0644 ${worksrcpath}/${name}.1 \
		${destroot}${prefix}/share/man/man1
	xinstall -d -m 0755 ${destroot}${prefix}/share/doc/${name}
	xinstall -m 0644 ${worksrcpath}/${name}-faq.txt \
		${destroot}${prefix}/share/doc/${name}
	xinstall -d -m 0755 ${destroot}${cgi_path}
	set maillog_group [file attributes ${maillog_path} -group]
	xinstall -m 02755 -g ${maillog_group} ${worksrcpath}/${name}.cgi \
		${destroot}${cgi_path}
}

livecheck.type  regex
livecheck.url   ${homepage}
livecheck.regex "${name}-(\\d+(?:\\.\\d+)*)${extract.suffix}"
