[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / mail / dovecot

File: [cvs.NetBSD.org] / pkgsrc / mail / dovecot / Makefile (download)

Revision 1.152, Tue Oct 5 06:53:27 2010 UTC (9 years, 2 months ago) by ghen
Branch: MAIN
CVS Tags: pkgsrc-2010Q3-base, pkgsrc-2010Q3
Changes since 1.151: +4 -4 lines

Update Dovecot to 1.2.15, Sieve plugin to 0.1.18, ManageSieve to 0.11.12
(bugfixes only).

Changelog for Dovecot 1.2.15:

* acl: Fixed the logic of merging multiple ACL entries. Now it works as
  documented, while previously it could have done slightly different
  things depending on the order of the entries.

  For details see http://www.dovecot.org/list/dovecot/2010-October/053452.html

* acl: Don't give admin rights to all owner mailboxes. This was
  originally done to make sure that mailbox owner couldn't accidentally
  remove their own admin rights. But this is already prevented by
  SETACL command, so it's not necessary. Also sysadmin may have
  intentionally removed some admin rights from some mailboxes
  (especially when using symlinked shared mailboxes).

- Maildir: Fixed potential "Duplicate file entry" in dovecot-uidlist
  file errors.
- Maildir: Avoid unnecessary uidlist recreation during mail delivery.
- imap: When SELECT fails, it didn't close the previous mailbox.
- Dovecot master process could have died if it got SIGCHLD signals
  very rapidly while it was trying to log. This could have happened
  for example if a lot of imap/pop3 sessions disconnected at the exact
  same time.

Changelog for Sieve 0.1.18:

- Imap4flags: fixed segfault bug occuring in multiscript context.
  Occured in specific situations when a script using imap4flags was
  followed in the sequence by scripts not using imap4flags.
- Imap4flags: fixed bug in setflag command; when parameter was a
  stringlist, only the last item was actually set.
- Prevented assertion failure due to currupt binary string
  representation. If the string were missing a final \0 character an
  assertion was produced in stead of a binary corruption error.
- Multiscript: fixed duplicate implicit keep caused by erroneous
  execution state update.
- Fixed Sieve script name checking to properly handle length limit
  and added 0x00ff as invalid character.
- Removed spurious old stdio.h (top) includes; these caused compile
  issues on specific systems.
- Fixed default Sieve capability (as reported by ManageSieve): extra
  extensions spamtest, spamtestplus and virustest were enabled by
  default. These should, however, only be enabled when properly
  configured and there is no default configuration.
- Variables extension: fixed :length set modifier to recognize utf8
  characters in stead of octets.
- Fixed unnecessary reporting of dummy extensions in ManageSieve
  SIEVE capability; the comparator-i;octet and
  comparator-i;ascii-numeric 'extensions' were reported explicitly.
- LDA Sieve plugin: added _version symbol to enable Dovecot's plugin
  version check. Without this check, people can forget to recompile
  the plugin, which can lead to unexpected effects.

Changelog for ManageSieve 0.11.12:

- Fixed error handling of PUTSCRIPT commmand; save commit errors
  would not make the command fail.
- Fixed PUTSCRIPT bug causing it to hang when given an empty script
  name.

# $NetBSD: Makefile,v 1.152 2010/10/05 06:53:27 ghen Exp $

DOVECOT_VERSION=	1.2
DOVECOT_SUBVERSION=	.15
SIEVE_VERSION=		0.1.18
MANAGESIEVE_VERSION=	0.11.12
DISTNAME=		dovecot-${DOVECOT_VERSION}${DOVECOT_SUBVERSION}
CATEGORIES=		mail
MASTER_SITES=		http://www.dovecot.org/releases/${DOVECOT_VERSION}/
DOVECOT_SIEVE_SITES=	http://www.rename-it.nl/dovecot/${DOVECOT_VERSION}/

MANAGESIEVE_PATCH=			dovecot-${DOVECOT_VERSION}${DOVECOT_SUBVERSION}-managesieve-${MANAGESIEVE_VERSION}.diff.gz
SITES.${MANAGESIEVE_PATCH}=	${DOVECOT_SIEVE_SITES}
PATCH_DIST_STRIP.${MANAGESIEVE_PATCH}=	-p1

MAINTAINER=		ghen@NetBSD.org
HOMEPAGE=		http://www.dovecot.org/
COMMENT=		Secure IMAP and POP3 server
LICENSE=		mit AND gnu-lgpl-v2.1 AND modified-bsd

PKG_INSTALLATION_TYPES=	overwrite pkgviews
PKG_DESTDIR_SUPPORT=	user-destdir

USE_LIBTOOL=		yes
GNU_CONFIGURE=		yes
USE_TOOLS+=		pkg-config
USE_TOOLS+=		rpcgen

CONFIGURE_ARGS+=	--sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+=	--localstatedir=${VARBASE}
CONFIGURE_ARGS+=	--with-ssldir=${SSLDIR}
CONFIGURE_ARGS+=	--enable-header-install

.include "../../mk/bsd.prefs.mk"
.include "options.mk"

RCD_SCRIPTS=		dovecot

DOVECOT_USER?=		dovecot
DOVECOT_GROUP?=		dovecot
PKG_GROUPS=		${DOVECOT_GROUP}
PKG_USERS=		${DOVECOT_USER}:${DOVECOT_GROUP}
PKG_GROUPS_VARS+=	DOVECOT_GROUP
PKG_USERS_VARS+=	DOVECOT_USER

PKG_GECOS.${DOVECOT_USER}=	Dovecot IMAP/POP3 user

EGDIR=			${PREFIX}/share/examples/dovecot
CONF_FILES=		${EGDIR}/dovecot-example.conf ${PKG_SYSCONFDIR}/dovecot.conf

INSTALLATION_DIRS=	libexec/dovecot sbin share/doc/dovecot		\
			share/examples/dovecot

SUBST_CLASSES+=		paths
SUBST_FILES.paths=	dovecot-example.conf
SUBST_SED.paths+=	-e 's,@PREFIX@,${PREFIX},g'
SUBST_STAGE.paths=	pre-configure

BUILD_DEFS+=		VARBASE

post-build:
	${SED} "s|/etc/ssl/|${SSLDIR}/|" ${WRKSRC}/dovecot-example.conf \
						> ${WRKDIR}/dovecot-example.conf
	${SED} "s|/etc/ssl|${SSLDIR}|" ${WRKSRC}/doc/mkcert.sh \
						> ${WRKDIR}/mkcert.sh
.if !empty(PKG_OPTIONS:Mdovecot-sieve)
# We need dovecot built in order to be able to configure sieve.
	cd ${WRKSRC.sieve} \
	&& env ${CONFIGURE_ENV} ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS} ${CONFIGURE_ARGS.sieve}
	cd ${WRKSRC.sieve} \
	&& env ${MAKE_ENV} ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS} -f ${MAKE_FILE} ${BUILD_TARGET}
.endif
.if !empty(PKG_OPTIONS:Mdovecot-managesieve)
# Wee need sieve built in order to configure and build managesieve. Sigh.
	cd ${WRKSRC.managesieve} \
	&& env ${CONFIGURE_ENV} ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS} ${CONFIGURE_ARGS.managesieve}
	cd ${WRKSRC.managesieve} \
	&& env ${MAKE_ENV} ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS} -f ${MAKE_FILE} ${BUILD_TARGET}
.endif

post-install:
	${INSTALL_DATA} ${WRKDIR}/dovecot-example.conf ${DESTDIR}${EGDIR}
	${INSTALL_DATA} ${WRKSRC}/doc/dovecot-* ${DESTDIR}${EGDIR}
	${INSTALL_SCRIPT} ${WRKDIR}/mkcert.sh ${DESTDIR}${EGDIR}
	${INSTALL_DATA} ${WRKSRC}/src/lib/liblib.a ${DESTDIR}${PREFIX}/lib/dovecot

.include "../../devel/zlib/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"