# -*- 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 113560 2013-11-19 20:32:50Z pixilla@macports.org $

PortSystem          1.0

name                amavisd-new
version             2.8.1
categories          mail
license             GPL-2
maintainers         pixilla openmaintainer
platforms           darwin
supported_archs     noarch

description         amavisd-new is a high-performance interface between mailer (MTA) and content \
                    checkers: virus scanners, and/or SpamAssassin.
long_description    ${description} It is written in Perl for maintainability, without paying a \
                    significant price for speed. It talks to MTA via (E)SMTP or LMTP, or by using \
                    helper programs. Best with Postfix, fine with dual-sendmail setup and Exim v4, \
                    works with sendmail/milter, or with any MTA as a SMTP relay. For Courier and \
                    qmail MTA integration there is a patch in the distributed package.
homepage            http://www.ijs.si/software/amavisd/
master_sites        ${homepage}

checksums           rmd160  7d6f4628ba74743bf7637fd5052cf3925e670ad8 \
                    sha256  f4391d1395bdb5ca05fb34178f3f08459ec95c914409f0f83d987acd37a0ba2d

set perl_version    5.12
set daemon_user     _amavisd
set daemon_group    _amavisd
set amavisd_home    ${prefix}/var/amavis
add_users ${daemon_user} group=${daemon_group} realname=AMaViS\ Daemon home=${amavisd_home}

depends_run         port:p${perl_version}-archive-zip \
                    port:p${perl_version}-berkeleydb \
                    port:p${perl_version}-convert-tnef \
                    port:p${perl_version}-convert-uulib \
                    port:p${perl_version}-digest-md5 \
                    port:p${perl_version}-io-compress \
                    port:p${perl_version}-io-stringy \
                    port:p${perl_version}-mail-dkim \
                    port:p${perl_version}-mailtools \
                    port:p${perl_version}-mime-tools \
                    port:p${perl_version}-mime-base64 \
                    port:p${perl_version}-net-server \
                    port:p${perl_version}-time-hires \
                    port:p${perl_version}-unix-syslog \
                    port:p${perl_version}-mail-spamassassin \
                    port:p${perl_version}-dbd-mysql \
                    port:p${perl_version}-mail-clamav \
                    port:clamav \
                    port:clamav-server

post-patch {
    reinplace "s|#!/usr/bin/perl|#!${prefix}/bin/perl${perl_version}|" \
              ${worksrcpath}/amavisd
    file copy ${worksrcpath}/amavisd.conf ${worksrcpath}/amavisd.conf.example
    reinplace "s|\$daemon_user\  =\ 'vscan'|\$daemon_user\  =\ '${daemon_user}'|" \
              ${worksrcpath}/amavisd.conf.example
    reinplace "s|\$daemon_group\ =\ 'vscan'|\$daemon_group\  =\ '${daemon_group}'|" \
              ${worksrcpath}/amavisd.conf.example
    reinplace "s|#\ \$MYHOME\ =\ '/var/amavis'|\$MYHOME\ =\ '${amavisd_home}'|" \
              ${worksrcpath}/amavisd.conf.example
    reinplace "s|\$QUARANTINEDIR\ =\ '/var/virusmails'|\$QUARANTINEDIR\ =\ '${amavisd_home}/quarantine'|" \
              ${worksrcpath}/amavisd.conf.example
}

use_configure       no

build               {}

destroot {
    xinstall -m 750 -o ${daemon_user} -g ${daemon_group} \
        ${worksrcpath}/amavisd \
        ${destroot}${prefix}/sbin/amavisd
    xinstall -m 640 -o root -g ${daemon_group} \
        ${worksrcpath}/amavisd.conf.example \
        ${destroot}${prefix}/etc/amavisd.conf.example
    xinstall -m 750 -o ${daemon_user} -g ${daemon_group} -d \
        ${destroot}${amavisd_home} \
        ${destroot}${amavisd_home}/tmp \
        ${destroot}${amavisd_home}/var \
        ${destroot}${amavisd_home}/db \
        ${destroot}${amavisd_home}/home \
        ${destroot}${amavisd_home}/quarantine
    xinstall -m 640 -o ${daemon_user} -g ${daemon_group} \
        /dev/null \
        ${destroot}${amavisd_home}/tmp/.turd_${name}
    xinstall -m 640 -o ${daemon_user} -g ${daemon_group} \
        /dev/null \
        ${destroot}${amavisd_home}/var/.turd_${name}
    xinstall -m 640 -o ${daemon_user} -g ${daemon_group} \
        /dev/null \
        ${destroot}${amavisd_home}/db/.turd_${name}
    xinstall -m 640 -o ${daemon_user} -g ${daemon_group} \
        /dev/null \
        ${destroot}${amavisd_home}/home/.turd_${name}
    xinstall -m 640 -o ${daemon_user} -g ${daemon_group} \
        /dev/null \
        ${destroot}${amavisd_home}/quarantine/.turd_${name}
    copy ${worksrcpath} ${destroot}${prefix}/share/${name}
}

livecheck.url       ${master_sites}
livecheck.type      regex
livecheck.regex     "${name}-(\\d+\\.\\d+(\[0-9rc.\]+)?)${extract.suffix}"
