aboutsummaryrefslogtreecommitdiff
path: root/mail/dbmail23
diff options
context:
space:
mode:
authorFelippe de Meirelles Motta <lippe@FreeBSD.org>2008-06-06 02:52:29 +0000
committerFelippe de Meirelles Motta <lippe@FreeBSD.org>2008-06-06 02:52:29 +0000
commit3d36bd88e7d270e41c12af2438be37827dcae797 (patch)
tree5ad180353c05099887607bb7285df3cd6c1f3076 /mail/dbmail23
parent3ff89862cdcf3f45ea881b298c9c1c74649997c1 (diff)
downloadports-3d36bd88e7d270e41c12af2438be37827dcae797.tar.gz
ports-3d36bd88e7d270e41c12af2438be37827dcae797.zip
Notes
Diffstat (limited to 'mail/dbmail23')
-rw-r--r--mail/dbmail23/Makefile138
-rw-r--r--mail/dbmail23/distinfo3
-rw-r--r--mail/dbmail23/files/dbmail-imapd.sh.in32
-rw-r--r--mail/dbmail23/files/dbmail-lmtpd.sh.in32
-rw-r--r--mail/dbmail23/files/dbmail-pop3d.sh.in32
-rw-r--r--mail/dbmail23/files/dbmail-timsieved.sh.in32
-rw-r--r--mail/dbmail23/files/patch-dbmail.h.in16
-rw-r--r--mail/dbmail23/files/patch-imap4.c11
-rw-r--r--mail/dbmail23/files/patch-timsieve.c11
-rw-r--r--mail/dbmail23/files/pkg-message.in8
-rw-r--r--mail/dbmail23/pkg-descr24
-rw-r--r--mail/dbmail23/pkg-plist68
12 files changed, 407 insertions, 0 deletions
diff --git a/mail/dbmail23/Makefile b/mail/dbmail23/Makefile
new file mode 100644
index 000000000000..d0b9f0f146d8
--- /dev/null
+++ b/mail/dbmail23/Makefile
@@ -0,0 +1,138 @@
+# New ports collection makefile for: dbmail23
+# Date created: 5 Feb 2008
+# Whom: Mark Starovoytov <mark_sf@kikg.ifmo.ru>
+#
+# $FreeBSD$
+#
+
+PORTNAME= dbmail
+PORTVERSION= 2.3.2
+CATEGORIES= mail
+MASTER_SITES= http://www.dbmail.org/download/2.3/
+
+MAINTAINER= mark_sf@kikg.ifmo.ru
+COMMENT= An SQL database-based mail system (POP3 and IMAP)
+
+LIB_DEPENDS+= gmime-2.0.4:${PORTSDIR}/mail/gmime2
+LIB_DEPENDS+= mhash.2:${PORTSDIR}/security/mhash
+
+CONFLICTS= dbmail-*-2.0.* dbmail-2.1.* dbmail-2.2.*
+
+OPTIONS= MYSQL "Build with MySQL support" on \
+ POSTGRESQL "Build with PostgreSQL support" off \
+ SQLITE "Build with SQLite support" off \
+ SIEVE "Build w. support for Sieve mail sorting language" off \
+ LDAP "Build with support for LDAP authentication" off \
+ MANPAGES "Install man pages" on
+
+USE_AUTOTOOLS= libtool:15
+USE_GMAKE= YES
+USE_GCC= 3.2+
+USE_LDCONFIG= ${PREFIX}/lib/dbmail
+USE_RC_SUBR= dbmail-pop3d.sh dbmail-lmtpd.sh dbmail-imapd.sh dbmail-timsieved.sh
+USE_GNOME= glib20 pkgconfig
+USE_OPENSSL= YES
+
+CFLAGS+= -fPIC -I${LOCALBASE}/include ${PTHREAD_CFLAGS}
+LDFLAGS+= -L${LOCALBASE}/lib ${PTHREAD_LIBS}
+CONFIGURE_ENV+= LDFLAGS="${LDFLAGS}" LOCALBASE=${LOCALBASE}
+CONFIGURE_ARGS+=--with-pkglibdir=${LOCALBASE}/lib/dbmail \
+ --sysconfdir=${PREFIX}/etc
+MAKE_ARGS+= mandir=${MANPREFIX}/man
+
+MAIN_DOCS= AUTHORS BUGS COPYING INSTALL NEWS README \
+ THANKS UPGRADING VERSION \
+ dbmail.schema
+ADDITIONAL_DOCS=README.aliases README.exim README.ldap \
+ README.postfix README.qmail README.sieve \
+ README.smtp README.solaris README.usermap
+PORTDOCS= ${MAIN_DOCS} ${ADDITIONAL_DOCS}
+SUB_FILES= pkg-message
+
+PLIST_SUB+= PORTNAME=${PORTNAME}
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_MYSQL)
+CONFIGURE_ARGS+=--with-mysql
+USE_MYSQL= YES
+DATABASE+= mysql
+PLIST_SUB+= MYSQL=""
+.else
+PLIST_SUB+= MYSQL="@comment "
+.endif
+
+.if defined(WITH_POSTGRESQL)
+CONFIGURE_ARGS+=--with-pgsql
+USE_PGSQL= yes
+DATABASE+= postgresql
+PLIST_SUB+= PGSQL=""
+.else
+PLIST_SUB+= PGSQL="@comment "
+.endif
+
+.if defined(WITH_SQLITE)
+CONFIGURE_ARGS+=--with-sqlite
+USE_SQLITE= yes
+DATABASE+= sqlite
+PLIST_SUB+= SQLITE=""
+.else
+PLIST_SUB+= SQLITE="@comment "
+.endif
+
+.if defined(WITH_SIEVE)
+CONFIGURE_ARGS+=--with-sieve
+LIB_DEPENDS+= sieve.1:${PORTSDIR}/mail/libsieve
+PLIST_SUB+= SIEVE=""
+.else
+PLIST_SUB+= SIEVE="@comment "
+.endif
+
+.if defined(WITH_LDAP)
+CONFIGURE_ARGS+=--with-auth-ldap
+USE_OPENLDAP= yes
+PLIST_SUB+= LDAP=""
+.else
+PLIST_SUB+= LDAP="@comment "
+.endif
+
+.if defined(WITH_MANPAGES)
+CONFIGURE_ARGS+=--enable-manpages=yes
+BUILD_DEPENDS+= asciidoc:${PORTSDIR}/textproc/asciidoc
+BUILD_DEPENDS+= xmlto:${PORTSDIR}/textproc/xmlto
+MAN1= dbmail-deliver.1 dbmail.1
+MAN5= dbmail.conf.5
+MAN8= dbmail-export.8 dbmail-imapd.8 dbmail-lmtpd.8 \
+ dbmail-pop3d.8 dbmail-sievecmd.8 dbmail-timsieved.8 \
+ dbmail-users.8 dbmail-util.8
+MANCOMPRESSED= no
+.else
+NO_INSTALL_MANPAGES=yes
+.endif
+
+.if !defined(WITH_MYSQL) && !defined(WITH_POSTGRESQL) && !defined(WITH_SQLITE)
+IGNORE="requires at least one database backend selected. Run 'make config'"
+.endif
+
+post-patch:
+ @${FIND} ${WRKSRC} -name CVS -type d | ${XARGS} ${RM} -fr
+ @${FIND} ${WRKSRC} -name *.orig -type f | ${XARGS} ${RM} -fr
+
+post-install:
+ @${INSTALL_DATA} ${WRKSRC}/dbmail.conf ${PREFIX}/etc/dbmail.conf-dist
+ @if [ ! -f ${PREFIX}/etc/dbmail.conf ] ; then \
+ ${CP} -p ${PREFIX}/etc/dbmail.conf-dist ${PREFIX}/etc/dbmail.conf; \
+ fi
+ @${MKDIR} ${DATADIR}
+ @for f in ${DATABASE}; do \
+ ${MKDIR} ${DATADIR}/$$f ; \
+ ${INSTALL_DATA} ${WRKSRC}/sql/$$f/* ${DATADIR}/$$f; \
+ done
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ @cd ${WRKSRC} && ${INSTALL_DATA} ${MAIN_DOCS} ${DOCSDIR}
+ @cd ${WRKSRC}/doc && ${INSTALL_DATA} ${ADDITIONAL_DOCS} ${DOCSDIR}
+.endif
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.post.mk>
diff --git a/mail/dbmail23/distinfo b/mail/dbmail23/distinfo
new file mode 100644
index 000000000000..7bdc474b7676
--- /dev/null
+++ b/mail/dbmail23/distinfo
@@ -0,0 +1,3 @@
+MD5 (dbmail-2.3.2.tar.gz) = bfa92e7a3f74be6a779c6ea9b730f114
+SHA256 (dbmail-2.3.2.tar.gz) = 38739e32e209d30c8c4efdde4a7737d4c40fb36dd30b0e2dfd65993843b39fcb
+SIZE (dbmail-2.3.2.tar.gz) = 921616
diff --git a/mail/dbmail23/files/dbmail-imapd.sh.in b/mail/dbmail23/files/dbmail-imapd.sh.in
new file mode 100644
index 000000000000..82505e96d9b0
--- /dev/null
+++ b/mail/dbmail23/files/dbmail-imapd.sh.in
@@ -0,0 +1,32 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: dbmail-imapd
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable dbmail-imapd:
+#
+#dbmail_imapd_enable="YES"
+#
+# See dbmail-imapd(8) for flags
+#
+
+. %%RC_SUBR%%
+
+name=dbmail_imapd
+rcvar=`set_rcvar`
+
+command=%%PREFIX%%/sbin/dbmail-imapd
+pidfile=/var/run/dbmail-imapd.pid
+required_files=%%PREFIX%%/etc/dbmail.conf
+
+# read settings, set default values
+load_rc_config "$name"
+: ${dbmail_imapd_enable="NO"}
+: ${dbmail_imapd_flags=""}
+
+run_rc_command "$1"
diff --git a/mail/dbmail23/files/dbmail-lmtpd.sh.in b/mail/dbmail23/files/dbmail-lmtpd.sh.in
new file mode 100644
index 000000000000..f1133f43a70e
--- /dev/null
+++ b/mail/dbmail23/files/dbmail-lmtpd.sh.in
@@ -0,0 +1,32 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: dbmail-lmtpd
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable dbmail-lmtpd:
+#
+#dbmail_lmtpd_enable="YES"
+#
+# See dbmail-lmtpd(8) for flags
+#
+
+. %%RC_SUBR%%
+
+name=dbmail_lmtpd
+rcvar=`set_rcvar`
+
+command=%%PREFIX%%/sbin/dbmail-lmtpd
+pidfile=/var/run/dbmail-lmtpd.pid
+required_files=%%PREFIX%%/etc/dbmail.conf
+
+# read settings, set default values
+load_rc_config "$name"
+: ${dbmail_lmtpd_enable="NO"}
+: ${dbmail_lmtpd_flags=""}
+
+run_rc_command "$1"
diff --git a/mail/dbmail23/files/dbmail-pop3d.sh.in b/mail/dbmail23/files/dbmail-pop3d.sh.in
new file mode 100644
index 000000000000..d787f6a668e7
--- /dev/null
+++ b/mail/dbmail23/files/dbmail-pop3d.sh.in
@@ -0,0 +1,32 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: dbmail-pop3d
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable dbmail-pop3d:
+#
+#dbmail_pop3d_enable="YES"
+#
+# See dbmail-pop3d(8) for flags
+#
+
+. %%RC_SUBR%%
+
+name=dbmail_pop3d
+rcvar=`set_rcvar`
+
+command=%%PREFIX%%/sbin/dbmail-pop3d
+pidfile=/var/run/dbmail-pop3d.pid
+required_files=%%PREFIX%%/etc/dbmail.conf
+
+# read settings, set default values
+load_rc_config "$name"
+: ${dbmail_pop3d_enable="NO"}
+: ${dbmail_pop3d_flags=""}
+
+run_rc_command "$1"
diff --git a/mail/dbmail23/files/dbmail-timsieved.sh.in b/mail/dbmail23/files/dbmail-timsieved.sh.in
new file mode 100644
index 000000000000..26b5888cba6d
--- /dev/null
+++ b/mail/dbmail23/files/dbmail-timsieved.sh.in
@@ -0,0 +1,32 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: dbmail-timsieved
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable dbmail-timsieved:
+#
+#dbmail_timsieved_enable="YES"
+#
+# See dbmail-timsieved(8) for flags
+#
+
+. %%RC_SUBR%%
+
+name=dbmail_timsieved
+rcvar=`set_rcvar`
+
+command=%%PREFIX%%/sbin/dbmail-timsieved
+pidfile=/var/run/dbmail-timsieved.pid
+required_files=%%PREFIX%%/etc/dbmail.conf
+
+# read settings, set default values
+load_rc_config "$name"
+: ${dbmail_timsieved_enable="NO"}
+: ${dbmail_timsieved_flags=""}
+
+run_rc_command "$1"
diff --git a/mail/dbmail23/files/patch-dbmail.h.in b/mail/dbmail23/files/patch-dbmail.h.in
new file mode 100644
index 000000000000..aa628223e15b
--- /dev/null
+++ b/mail/dbmail23/files/patch-dbmail.h.in
@@ -0,0 +1,16 @@
+--- src/dbmail.h.in.orig Mon Feb 4 17:37:40 2008
++++ src/dbmail.h.in Tue Feb 5 19:45:09 2008
+@@ -72,6 +72,13 @@
+ #include <time.h>
+ #include <termios.h>
+ #include <unistd.h>
++#undef PACKAGE
++#undef PACKAGE_BUGREPORT
++#undef PACKAGE_NAME
++#undef PACKAGE_STRING
++#undef PACKAGE_TARNAME
++#undef PACKAGE_VERSION
++#undef VERSION
+ #include <mhash.h>
+
+ #ifdef AUTHLDAP
diff --git a/mail/dbmail23/files/patch-imap4.c b/mail/dbmail23/files/patch-imap4.c
new file mode 100644
index 000000000000..5177bb23f056
--- /dev/null
+++ b/mail/dbmail23/files/patch-imap4.c
@@ -0,0 +1,11 @@
+--- src/imap4.c.orig Mon Feb 4 17:37:40 2008
++++ src/imap4.c Tue Feb 5 19:20:34 2008
+@@ -120,7 +120,7 @@
+ } else {
+ if (dbmail_imap_session_printf(session,
+ "* OK dbmail imap (protocol version 4r1) server %s "
+- "ready to run\r\n", VERSION) < 0) {
++ "ready to run\r\n", DBMAIL_VERSION) < 0) {
+ dbmail_imap_session_delete(session);
+ return EOF;
+ }
diff --git a/mail/dbmail23/files/patch-timsieve.c b/mail/dbmail23/files/patch-timsieve.c
new file mode 100644
index 000000000000..a8ddf0540305
--- /dev/null
+++ b/mail/dbmail23/files/patch-timsieve.c
@@ -0,0 +1,11 @@
+--- src/timsieve.c.orig Mon Feb 4 17:37:40 2008
++++ src/timsieve.c Tue Feb 5 19:19:12 2008
+@@ -40,7 +40,7 @@
+ if (strlen(banner) > 0) \
+ ci_write(stream, "\"IMPLEMENTATION\" \"%s\"\r\n", banner); \
+ else \
+- ci_write(stream, "\"IMPLEMENTATION\" \"DBMail timsieved v%s\"\r\n", VERSION); \
++ ci_write(stream, "\"IMPLEMENTATION\" \"DBMail timsieved v%s\"\r\n", DBMAIL_VERSION); \
+ ci_write(stream, "\"SASL\" \"PLAIN\"\r\n"); \
+ ci_write(stream, "\"SIEVE\" \"%s\"\r\n", sieve_extensions); \
+ ci_write(stream, "OK\r\n")
diff --git a/mail/dbmail23/files/pkg-message.in b/mail/dbmail23/files/pkg-message.in
new file mode 100644
index 000000000000..db2d836fbdf1
--- /dev/null
+++ b/mail/dbmail23/files/pkg-message.in
@@ -0,0 +1,8 @@
+
+NOTE FOR ADMINS UPGRADING FROM 2.2.X -> 2.3 :
+
+ *) Update database using a script
+ %%DATADIR%%/mysql/2_2_5-2_3_0.mysql (if you're using MySQL)
+ %%DATADIR%%/postgresql/2_2_5-2_3_0.pgsql (PostgreSQL)
+ %%DATADIR%%/sqlite/2_2_5-2_3_0.sqlite (SQLite3)
+ *) Run `dbmail-util -by'
diff --git a/mail/dbmail23/pkg-descr b/mail/dbmail23/pkg-descr
new file mode 100644
index 000000000000..5c1648e0e4a6
--- /dev/null
+++ b/mail/dbmail23/pkg-descr
@@ -0,0 +1,24 @@
+Dbmail is the name of a group of programs that enable the possibility of
+storing and retrieving mail messages from a database (currently MySQL,
+PostgreSQL or SQLite).
+
+* Scalability.
+ Dbmail is as scalable as the database system that is used for the mail
+ storage. In theory millions of accounts can be managed using dbmail. One
+ could, for example, run 4 different servers with the pop3 daemon each
+ connecting to the same database (cluster) server.
+* Manageability.
+ Dbmail is based upon a database. Dbmail can be managed by changing settings
+ in the database (f.e. using PHP/Perl/SQL), without needing shell access.
+* Speed.
+ Dbmail uses very efficient, database specific queries for retrieving mail
+ information. This is much faster then parsing a filesystem.
+* Security.
+ Dbmail has got nothing to do with the filesystem or interaction with other
+ programs in the Unix environment which need special permissions. Dbmail is
+ as secure as the database it's based upon.
+* Flexibility.
+ Changes on a Dbmail system (adding of users, changing passwords etc.) are
+ effective immediately.
+
+WWW: http://www.dbmail.org/
diff --git a/mail/dbmail23/pkg-plist b/mail/dbmail23/pkg-plist
new file mode 100644
index 000000000000..f4958e25ea38
--- /dev/null
+++ b/mail/dbmail23/pkg-plist
@@ -0,0 +1,68 @@
+@unexec if cmp -s %D/etc/dbmail.conf-dist %D/etc/dbmail.conf; then rm -f %D/etc/dbmail.conf; fi
+etc/dbmail.conf-dist
+@exec if [ ! -f %D/etc/dbmail.conf ] ; then cp -p %D/%F %B/dbmail.conf; fi
+@exec mkdir -p %D/lib/dbmail
+%%LDAP%%lib/dbmail/libauth_ldap.a
+%%LDAP%%lib/dbmail/libauth_ldap.la
+%%LDAP%%lib/dbmail/libauth_ldap.so
+%%LDAP%%lib/dbmail/libauth_ldap.so.0
+lib/dbmail/libauth_sql.a
+lib/dbmail/libauth_sql.la
+lib/dbmail/libauth_sql.so
+lib/dbmail/libauth_sql.so.0
+lib/dbmail/libdbmail.a
+lib/dbmail/libdbmail.la
+lib/dbmail/libdbmail.so
+lib/dbmail/libdbmail.so.0
+%%MYSQL%%lib/dbmail/libmysql.a
+%%MYSQL%%lib/dbmail/libmysql.la
+%%MYSQL%%lib/dbmail/libmysql.so
+%%MYSQL%%lib/dbmail/libmysql.so.0
+%%PGSQL%%lib/dbmail/libpgsql.a
+%%PGSQL%%lib/dbmail/libpgsql.la
+%%PGSQL%%lib/dbmail/libpgsql.so
+%%PGSQL%%lib/dbmail/libpgsql.so.0
+%%SIEVE%%lib/dbmail/libsort_sieve.a
+%%SIEVE%%lib/dbmail/libsort_sieve.la
+%%SIEVE%%lib/dbmail/libsort_sieve.so
+%%SIEVE%%lib/dbmail/libsort_sieve.so.0
+%%SQLITE%%lib/dbmail/libsqlite.a
+%%SQLITE%%lib/dbmail/libsqlite.la
+%%SQLITE%%lib/dbmail/libsqlite.so
+%%SQLITE%%lib/dbmail/libsqlite.so.0
+@dirrm lib/dbmail
+sbin/dbmail-deliver
+sbin/dbmail-export
+sbin/dbmail-imapd
+sbin/dbmail-lmtpd
+sbin/dbmail-pop3d
+%%SIEVE%%sbin/dbmail-sievecmd
+%%SIEVE%%sbin/dbmail-timsieved
+sbin/dbmail-top
+sbin/dbmail-users
+sbin/dbmail-util
+@exec mkdir -p %D/share/%%PORTNAME%%
+%%MYSQL%%@exec mkdir -p %D/share/PORTNAME/%%PORTNAME%%/mysql
+%%MYSQL%%share/%%PORTNAME%%/mysql/2_1_7-2_2_0.mysql
+%%MYSQL%%share/%%PORTNAME%%/mysql/2_2_5-2_3_0.mysql
+%%MYSQL%%share/%%PORTNAME%%/mysql/2_3_0-2_3_2.mysql
+%%MYSQL%%share/%%PORTNAME%%/mysql/create_tables.mysql
+%%MYSQL%%share/%%PORTNAME%%/mysql/fix_foreign_keys.mysql
+%%MYSQL%%share/%%PORTNAME%%/mysql/migrate_from_1.x_to_2.0_innodb.mysql
+%%MYSQL%%share/%%PORTNAME%%/mysql/migrate_from_2.0_to_2.2.mysql
+%%MYSQL%%share/%%PORTNAME%%/mysql/update_headervalue_01.mysql
+%%MYSQL%%@dirrm share/%%PORTNAME%%/mysql
+%%PGSQL%%@exec mkdir -p %D/share/PORTNAME/%%PORTNAME%%/postgresql
+%%PGSQL%%share/%%PORTNAME%%/postgresql/2_1_7-2_2_0.pgsql
+%%PGSQL%%share/%%PORTNAME%%/postgresql/2_2_5-2_3_0.pgsql
+%%PGSQL%%share/%%PORTNAME%%/postgresql/create_tables.pgsql
+%%PGSQL%%share/%%PORTNAME%%/postgresql/migrate_from_1.x_to_2.0.pgsql
+%%PGSQL%%share/%%PORTNAME%%/postgresql/migrate_from_2.0_to_2.2.pgsql
+%%PGSQL%%@dirrm share/%%PORTNAME%%/postgresql
+%%SQLITE%%@exec mkdir -p %D/share/PORTNAME/%%PORTNAME%%/sqlite
+%%SQLITE%%share/%%PORTNAME%%/sqlite/2_1_7-2_2_0.sqlite
+%%SQLITE%%share/%%PORTNAME%%/sqlite/2_2_5-2_3_0.sqlite
+%%SQLITE%%share/%%PORTNAME%%/sqlite/create_tables.sqlite
+%%SQLITE%%share/%%PORTNAME%%/sqlite/trigger.tmpl.sql
+%%SQLITE%%@dirrm share/%%PORTNAME%%/sqlite
+@dirrm share/%%PORTNAME%%