ports/93250: Maintainer update: mail/dovecot to 1.0.b3

Robin Breathe robin at isometry.net
Sun Feb 12 20:00:19 UTC 2006


>Number:         93250
>Category:       ports
>Synopsis:       Maintainer update: mail/dovecot to 1.0.b3
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Feb 12 20:00:17 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Robin Breathe
>Release:        FreeBSD 6.1-PRERELEASE i386
>Organization:
>Environment:
>Description:
Update mail/dovecot to the current, recommended 1.0.beta3 release.
- Add support for kqueue(2) in place of poll(2)
- Add support for SQLite userdb.
- Workaround a bug seen with malloc.c rev 1.95 (by setting "login_process_size = 64").
- Install mkcert.sh to PREFIX/share/dovecot/ to ease certificate generation.

This PR supercedes ports/93074, which should be closed.

>How-To-Repeat:
>Fix:
Apply the following patch:

--- dovecot-1.0.b3.diff begins here ---
diff -ruN dovecot-1.0.a5/Makefile dovecot/Makefile
--- dovecot-1.0.a5/Makefile	Sun Feb  5 23:29:44 2006
+++ dovecot/Makefile	Sun Feb 12 19:34:11 2006
@@ -7,7 +7,7 @@
 #
 
 PORTNAME=	dovecot
-DISTVERSION=	1.0.alpha5
+DISTVERSION=	1.0.beta3
 CATEGORIES=	mail ipv6
 MASTER_SITES=	http://www.dovecot.org/releases/
 
@@ -15,36 +15,40 @@
 COMMENT=	Secure and compact IMAP and POP3 servers
 
 USE_ICONV=	yes
-USE_REINPLACE=	yes
+USE_RC_SUBR=	dovecot.sh
 
 GNU_CONFIGURE=	yes
 CONFIGURE_TARGET=	--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
-CONFIGURE_ARGS=	--without-shadow --with-pam \
-		--localstatedir=/var --with-ssl=openssl
+CONFIGURE_ARGS=	--without-shadow --localstatedir=/var
 CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" \
 		LDFLAGS="-L${LOCALBASE}/lib"
 
 PKGMESSAGE=	${WRKDIR}/pkg-message
 
+.if !defined(NOPORTDOCS)
 PORTDOCS=	USE-WIKI-INSTEAD \
 		auth-protocol.txt auth.txt configuration.txt design.txt \
 		index.txt mail-storages.txt multiaccess.txt nfs.txt \
 		securecoding.txt variables.txt
+.else
+CONFIGURE_ARGS+=        --without-docs
+.endif
 
-OPTIONS=	SASL2		"SASL2 support"		off \
+OPTIONS=	KQUEUE		"kqueue(2) support"	on  \
+		SASL2		"SASL2 support"		off \
 		GSSAPI		"GSSAPI support"	off \
 		VPOPMAIL	"VPopMail support"	off \
 		LDAP		"OpenLDAP support"	off \
 		PGSQL		"PostgreSQL support"	off \
 		MYSQL		"MySQL support"		off \
-		RCORDER		"RC Order support"	off
+		SQLITE		"SQLite support"	off
 
 .include <bsd.port.pre.mk>
 
-.if ( ${OSVERSION} < 500038 ) || !defined(WITH_RCORDER)
-USE_RC_SUBR=	dovecot.sh
-.else
-USE_RCORDER=	dovecot.sh
+## kqueue(2) support
+#
+.if defined(WITH_KQUEUE)
+CONFIGURE_ARGS+=	--with-ioloop=kqueue --with-notify=kqueue
 .endif
 
 ## SASL2 support
@@ -93,10 +97,11 @@
 CONFIGURE_ARGS+=	--with-mysql
 .endif
 
-pre-configure:
-.if defined(NOPORTDOCS)
-	@${REINPLACE_CMD} -e 's/^\(SUBDIRS = src\) doc/\1/' \
-		${WRKSRC}/Makefile.in
+## SQLite Support
+#
+.if defined(WITH_SQLITE)
+USE_SQLITE=		3
+CONFIGURE_ARGS+=	--with-sqlite
 .endif
 
 post-build:
