# -*- coding: utf-8; mode: tcl; tab-width: 4; truncate-lines: t; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
# $Id: Portfile 79572 2011-06-18 20:47:47Z pixilla@macports.org $

PortSystem          1.0
PortGroup           perl5 1.0

name                sqlgrey
version             1.8.0-rc2
categories          mail
maintainers         pixilla
platforms           darwin
description         SQLgrey is a postfix policy service implementing a grey-listing policy
long_description    ${description}
homepage            http://sqlgrey.sourceforge.net/
master_sites        sourceforge

supported_archs     noarch

depends_lib         port:p5-net-server \
                    port:p5-io-multiplex \
                    port:p5-dbi

depends_run         port:postfix                   

checksums           sha1    2359577af0149394d1181e12007f013478148423 \
                    rmd160  0404df3987ceb4732e73fee09388454995754c1c

patchfiles          patch-Makefile.diff \
                    patch-etc-sqlgrey.conf.diff \
                    patch-sqlgrey-logstats.pl.diff \
                    patch-sqlgrey.diff \
                    patch-tester.pl.diff            

set sqlgreyuser     _${name}
set sqlgreygroup    ${sqlgreyuser}

post-patch {
    reinplace "s|@@PREFIX@@|${prefix}|g" \
        ${worksrcpath}/etc/sqlgrey.conf \
        ${worksrcpath}/sqlgrey \
        ${worksrcpath}/sqlgrey-logstats.pl \
        ${worksrcpath}/tester.pl \
        ${worksrcpath}/Makefile
    reinplace "s|@@DESTROOT@@|${destroot}|g" \
        ${worksrcpath}/Makefile
    reinplace "s|@@NAME@@|${name}|g" \
        ${worksrcpath}/etc/sqlgrey.conf \
        ${worksrcpath}/sqlgrey
    reinplace "s|@@SQLGREYUSER@@|${sqlgreyuser}|g" \
        ${worksrcpath}/etc/sqlgrey.conf \
        ${worksrcpath}/sqlgrey
    reinplace "s|@@SQLGREYGROUP@@|${sqlgreygroup}|g" \
        ${worksrcpath}/etc/sqlgrey.conf \
        ${worksrcpath}/sqlgrey
}

use_configure       no

startupitem.create  yes
startupitem.executable \
                    ${prefix}/sbin/sqlgrey

destroot.keepdirs   ${destroot}${prefix}/var/run/${name}

post-destroot {
    addgroup ${sqlgreygroup} realname=${name}
    set gid [existsgroup ${sqlgreygroup}]
    adduser ${sqlgreyuser} gid=${gid} realname=${name}
    move ${destroot}${prefix}/etc/sqlgrey/sqlgrey.conf ${destroot}${prefix}/etc/sqlgrey/sqlgrey.conf.example
    xinstall -m 0664 -W ${worksrcpath} FAQ HOWTO README.DBCLUSTER README.DISCRIMINATION README.OPTINOUT README.PERF \
        ${destroot}${prefix}/etc/sqlgrey
}

post-activate {
    touch ${prefix}/etc/sqlgrey/clients_fqdn_whitelist.local
    touch ${prefix}/etc/sqlgrey/clients_ip_whitelist.local
}

default_variants    +mysql

variant mysql description {add mysql driver support} {
    depends_lib     port:p5-dbd-mysql
}

variant sqlite description {add sqlite driver support} {
    depends_lib     port:p5-dbd-sqlite
}

variant postgresql description {add postgres driver support} {
    depends_lib     port:p5-dbd-pg
}
