diff options
Diffstat (limited to 'mail/cyrus-imapd23')
24 files changed, 883 insertions, 0 deletions
diff --git a/mail/cyrus-imapd23/DEINSTALL b/mail/cyrus-imapd23/DEINSTALL new file mode 100644 index 00000000000..1cc436e409a --- /dev/null +++ b/mail/cyrus-imapd23/DEINSTALL @@ -0,0 +1,38 @@ +# $NetBSD: DEINSTALL,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +IMAPDCONF=@IMAPDCONF@ + +case ${STAGE} in +DEINSTALL) + if [ -f ${IMAPDCONF} ]; then + IMAPDIRS=` + ${AWK} '/configdirectory:/ { print $2 }; \ + /partition-.*:/ { print $2 }; \ + /sievedir:/ { print $2 }' \ + ${IMAPDCONF} | ${SORT} -ur` + _IMAPDIRS= + for dir in ${IMAPDIRS}; do + ${RMDIR} -p ${dir} 2>/dev/null || ${TRUE} + if [ -d ${dir} ]; then + _IMAPDIRS="${_IMAPDIRS} ${dir}" + fi + done + if [ -n "${_IMAPDIRS}" ]; then + ${CAT} << EOF +=========================================================================== +If you won't be using ${PKGNAME} any longer, you may want to remove +the following directories: + +EOF + for dir in ${_IMAPDIRS}; do + if [ -d "${dir}" ]; then + ${ECHO} " ${dir}" + fi + done + ${CAT} << EOF +=========================================================================== +EOF + fi + fi + ;; +esac diff --git a/mail/cyrus-imapd23/DESCR b/mail/cyrus-imapd23/DESCR new file mode 100644 index 00000000000..e742d558a95 --- /dev/null +++ b/mail/cyrus-imapd23/DESCR @@ -0,0 +1,7 @@ +IMAP (Internet Message Access Protocol) is an Internet standards-track +protocol for accessing messages (mail, bboards, news, etc). The Cyrus +IMAP server differs from other IMAP server implementations in that it +is generally intended to be run on "sealed" servers, where normal users +are not permitted to log in. The mailbox database is stored in parts of +the filesystem that are private to the Cyrus IMAP system. All user +access to mail is through the IMAP, POP3, or KPOP protocols. diff --git a/mail/cyrus-imapd23/MESSAGE b/mail/cyrus-imapd23/MESSAGE new file mode 100644 index 00000000000..aadfe6131a0 --- /dev/null +++ b/mail/cyrus-imapd23/MESSAGE @@ -0,0 +1,17 @@ +=========================================================================== +$NetBSD: MESSAGE,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +Please refer to: + + ${PREFIX}/share/doc/html/cyrus-imapd/install.html + +for more detailed instructions on setting up the environment before +starting the Cyrus IMAP server. In particular, several services may +need to be added to /etc/services. + +Anyone upgrading from an earlier version of the Cyrus IMAP server should +read: + + ${PREFIX}/share/doc/html/cyrus-imapd/install-upgrade.html + +=========================================================================== diff --git a/mail/cyrus-imapd23/Makefile b/mail/cyrus-imapd23/Makefile new file mode 100644 index 00000000000..397c55f9a04 --- /dev/null +++ b/mail/cyrus-imapd23/Makefile @@ -0,0 +1,148 @@ +# $NetBSD: Makefile,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +DISTNAME= cyrus-imapd-2.3.16 +CATEGORIES= mail +MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \ + ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/OLD-VERSIONS/imap/ \ + http://www.t.ring.gr.jp/archives/net/mail/cyrus-mail/ \ + ftp://ftp.t.ring.gr.jp/pub/net/mail/cyrus-mail/ + +MAINTAINER= obache@NetBSD.org +HOMEPAGE= http://cyrusimap.web.cmu.edu/imapd/ +COMMENT= Cyrus IMAP server + +PKG_DESTDIR_SUPPORT= user-destdir + +USE_TOOLS+= perl +USE_PKGLOCALEDIR= yes +GNU_CONFIGURE= yes +PERL5_CONFIGURE= no + +BUILD_DEFS+= VARBASE + +CHECK_PORTABILITY_SKIP= configure.lineno + +.include "../../mk/bsd.prefs.mk" + +# CYRUS_USER username of the Cyrus administrator +# CYRUS_GROUP group of the Cyrus administrator +# +CYRUS_USER?= cyrus +CYRUS_GROUP?= mail + +BUILD_DEFS+= CYRUS_USER CYRUS_GROUP +FILES_SUBST+= CYRUS_USER=${CYRUS_USER} +FILES_SUBST+= CYRUS_GROUP=${CYRUS_GROUP} + +CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} +CONFIGURE_ARGS+= --with-cyrus-user=${CYRUS_USER} +CONFIGURE_ARGS+= --with-cyrus-group=${CYRUS_GROUP} +CONFIGURE_ARGS+= --with-cyrus-prefix=${PREFIX}/cyrus +CONFIGURE_ARGS+= --with-pidfile=${VARBASE}/run/cyrus-master.pid +CONFIGURE_ARGS+= --with-openssl=${SSLBASE:Q} +CONFIGURE_ARGS+= --with-sasl=${BUILDLINK_PREFIX.cyrus-sasl} +CONFIGURE_ARGS+= --with-perl=${PERL5:Q} +CONFIGURE_ARGS+= --with-libwrap=${BUILDLINK_PREFIX.tcp_wrappers} +CONFIGURE_ENV+= ac_cv_lib_wrap_request_init=yes + +CONFIGURE_ARGS+= --enable-idled +CONFIGURE_ARGS+= --enable-listext +CONFIGURE_ARGS+= --enable-murder +CONFIGURE_ARGS+= --enable-nntp +CONFIGURE_ARGS+= --enable-replication + +.include "options.mk" + +.if exists(/usr/bin/compile_et) +COMERRBASE?= /usr +.endif +.if defined(COMERRBASE) +. if exists(${COMERRBASE}/include/krb5/com_err.h) +CPPFLAGS+= -I${COMERRBASE}/include/krb5 +. endif +CONFIGURE_ENV+= COMPILE_ET=${COMERRBASE}/bin/compile_et +.else +CONFIGURE_ARGS+= --with-com-err=yes +.endif + +MAKE_ENV+= PERL=${PERL5:Q} + +HTMLDIR= ${PREFIX}/share/doc/cyrus-imapd +EGDIR= ${PREFIX}/share/examples/cyrus-imapd +CONF_FILES= ${EGDIR}/imapd.conf ${PKG_SYSCONFDIR}/imapd.conf +CONF_FILES+= ${EGDIR}/normal.conf ${PKG_SYSCONFDIR}/cyrus.conf +RCD_SCRIPTS= cyrus +FILES_SUBST+= IMAPDCONF=${PKG_SYSCONFDIR}/imapd.conf + +PERL5_PACKLIST= \ + auto/Cyrus/IMAP/.packlist \ + auto/Cyrus/SIEVE/managesieve/.packlist + +.include "../../lang/perl5/module.mk" +BUILDLINK_API_DEPENDS.cyrus-sasl+= cyrus-sasl>=2.1.17 +.include "../../security/cyrus-sasl/buildlink3.mk" +.include "../../security/openssl/buildlink3.mk" + +# NetBSD's libssl is built without bn/bn_const.c (PR#37505) +.if !empty(MACHINE_PLATFORM:MNetBSD-4.*-*) +#. if !empty(USE_BUILTIN.openssl:M[yY][eE][sS]) +CFLAGS+= -DOPENSSL_LACK_BN_CONST +#. endif +.endif + +.include "../../security/tcp_wrappers/buildlink3.mk" +.include "../../mk/bdb.buildlink3.mk" + +# Only imap/mupdate needs to be build with pthreads support, so selectively +# enable it via patches for just that one program. +# +.include "../../mk/pthread.buildlink3.mk" + +# Change references of some manpages from foo.8 to cyrus-foo.8 to avoid +# manpage conflicts with other packages. Also change references to +# "/etc/{cyrus,imapd}.conf" into "${PKG_SYSCONFDIR}/{cyrus,imapd}.conf". +# +post-patch: + cd ${WRKSRC}/man; \ + set -- deliver 8 fetchnews 8 idled 8 imapd 8 lmtpd 8 master 8 \ + nntpd 8 notifyd 8 pop3d 8 quota 8; \ + while [ $$# -gt 0 ]; do \ + man=$$1.$$2; \ + for file in Makefile.in *.[0-9]; do \ + sed -e "s|\(\$$(srcdir)/\)\($$man\)|\1cyrus-\2|g" \ + -e "s|\(\\\fB\)\($$1($$2)\\\fR\)|\1cyrus-\2|g" \ + $$file > $$file.fixed; \ + mv -f $$file.fixed $$file; \ + done; \ + if [ -f $$man ]; then \ + mv $$man cyrus-$$man; \ + fi; \ + shift 2; \ + done + find ${WRKSRC} -type f -print | \ + xargs -n 1 ${GREP} -l -e /etc/imapd\.conf -e /etc/cyrus\.conf | \ + while read file; do \ + sed -e "s|/etc/\(cyrus\.conf\)|${PKG_SYSCONFDIR}/\1|g" \ + -e "s|/etc/\(imapd\.conf\)|${PKG_SYSCONFDIR}/\1|g" \ + $${file} > $${file}.fixed; \ + mv -f $${file}.fixed $${file}; \ + done + +post-install: + ${INSTALL_SCRIPT} ${WRKSRC}/tools/masssievec ${DESTDIR}${PREFIX}/cyrus/bin + ${INSTALL_SCRIPT} ${WRKSRC}/tools/migrate-metadata ${DESTDIR}${PREFIX}/cyrus/bin + ${INSTALL_SCRIPT} ${WRKSRC}/tools/mkimap ${DESTDIR}${PREFIX}/cyrus/bin + ${INSTALL_SCRIPT} ${WRKSRC}/tools/mknewsgroups ${DESTDIR}${PREFIX}/cyrus/bin + ${INSTALL_SCRIPT} ${WRKSRC}/tools/translatesieve ${DESTDIR}${PREFIX}/cyrus/bin + ${INSTALL_SCRIPT} ${WRKSRC}/tools/rehash ${DESTDIR}${PREFIX}/cyrus/bin + ${INSTALL_DATA_DIR} ${DESTDIR}${EGDIR} + ${INSTALL_DATA} ${FILESDIR}/imapd.conf ${DESTDIR}${EGDIR} + cd ${WRKSRC}/master/conf; for file in *.conf; do \ + ${INSTALL_DATA} $${file} ${DESTDIR}${EGDIR}; \ + done + ${INSTALL_DATA_DIR} ${DESTDIR}${HTMLDIR} + cd ${WRKSRC}/doc; for file in *.html cyrusv2.mc; do \ + ${INSTALL_DATA} $${file} ${DESTDIR}${HTMLDIR}; \ + done + +.include "../../mk/bsd.pkg.mk" diff --git a/mail/cyrus-imapd23/PLIST b/mail/cyrus-imapd23/PLIST new file mode 100644 index 00000000000..33243c45feb --- /dev/null +++ b/mail/cyrus-imapd23/PLIST @@ -0,0 +1,190 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ +bin/imtest +bin/installsieve +bin/lmtptest +bin/mupdatetest +bin/nntptest +bin/pop3test +bin/sieveshell +bin/sivtest +bin/smtptest +bin/synctest +cyrus/bin/arbitron +cyrus/bin/chk_cyrus +cyrus/bin/ctl_cyrusdb +cyrus/bin/ctl_deliver +cyrus/bin/ctl_mboxlist +cyrus/bin/cvt_cyrusdb +cyrus/bin/cyr_dbtool +cyrus/bin/cyr_df +cyrus/bin/cyr_expire +cyrus/bin/cyr_synclog +cyrus/bin/cyrdump +cyrus/bin/deliver +cyrus/bin/fetchnews +cyrus/bin/fud +cyrus/bin/idled +cyrus/bin/imapd +cyrus/bin/ipurge +cyrus/bin/lmtpd +cyrus/bin/lmtpproxyd +cyrus/bin/make_md5 +cyrus/bin/make_sha1 +cyrus/bin/masssievec +cyrus/bin/master +cyrus/bin/mbexamine +cyrus/bin/mbpath +cyrus/bin/migrate-metadata +cyrus/bin/mkimap +cyrus/bin/mknewsgroups +cyrus/bin/mupdate +cyrus/bin/nntpd +cyrus/bin/notifyd +cyrus/bin/pop3d +cyrus/bin/pop3proxyd +cyrus/bin/proxyd +${PLIST.ldap}cyrus/bin/ptdump +${PLIST.ldap}cyrus/bin/ptexpire +${PLIST.ldap}cyrus/bin/ptloader +cyrus/bin/quota +cyrus/bin/reconstruct +cyrus/bin/rehash +cyrus/bin/sievec +cyrus/bin/sieved +cyrus/bin/smmapd +cyrus/bin/squatter +cyrus/bin/sync_client +cyrus/bin/sync_reset +cyrus/bin/sync_server +cyrus/bin/timsieved +cyrus/bin/tls_prune +cyrus/bin/translatesieve +cyrus/bin/unexpunge +include/cyrus/acl.h +include/cyrus/assert.h +include/cyrus/auth.h +include/cyrus/bsearch.h +include/cyrus/byteorder64.h +include/cyrus/charset.h +include/cyrus/cyrusdb.h +include/cyrus/glob.h +include/cyrus/gmtoff.h +include/cyrus/hash.h +include/cyrus/hmac-md5.h +include/cyrus/imapopts.h +include/cyrus/imapurl.h +include/cyrus/imclient.h +include/cyrus/imparse.h +include/cyrus/iptostring.h +include/cyrus/libconfig.h +include/cyrus/libcyr_cfg.h +include/cyrus/lock.h +include/cyrus/lsort.h +include/cyrus/map.h +include/cyrus/md5.h +include/cyrus/mkgmtime.h +include/cyrus/mpool.h +include/cyrus/nonblock.h +include/cyrus/parseaddr.h +include/cyrus/prot.h +include/cyrus/retry.h +include/cyrus/rfc822date.h +include/cyrus/strhash.h +include/cyrus/stristr.h +include/cyrus/sysexits.h +include/cyrus/util.h +include/cyrus/xmalloc.h +include/cyrus/xstrlcat.h +include/cyrus/xstrlcpy.h +lib/libcyrus.a +lib/libcyrus_min.a +man/man1/imtest.1 +man/man1/installsieve.1 +man/man1/lmtptest.1 +man/man1/mupdatetest.1 +man/man1/nntptest.1 +man/man1/pop3test.1 +man/man1/sieveshell.1 +man/man1/sivtest.1 +man/man1/smtptest.1 +man/man3/imclient.3 +man/man5/cyrus.conf.5 +man/man5/imapd.conf.5 +man/man5/krb.equiv.5 +man/man8/arbitron.8 +man/man8/chk_cyrus.8 +man/man8/ctl_cyrusdb.8 +man/man8/ctl_deliver.8 +man/man8/ctl_mboxlist.8 +man/man8/cvt_cyrusdb.8 +man/man8/cyr_dbtool.8 +man/man8/cyr_df.8 +man/man8/cyr_expire.8 +man/man8/cyr_synclog.8 +man/man8/cyrus-deliver.8 +man/man8/cyrus-fetchnews.8 +man/man8/cyrus-idled.8 +man/man8/cyrus-imapd.8 +man/man8/cyrus-lmtpd.8 +man/man8/cyrus-master.8 +man/man8/cyrus-nntpd.8 +man/man8/cyrus-notifyd.8 +man/man8/cyrus-pop3d.8 +man/man8/cyrus-quota.8 +man/man8/fud.8 +man/man8/ipurge.8 +man/man8/make_md5.8 +man/man8/make_sha1.8 +man/man8/mbexamine.8 +man/man8/mbpath.8 +man/man8/reconstruct.8 +man/man8/rmnews.8 +man/man8/smmapd.8 +man/man8/squatter.8 +man/man8/sync_client.8 +man/man8/sync_reset.8 +man/man8/sync_server.8 +man/man8/syncnews.8 +man/man8/timsieved.8 +man/man8/tls_prune.8 +man/man8/unexpunge.8 +share/doc/cyrus-imapd/altnamespace.html +share/doc/cyrus-imapd/anoncvs.html +share/doc/cyrus-imapd/bugs.html +share/doc/cyrus-imapd/changes.html +share/doc/cyrus-imapd/cyrusv2.mc +share/doc/cyrus-imapd/faq.html +share/doc/cyrus-imapd/feedback.html +share/doc/cyrus-imapd/index.html +share/doc/cyrus-imapd/install-admin-mb.html +share/doc/cyrus-imapd/install-auth.html +share/doc/cyrus-imapd/install-compile.html +share/doc/cyrus-imapd/install-configure.html +share/doc/cyrus-imapd/install-murder.html +share/doc/cyrus-imapd/install-netnews.html +share/doc/cyrus-imapd/install-perf.html +share/doc/cyrus-imapd/install-prereq.html +share/doc/cyrus-imapd/install-replication.html +share/doc/cyrus-imapd/install-sieve.html +share/doc/cyrus-imapd/install-snmpmon.html +share/doc/cyrus-imapd/install-testing.html +share/doc/cyrus-imapd/install-upgrade.html +share/doc/cyrus-imapd/install-virtdomains.html +share/doc/cyrus-imapd/install.html +share/doc/cyrus-imapd/mailing-list.html +share/doc/cyrus-imapd/man.html +share/doc/cyrus-imapd/notes.html +share/doc/cyrus-imapd/os.html +share/doc/cyrus-imapd/overview.html +share/doc/cyrus-imapd/questions.html +share/doc/cyrus-imapd/readme.html +share/doc/cyrus-imapd/sieve-protocol.html +share/doc/cyrus-imapd/sieve.html +share/doc/cyrus-imapd/specs.html +share/examples/cyrus-imapd/cmu-backend.conf +share/examples/cyrus-imapd/cmu-frontend.conf +share/examples/cyrus-imapd/imapd.conf +share/examples/cyrus-imapd/normal.conf +share/examples/cyrus-imapd/prefork.conf +share/examples/cyrus-imapd/small.conf +share/examples/rc.d/cyrus diff --git a/mail/cyrus-imapd23/distinfo b/mail/cyrus-imapd23/distinfo new file mode 100644 index 00000000000..2580752a921 --- /dev/null +++ b/mail/cyrus-imapd23/distinfo @@ -0,0 +1,20 @@ +$NetBSD: distinfo,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +SHA1 (cyrus-imapd-2.3.16.tar.gz) = decc87045bfedb449d0af3512aa228090e558036 +RMD160 (cyrus-imapd-2.3.16.tar.gz) = fa9d1462a7d7e839da9a11f52cddfd2ab854f2be +Size (cyrus-imapd-2.3.16.tar.gz) = 2359349 bytes +SHA1 (patch-aa) = 38605d33284292bc3a3a1665bce1e63203b407f4 +SHA1 (patch-ab) = 6dee8c0b449f77b576e319cf78dc430f9a4e371a +SHA1 (patch-ac) = 28143b2306866ec8fb6357f7fa70f1c8baaa4c2d +SHA1 (patch-ad) = b9a68c7a1ab9b36e1c9bfa6d06dbc4f13bb2c99a +SHA1 (patch-ae) = f72486e0e3cf941eabbe6da31b107e8aabecb112 +SHA1 (patch-af) = f007c8d861e003f75260f0544a24ef71f8062494 +SHA1 (patch-ag) = dd38d0c6aa45736ef142cdb4ad95f11e4c23cb03 +SHA1 (patch-ah) = 6daa97e516a5db87579dabd11a7a6f9b83366e27 +SHA1 (patch-ai) = 6cc1c87972cb0fa4b170e76869817b1de1ff7aa6 +SHA1 (patch-aj) = a2d3aba6b2bf4383740f0b1bd48cb6d4027a6d70 +SHA1 (patch-ak) = de75847f1ace85591109096fb3a33d78763cd479 +SHA1 (patch-al) = 70b17f045298492978e3756d4a211f35e90b9bb9 +SHA1 (patch-am) = d06b62f9ea153560d84ec013861839071e4ab700 +SHA1 (patch-an) = b3ac809f2807a1766197958e807eb99cb42847f0 +SHA1 (patch-ao) = 784363a1802cbaf08e62bbbd2020fe592be0a126 diff --git a/mail/cyrus-imapd23/files/cyrus.sh b/mail/cyrus-imapd23/files/cyrus.sh new file mode 100644 index 00000000000..e9bbb206d6e --- /dev/null +++ b/mail/cyrus-imapd23/files/cyrus.sh @@ -0,0 +1,78 @@ +#!@RCD_SCRIPTS_SHELL@ +# +# $NetBSD: cyrus.sh,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ +# +# PROVIDE: cyrus +# REQUIRE: DAEMON +# BEFORE: mail +# +# To start cyrus-imapd at startup, copy this script to /etc/rc.d and set +# cyrus=YES in /etc/rc.conf. + +if [ -f /etc/rc.subr ]; then + . /etc/rc.subr +fi + +rcd_dir=`@DIRNAME@ $0` + +name="cyrus" +rcvar=$name +command="@PREFIX@/cyrus/bin/master" +command_args="-d" +pidfile="@VARBASE@/run/cyrus-master.pid" +required_files="@PKG_SYSCONFDIR@/cyrus.conf @IMAPDCONF@" +extra_commands="mkimap reload" + +mkimap_cmd="cyrus_mkimap" +start_precmd="cyrus_prestart" + +cyrus_prestart() +{ + # Check to see if "configdirectory" is present before we start + # the Cyrus IMAP server. Otherwise, we run mkimap to generate + # the necessary directories. + # + if [ -f @IMAPDCONF@ ]; then + configdir=` \ + @AWK@ '/^configdirectory:/ { print $2; exit };' \ + @IMAPDCONF@ \ + ` + if [ -z "$configdir" ]; then + @ECHO@ "@IMAPDCONF@ missing 'configdirectory' setting" + exit 1 + fi + if [ ! -d "$configdir" ]; then + $rcd_dir/cyrus mkimap + fi + fi +} + +cyrus_mkimap() +{ + # Generate the prerequisite directory structure for Cyrus IMAP. + if [ -f @IMAPDCONF@ ]; then + @AWK@ '/^configdirectory:/ { print $2 }; \ + /^partition-.*:/ { print $2 }; \ + /^sievedir:/ { print $2 }' \ + @IMAPDCONF@ | \ + while read dir; do + if [ ! -d "$dir" ]; then + @MKDIR@ "$dir" + @CHMOD@ 750 "$dir" + @CHOWN@ @CYRUS_USER@ "$dir" + @CHGRP@ @CYRUS_GROUP@ "$dir" + fi + done + @SU@ -m @CYRUS_USER@ -c "@PREFIX@/cyrus/bin/mkimap" + fi +} + +if [ -f /etc/rc.subr -a -f /etc/rc.conf \ + -a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then + load_rc_config $name + run_rc_command "$1" +else + @ECHO@ -n " ${name}" + eval ${start_precmd} + ${command} ${cyrus_flags} ${command_args} +fi diff --git a/mail/cyrus-imapd23/files/imapd.conf b/mail/cyrus-imapd23/files/imapd.conf new file mode 100644 index 00000000000..80d473a3be0 --- /dev/null +++ b/mail/cyrus-imapd23/files/imapd.conf @@ -0,0 +1,25 @@ +# $NetBSD: imapd.conf,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ +# +# Cyrus IMAP server configuration file. Refer to imapd.conf(5) for +# more options. + +configdirectory: /var/imap +partition-default: /var/spool/imap +sieveusehomedir: false +sievedir: /var/sieve +hashimapspool: false + +admins: cyrus + +# If use the saslauthd daemon to verify plaintext passwords, please ensure that +# the saslauthd daemon is running before trying to authenticate. +# +#sasl_pwcheck_method: saslauthd +sasl_pwcheck_method: auxprop + +# The server certificate and key files must be specified for the +# server to repond to IMAPS or POP3S requests. See imapd.conf(5) for +# a complete listing of tls_* options. +# +#tls_cert_file: /var/imap/server.pem +#tls_key_file: /var/imap/server.pem diff --git a/mail/cyrus-imapd23/options.mk b/mail/cyrus-imapd23/options.mk new file mode 100644 index 00000000000..e98b02e8da3 --- /dev/null +++ b/mail/cyrus-imapd23/options.mk @@ -0,0 +1,89 @@ +# $NetBSD: options.mk,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ +# + +PKG_OPTIONS_VAR= PKG_OPTIONS.cyrus-imapd +PKG_SUPPORTED_OPTIONS= gssapi kerberos kerberos4 ldap snmp +PKG_SUPPORTED_OPTIONS+= bdb mysql pgsql sqlite +PKG_SUGGESTED_OPTIONS= bdb + +.include "../../mk/bsd.options.mk" + +PLIST_VARS+= ldap + +.if !empty(PKG_OPTIONS:Mkerberos) +. if empty(PKG_OPTIONS:Mgssapi) +PKG_OPTIONS+= gssapi +. endif +.endif + +.if !empty(PKG_OPTIONS:Mkerberos4) +. if exists(/usr/include/kerberosIV/krb.h) +PKG_USE_KERBEROS= yes +CONFIGURE_ARGS+= --with-krb=/usr +. endif +.elif !empty(PKG_OPTIONS:Mgssapi) +. include "../../mk/krb5.buildlink3.mk" +CONFIGURE_ARGS+= --enable-gssapi=${KRB5BASE} +CONFIGURE_ARGS+= --with-gss_impl=${GSSIMPL.${KRB5_TYPE}} +GSSIMPL.heimdal= heimdal +GSSIMPL.mit-krb5= mit +CONFIGURE_ENV+= COMPILE_ET=${KRB5BASE}/bin/compile_et +COMERRBASE= ${KRB5BASE} +.else +CONFIGURE_ARGS+= --without-krb +CONFIGURE_ARGS+= --disable-gssapi +.endif + +.if !empty(PKG_OPTIONS:Mldap) +. include "../../databases/openldap-client/buildlink3.mk" +CONFIGURE_ARGS+= --with-ldap=${BUILDLINK_PREFIX.openldap-client} +PLIST.ldap= yes +.else +CONFIGURE_ARGS+= --without-ldap +.endif + +.if !empty(PKG_OPTIONS:Msnmp) +. include "../../net/net-snmp/buildlink3.mk" +CONFIGURE_ARGS+= --with-snmp=${BUILDLINK_PREFIX.net-snmp} +USE_TOOLS+= perl:run +.else +CONFIGURE_ARGS+= --without-snmp +.endif + +.if !empty(PKG_OPTIONS:Mzephyr) +. include "../../chat/zephyr/buildlink3.mk" +CONFIGURE_ARGS+= --with-zephyr=${BUILDLINK_PREFIX.zephyr} +.else +CONFIGURE_ARGS+= --without-zephyr +.endif + +.if !empty(PKG_OPTIONS:Mbdb) +BDB_ACCEPTED= db4 db3 +. include "../../mk/bdb.buildlink3.mk" +CONFIGURE_ARGS+= --with-bdb=${BDB_TYPE} +CONFIGURE_ARGS+= --with-bdb-incdir=${BDBBASE}/include/${BDB_TYPE} +CONFIGURE_ARGS+= --with-bdb-libdir=${BDBBASE}/lib +.else +CONFIGURE_ARGS+= --without-bdb +.endif + +.if !empty(PKG_OPTIONS:Mmysql) +. include "../../mk/mysql.buildlink3.mk" +CONFIGURE_ARGS+= --with-mysql=${BUILDLINK_PREFIX.mysql-client} +.else +CONFIGURE_ARGS+= --without-mysql +.endif + +.if !empty(PKG_OPTIONS:Mpgsql) +. include "../../mk/pgsql.buildlink3.mk" +CONFIGURE_ARGS+= --with-pgsql=${PGSQL_PREFIX} +.else +CONFIGURE_ARGS+= --without-pgsql +.endif + +.if !empty(PKG_OPTIONS:Msqlite) +. include "../../databases/sqlite3/buildlink3.mk" +CONFIGURE_ARGS+= --with-sqlite=${BUILDLINK_PREFIX.sqlite3} +.else +CONFIGURE_ARGS+= --without-sqlite +.endif diff --git a/mail/cyrus-imapd23/patches/patch-aa b/mail/cyrus-imapd23/patches/patch-aa new file mode 100644 index 00000000000..1a603beed0d --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-aa @@ -0,0 +1,18 @@ +$NetBSD: patch-aa,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- configure.in.orig 2009-12-21 13:09:10.000000000 +0000 ++++ configure.in +@@ -391,11 +391,11 @@ if test "$sievedir" != "no"; then + AC_CHECK_LIB(fl,main) + + AC_CHECK_HEADERS(pcreposix.h rxposix.h) +- if test "$ac_cv_header_pcreposix_h" == "yes"; then ++ if test "$ac_cv_header_pcreposix_h" = "yes"; then + LIBS="$LIBS -lpcre -lpcreposix"; + AC_DEFINE(ENABLE_REGEX, [], [Do we have a regex library?]) + else +- if test "$ac_cv_header_rxposix_h" == "yes"; then ++ if test "$ac_cv_header_rxposix_h" = "yes"; then + LIBS="$LIBS -lrx" + AC_DEFINE(ENABLE_REGEX, [], + [Do we have a regex library?]) diff --git a/mail/cyrus-imapd23/patches/patch-ab b/mail/cyrus-imapd23/patches/patch-ab new file mode 100644 index 00000000000..2a3ac5a85f3 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ab @@ -0,0 +1,22 @@ +$NetBSD: patch-ab,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- configure.orig 2009-12-23 08:06:48.000000000 +0000 ++++ configure +@@ -12402,7 +12402,7 @@ fi + + done + +- if test "$ac_cv_header_pcreposix_h" == "yes"; then ++ if test "$ac_cv_header_pcreposix_h" = "yes"; then + LIBS="$LIBS -lpcre -lpcreposix"; + + cat >>confdefs.h <<\_ACEOF +@@ -12410,7 +12410,7 @@ cat >>confdefs.h <<\_ACEOF + _ACEOF + + else +- if test "$ac_cv_header_rxposix_h" == "yes"; then ++ if test "$ac_cv_header_rxposix_h" = "yes"; then + LIBS="$LIBS -lrx" + + cat >>confdefs.h <<\_ACEOF diff --git a/mail/cyrus-imapd23/patches/patch-ac b/mail/cyrus-imapd23/patches/patch-ac new file mode 100644 index 00000000000..07b7eec62c6 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ac @@ -0,0 +1,35 @@ +$NetBSD: patch-ac,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- imap/Makefile.in.orig 2009-03-30 16:04:56.000000000 +0000 ++++ imap/Makefile.in +@@ -182,6 +182,9 @@ mupdate_err.c: mupdate_err.et + + mupdate_err.h: mupdate_err.c + ++mutex_pthread.o: mutex_pthread.c ++ $(CC) -c $(CPPFLAGS) $(DEFS) $(CFLAGS) $(PTHREAD_CFLAGS) $< ++ + ### Services + idled: idled.o mutex_fake.o libimap.a $(DEPLIBS) + $(CC) $(LDFLAGS) -o idled \ +@@ -216,16 +219,16 @@ imapd.quant: $(IMAPDOBJS) mutex_fake.o l + + mupdate: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o tls.o \ + libimap.a $(DEPLIBS) +- $(CC) $(LDFLAGS) -o mupdate \ ++ $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -o mupdate \ + $(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \ + mutex_pthread.o tls.o libimap.a \ +- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread ++ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS) + + mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \ + libimap.a $(DEPLIBS) +- $(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o mupdate.pure \ ++ $(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -o mupdate.pure \ + $(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \ +- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread ++ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS) + + pop3d: pop3d.o proxy.o backend.o tls.o mutex_fake.o libimap.a \ + $(DEPLIBS) $(SERVICE) diff --git a/mail/cyrus-imapd23/patches/patch-ad b/mail/cyrus-imapd23/patches/patch-ad new file mode 100644 index 00000000000..a371434f99f --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ad @@ -0,0 +1,14 @@ +$NetBSD: patch-ad,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- imap/cvt_cyrusdb.c.orig 2009-02-11 19:11:32.000000000 +0000 ++++ imap/cvt_cyrusdb.c +@@ -59,7 +59,9 @@ + #include <syslog.h> + + #include <sys/ipc.h> ++#if !defined(__APPLE__) + #include <sys/msg.h> ++#endif + + #include "acl.h" + #include "assert.h" diff --git a/mail/cyrus-imapd23/patches/patch-ae b/mail/cyrus-imapd23/patches/patch-ae new file mode 100644 index 00000000000..ca3486b089a --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ae @@ -0,0 +1,14 @@ +$NetBSD: patch-ae,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- imap/mboxlist.c.orig 2009-11-17 03:34:30.000000000 +0000 ++++ imap/mboxlist.c +@@ -59,7 +59,9 @@ + #include <syslog.h> + + #include <sys/ipc.h> ++#if !defined(__APPLE__) + #include <sys/msg.h> ++#endif + + #include "acl.h" + #include "annotate.h" diff --git a/mail/cyrus-imapd23/patches/patch-af b/mail/cyrus-imapd23/patches/patch-af new file mode 100644 index 00000000000..e33c9b7acdf --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-af @@ -0,0 +1,15 @@ +$NetBSD: patch-af,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- imap/message.c.orig 2009-11-19 21:52:55.000000000 +0000 ++++ imap/message.c +@@ -74,6 +74,10 @@ + #include "global.h" + #include "retry.h" + ++#ifdef __APPLE__ ++struct et_list *_et_list = NULL; ++#endif ++ + /* Message being parsed */ + struct msg { + const char *base; diff --git a/mail/cyrus-imapd23/patches/patch-ag b/mail/cyrus-imapd23/patches/patch-ag new file mode 100644 index 00000000000..4a4746da625 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ag @@ -0,0 +1,25 @@ +$NetBSD: patch-ag,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- imtest/imtest.c.orig 2009-09-24 13:35:05.000000000 +0000 ++++ imtest/imtest.c +@@ -49,7 +49,9 @@ + #include <sys/time.h> + #include <sys/types.h> + #include <sys/ipc.h> ++#if !defined(__APPLE__) + #include <sys/msg.h> ++#endif + #include <sys/stat.h> + #include <fcntl.h> + +@@ -74,6 +76,10 @@ + #include <netinet/in.h> + #include <netdb.h> + ++#ifdef HAVE_SYS_PARAM_H ++#include <sys/param.h> ++#endif ++ + #include <sasl/sasl.h> + #include <sasl/saslutil.h> + diff --git a/mail/cyrus-imapd23/patches/patch-ah b/mail/cyrus-imapd23/patches/patch-ah new file mode 100644 index 00000000000..a3b621d06c5 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ah @@ -0,0 +1,13 @@ +$NetBSD: patch-ah,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- perl/Makefile.in.orig 2009-05-06 13:48:04.000000000 +0000 ++++ perl/Makefile.in +@@ -86,7 +86,7 @@ all:: + BDB_LIB="$(BDB_LIB)" BDB_INC="$(BDB_INC)" \ + OPENSSL_LIB="$(OPENSSL_LIB)" OPENSSL_INC="$(OPENSSL_INC)" \ + SASL_LIB="$(SASL_LIB)" SASL_INC="$(SASL_INC)" CC="$(CC)" \ +- $(PERL) Makefile.PL PREFIX=$(prefix); \ ++ $(PERL) Makefile.PL INSTALLDIRS=vendor PREFIX=$(prefix); \ + fi; \ + $(MAKE) $(MFLAGS) DESTDIR=$(DESTDIR) all) || exit 1; \ + done diff --git a/mail/cyrus-imapd23/patches/patch-ai b/mail/cyrus-imapd23/patches/patch-ai new file mode 100644 index 00000000000..321375e72e9 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ai @@ -0,0 +1,13 @@ +$NetBSD: patch-ai,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- perl/sieve/Makefile.in.orig 2009-05-06 13:48:04.000000000 +0000 ++++ perl/sieve/Makefile.in +@@ -86,7 +86,7 @@ all:: + BDB_LIB="$(BDB_LIB)" BDB_INC="$(BDB_INC)" \ + OPENSSL_LIB="$(OPENSSL_LIB)" OPENSSL_INC="$(OPENSSL_INC)" \ + SASL_LIB="$(SASL_LIB)" SASL_INC="$(SASL_INC)" CC="$(CC)" \ +- $(PERL) Makefile.PL PREFIX=$(prefix); \ ++ $(PERL) Makefile.PL INSTALLDIRS=vendor PREFIX=$(prefix); \ + fi; \ + $(MAKE) $(MFLAGS) DESTDIR=$(DESTDIR) all) || exit 1; \ + done diff --git a/mail/cyrus-imapd23/patches/patch-aj b/mail/cyrus-imapd23/patches/patch-aj new file mode 100644 index 00000000000..950a5dbdcf6 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-aj @@ -0,0 +1,14 @@ +$NetBSD: patch-aj,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- perl/sieve/lib/request.c.orig 2008-04-04 12:47:21.000000000 +0000 ++++ perl/sieve/lib/request.c +@@ -52,7 +52,9 @@ + #include <sys/stat.h> + #include <sys/types.h> + #include <sys/ipc.h> ++#if !defined(__APPLE__) + #include <sys/msg.h> ++#endif + + #include <stdlib.h> + #include <stdio.h> diff --git a/mail/cyrus-imapd23/patches/patch-ak b/mail/cyrus-imapd23/patches/patch-ak new file mode 100644 index 00000000000..ae9f31012c7 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ak @@ -0,0 +1,15 @@ +$NetBSD: patch-ak,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- sieve/sievec.c.orig 2009-03-25 23:58:04.000000000 +0000 ++++ sieve/sievec.c +@@ -63,6 +63,10 @@ + #include <sys/stat.h> + #include <fcntl.h> + ++#ifdef __APPLE__ ++struct et_list *_et_list = NULL; ++#endif ++ + /* config.c stuff */ + const int config_need_data = 0; + diff --git a/mail/cyrus-imapd23/patches/patch-al b/mail/cyrus-imapd23/patches/patch-al new file mode 100644 index 00000000000..30b6b82c12f --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-al @@ -0,0 +1,15 @@ +$NetBSD: patch-al,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- sieve/sieved.c.orig 2009-03-25 23:58:05.000000000 +0000 ++++ sieve/sieved.c +@@ -63,6 +63,10 @@ + + #include "map.h" + ++#ifdef __APPLE__ ++struct et_list *_et_list = NULL; ++#endif ++ + /* config.c stuff */ + const int config_need_data = 0; + diff --git a/mail/cyrus-imapd23/patches/patch-am b/mail/cyrus-imapd23/patches/patch-am new file mode 100644 index 00000000000..299976bb357 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-am @@ -0,0 +1,19 @@ +$NetBSD: patch-am,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- tools/config2header.orig 2009-12-02 22:50:29.000000000 +0000 ++++ tools/config2header +@@ -79,6 +79,14 @@ while ($#ARGV >= 0) { + + my $use_gcc_extension = ($CC and $CC eq 'gcc'); + ++# ++# Skip any CC options such as -pipe ++# The last two parameters are the .c and .h files ++# ++while ($#ARGV > 1) { ++ shift @ARGV; ++} ++ + die "wrong number of arguments" if ($#ARGV != 1); + my ($cfile, $hfile) = @ARGV; + diff --git a/mail/cyrus-imapd23/patches/patch-an b/mail/cyrus-imapd23/patches/patch-an new file mode 100644 index 00000000000..ee5d4c13a98 --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-an @@ -0,0 +1,22 @@ +$NetBSD: patch-an,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- imap/tls.c.orig 2008-11-14 22:24:38.000000000 +0000 ++++ imap/tls.c +@@ -223,7 +223,7 @@ static RSA *tmp_rsa_cb(SSL * s __attribu + return (rsa_tmp); + } + +-#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL) ++#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL) && !defined(OPENSSL_LACK_BN_CONST) + /* Logic copied from OpenSSL apps/s_server.c: give the TLS context + * DH params to work with DHE-* cipher suites. Hardcoded fallback + * in case no DH params in tls_key_file or tls_cert_file. +@@ -735,7 +735,7 @@ int tls_init_serverengine(const char + } + SSL_CTX_set_tmp_rsa_callback(s_ctx, tmp_rsa_cb); + +-#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL) ++#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL) && !defined(OPENSSL_LACK_BN_CONST) + /* Load DH params for DHE-* key exchanges */ + SSL_CTX_set_tmp_dh(s_ctx, load_dh_param(s_key_file, s_cert_file)); + /* FIXME: Load ECDH params for ECDHE suites when 0.9.9 is released */ diff --git a/mail/cyrus-imapd23/patches/patch-ao b/mail/cyrus-imapd23/patches/patch-ao new file mode 100644 index 00000000000..fa2053d032f --- /dev/null +++ b/mail/cyrus-imapd23/patches/patch-ao @@ -0,0 +1,17 @@ +$NetBSD: patch-ao,v 1.1.1.1 2010/02/11 08:27:09 obache Exp $ + +--- imap/imap_err.et.orig 2009-12-02 02:09:43.000000000 +0000 ++++ imap/imap_err.et +@@ -198,10 +198,10 @@ ec IMAP_NO_MSGGONE, + "Message %d no longer exists" + + ec IMAP_NO_CHECKSEEN, +- "Unable to checkpoint \\Seen state" ++ "Unable to checkpoint \\\\Seen state" + + ec IMAP_NO_CHECKPRESERVE, +- "Unable to preserve \\Seen state" ++ "Unable to preserve \\\\Seen state" + + ec IMAP_NO_NOSUCHMSG, + "No matching messages" |