Portfile

# $Id: Portfile 22912 2007-03-19 03:55:06Z jberry@macports.org $

PortSystem 1.0

name dovecot
version 1.0.rc27
epoch 20060722

categories mail
maintainers yeled@macports.org jberry@macports.org
platforms darwin

description Secure, fast imap and pop3 server -- currently in alpha approaching final
long_description Dovecot is an IMAP and POP3 server for Linux/UNIX-like \
systems, written with security primarily in mind. Although \
it's written in C, it uses several coding techniques to \
avoid most of the common pitfalls.

homepage http://dovecot.org/

master_sites ${homepage}releases/
distname dovecot-${version}
checksums rmd160 b13d0ac5c6760d7646d0c5924943be0d7ce0e480 \
sha1 7f026bd63234ae39658bde87a547b8c5001d892c \
md5 2bc18491c869e0b298ef114d07cdbb46

depends_lib port:libiconv \
port:pkgconfig \
port:zlib \
port:openssl

configure.args --sysconfdir=${prefix}/etc/dovecot \
--localstatedir=${prefix}/var \
--with-ssl=openssl --with-ssl-dir=${prefix}/etc/ssl

configure.env CPPFLAGS="-I${prefix}/include/openssl" \
LDFLAGS="-L${prefix}/lib"

post-configure {
# madvise fails on darwin 7 and earlier, but is fixed on darwin 8
if { ${os.platform} == "darwin" && [rpm-vercomp ${os.version} 8.0] < 0 } {
reinplace "s|#define HAVE_MADVISE 1|/* #undef HAVE_MADVISE */|" ${worksrcpath}/config.h
}
}

post-destroot {
# Create the dovecot user and group
addgroup dovecot
set gid [existsgroup dovecot]
adduser dovecot gid=${gid} realname=Dovecot
}

platform darwin 7 {
# Avoid broken poll
configure.args-append --with-ioloop=select
}

platform darwin 8 {
configure.args-append --with-ioloop=kqueue
}

variant postgres {
depends_lib-append port:postgresql8
configure.args-append --with-pgsql
configure.env-append LDFLAGS="-L${prefix}/lib/pgsql8" \
CPPFLAGS="-I${prefix}/include/pgsql8"
}

variant rawlog { configure.args-append --with-rawlog }

variant ldap { configure.args-append --with-ldap
depends_lib-append port:openldap
}

startupitem.create yes
startupitem.name Dovecot
startupitem.start ${prefix}/sbin/dovecot
startupitem.stop "
pidfile=${prefix}/var/run/dovecot/master.pid
\[ -r \${pidfile} \] && kill \$(cat \${pidfile})
"

files