@@ -107,6 +112,8 @@
 	@${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
 
 post-install:
+	@${MKDIR} ${DATADIR}
+	${INSTALL_SCRIPT} ${WRKSRC}/doc/mkcert.sh ${DATADIR}
 	@${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
 	@${SED} -e 's,%%PREFIX%%,${PREFIX},g' \
 		-e 's,%%DOCSDIR%%,${DOCSDIR},g' \
diff -ruN dovecot-1.0.a5/distinfo dovecot/distinfo
--- dovecot-1.0.a5/distinfo	Sun Feb  5 23:29:44 2006
+++ dovecot/distinfo	Thu Feb  9 10:10:32 2006
@@ -1,3 +1,3 @@
-MD5 (dovecot-1.0.alpha5.tar.gz) = a3277835f04d73485ff5ce3cc3daeea7
-SHA256 (dovecot-1.0.alpha5.tar.gz) = 12330727df9ee513482b60830b0496fec338e3e866fcb18bd73a596827aaabd8
-SIZE (dovecot-1.0.alpha5.tar.gz) = 1266342
+MD5 (dovecot-1.0.beta3.tar.gz) = 5418f9f7fe99e4f10bb82d9fe504138a
+SHA256 (dovecot-1.0.beta3.tar.gz) = c283111cd57c7938356c3f564eec6a8e4ba066f5c448f209e305a1409232520e
+SIZE (dovecot-1.0.beta3.tar.gz) = 1360574
diff -ruN dovecot-1.0.a5/files/patch-dovecot-example.conf dovecot/files/patch-dovecot-example.conf
--- dovecot-1.0.a5/files/patch-dovecot-example.conf	Sun Feb  5 23:29:44 2006
+++ dovecot/files/patch-dovecot-example.conf	Sun Feb 12 18:54:04 2006
@@ -1,5 +1,5 @@
---- dovecot-example.conf.orig	Sun Dec 18 15:10:59 2005
-+++ dovecot-example.conf	Sun Dec 18 15:15:02 2005
+--- dovecot-example.conf.orig	Fri Feb 10 18:46:38 2006
++++ dovecot-example.conf	Fri Feb 10 18:51:23 2006
 @@ -7,7 +7,7 @@
  # Default values are shown after each value, it's not required to uncomment
  # any of the lines. Exception to this are paths, they're just examples
@@ -18,6 +18,15 @@
  
  # IP or host address where to listen in for connections. It's not currently
  # possible to specify multiple addresses. "*" listens in all IPv4 interfaces.
+@@ -104,7 +104,7 @@
+ 
+ # Set max. process size in megabytes. If you don't use
+ # login_process_per_connection you might need to grow this.
+-#login_process_size = 32
++login_process_size = 64
+ 
+ # Should each login be processed in it's own process (yes), or should one
+ # login process be allowed to process multiple connections (no)? Yes is more
 @@ -153,7 +153,7 @@
  # Show more verbose process titles (in ps). Currently shows user name and
  # IP address. Useful for seeing who are actually using the IMAP processes
@@ -51,23 +60,31 @@
  
  # If you need to set multiple mailbox locations or want to change default
  # namespace settings, you can do it by defining namespace sections:
-@@ -400,12 +400,12 @@
+@@ -420,19 +420,19 @@
  
  protocol imap {
    # Login executable location.
 -  #login_executable = /usr/libexec/dovecot/imap-login
 +  #login_executable = %%PREFIX%%/libexec/dovecot/imap-login
  
-   # IMAP executable location
+   # IMAP executable location. Changing this allows you to execute other
+   # binaries before the imap process is executed.
+   #
+   # This would write rawlogs into ~/dovecot.rawlog/ directory:
+-  #   mail_executable = /usr/libexec/dovecot/rawlog /usr/libexec/dovecot/imap
++  #   mail_executable = %%PREFIX%%/libexec/dovecot/rawlog %%PREFIX%%/libexec/dovecot/imap
+   #
+   # This would attach gdb into the imap process and write backtraces into
+   # /tmp/gdbhelper.* files:
+-  #   mail_executable = /usr/libexec/dovecot/gdbhelper /usr/libexec/dovecot/imap
++  #   mail_executable = %%PREFIX%%/libexec/dovecot/gdbhelper %%PREFIX%%/libexec/dovecot/imap
+   #
 -  #mail_executable = /usr/libexec/dovecot/imap
 +  #mail_executable = %%PREFIX%%/libexec/dovecot/imap
-   # This would write rawlogs into ~/dovecot.rawlog/ directory:
--  #mail_executable = /usr/libexec/dovecot/rawlog /usr/libexec/dovecot/imap
-+  #mail_executable = %%PREFIX%%/libexec/dovecot/rawlog %%PREFIX%%/libexec/dovecot/imap
  
    # Maximum IMAP command line length in bytes. Some clients generate very long
    # command lines with huge mailboxes, so you may need to raise this if you get
-@@ -414,7 +414,7 @@
+@@ -441,7 +441,7 @@
  
    # Support for dynamically loadable modules.
    #mail_use_modules = no
@@ -76,16 +93,16 @@
  
    # Send IMAP capabilities in greeting message. This makes it unnecessary for
    # clients to request it with CAPABILITY command, so it saves one round-trip.
-@@ -444,7 +444,7 @@
-   #     With mbox storage a mailbox can contain either mails or submailboxes,
+@@ -472,7 +472,7 @@
    #     but not both. Thunderbird separates these two by forcing server to
    #     accept '/' suffix in mailbox names in subscriptions list.
+   # The list is space-separated.
 -  #imap_client_workarounds = outlook-idle
 +  imap_client_workarounds = delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep
  }
    
  ##
-@@ -453,10 +453,10 @@
+@@ -481,10 +481,10 @@
  
  protocol pop3 {
    # Login executable location.
@@ -98,7 +115,7 @@
  
    # Don't try to set mails non-recent or seen with POP3 sessions. This is
    # mostly intended to reduce disk I/O. With maildir it doesn't move files
-@@ -493,7 +493,7 @@
+@@ -521,7 +521,7 @@
    # installations. %08Xu%08Xv will be the new default, so use it for new
    # installations.
    #
@@ -107,7 +124,7 @@
  
    # POP3 logout format string:
    #  %t - number of TOP commands
-@@ -507,7 +507,7 @@
+@@ -535,7 +535,7 @@
  
    # Support for dynamically loadable modules.
    #mail_use_modules = no
@@ -116,16 +133,16 @@
  
    # Workarounds for various client bugs:
    #   outlook-no-nuls:
-@@ -516,7 +516,7 @@
-   #   oe-ns-eoh:
+@@ -545,7 +545,7 @@
    #     Outlook Express and Netscape Mail breaks if end of headers-line is
    #     missing. This option simply sends it if it's missing.
+   # The list is space-separated.
 -  #pop3_client_workarounds = 
 +  pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
  }
  
  ##
-@@ -524,7 +524,7 @@
+@@ -553,7 +553,7 @@
  ##
  
  # Executable location
diff -ruN dovecot-1.0.a5/pkg-install dovecot/pkg-install
--- dovecot-1.0.a5/pkg-install	Sun Feb  5 23:29:44 2006
+++ dovecot/pkg-install	Fri Feb 10 18:56:13 2006
@@ -57,7 +57,7 @@
 		echo "You need a user \"${u}\"."
 		if which -s pw && yesno "Would you like me to create it" y
 		then
-			pw useradd ${u} -g ${g} -h - -s /sbin/nologin -c "${gcos}" || exit
+			pw useradd ${u} -g ${g} -c "${gcos}" -d /nonexistent -s /sbin/nologin -h - || exit
 			echo "Done."
 		else
 			echo "Please create it, and try again."
diff -ruN dovecot-1.0.a5/pkg-plist dovecot/pkg-plist
--- dovecot-1.0.a5/pkg-plist	Sun Feb  5 23:29:44 2006
+++ dovecot/pkg-plist	Sun Feb 12 19:27:30 2006
@@ -1,29 +1,43 @@
 @comment $FreeBSD: ports/mail/dovecot/pkg-plist,v 1.14 2005/12/20 11:55:11 edwin Exp $
 etc/dovecot-example.conf
-lib/dovecot/imap/libimap_quota_plugin.a
-lib/dovecot/imap/libimap_quota_plugin.la
-lib/dovecot/imap/libimap_quota_plugin.so
-lib/dovecot/imap/libquota_plugin.so
-lib/dovecot/imap/libtrash_plugin.so
+lib/dovecot/imap/lib01_convert_plugin.so
+lib/dovecot/imap/lib01_quota_plugin.so
+lib/dovecot/imap/lib01_zlib_plugin.a
+lib/dovecot/imap/lib01_zlib_plugin.la
+lib/dovecot/imap/lib01_zlib_plugin.so
+lib/dovecot/imap/lib02_imap_quota_plugin.a
+lib/dovecot/imap/lib02_imap_quota_plugin.la
+lib/dovecot/imap/lib02_imap_quota_plugin.so
+lib/dovecot/imap/lib02_trash_plugin.so
 @dirrm lib/dovecot/imap
-lib/dovecot/lda/libquota_plugin.so
-lib/dovecot/lda/libtrash_plugin.so
+lib/dovecot/pop3/lib01_convert_plugin.so
+ at dirrm lib/dovecot/pop3
+lib/dovecot/lda/lib01_convert_plugin.so
+lib/dovecot/lda/lib01_quota_plugin.so
+lib/dovecot/lda/lib02_trash_plugin.so
 @dirrm lib/dovecot/lda
-lib/dovecot/libquota_plugin.a
-lib/dovecot/libquota_plugin.la
-lib/dovecot/libquota_plugin.so
-lib/dovecot/libtrash_plugin.a
-lib/dovecot/libtrash_plugin.la
-lib/dovecot/libtrash_plugin.so
+lib/dovecot/lib01_convert_plugin.a
+lib/dovecot/lib01_convert_plugin.la
+lib/dovecot/lib01_convert_plugin.so
+lib/dovecot/lib01_quota_plugin.a
+lib/dovecot/lib01_quota_plugin.la
+lib/dovecot/lib01_quota_plugin.so
+lib/dovecot/lib02_trash_plugin.a
+lib/dovecot/lib02_trash_plugin.la
+lib/dovecot/lib02_trash_plugin.so
 @dirrm lib/dovecot
 libexec/dovecot/checkpassword-reply
-libexec/dovecot/deliver
+libexec/dovecot/dict
 libexec/dovecot/dovecot-auth
+libexec/dovecot/gdbhelper
 libexec/dovecot/imap
 libexec/dovecot/imap-login
 libexec/dovecot/pop3
 libexec/dovecot/pop3-login
 libexec/dovecot/rawlog
+libexec/dovecot/ssl-build-param
 @dirrm libexec/dovecot
 sbin/dovecot
 sbin/dovecotpw
+share/dovecot/mkcert.sh
+ at dirrm share/dovecot
--- dovecot-1.0.b3.diff ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list