Index: head/mail/dovecot2/Makefile =================================================================== --- head/mail/dovecot2/Makefile (revision 405315) +++ head/mail/dovecot2/Makefile (revision 405316) @@ -1,161 +1,162 @@ # Created by: Nagy, Attila # $FreeBSD$ ###################################################################### # Anytime PORTVERSION changes please bump PORTREVISION of # # mail/dovecot2-pigeonhole and also mail/dovecot2-antispam-plugin. # # Please see ports/135311 and ports/146029 for an explanation. # # # # Please be careful when updating this port as changes to this port # # can break mail/dovecot2-pigeonhole. In order to ensure the least # # amount of breakage possible please consult the maintainer of that # # port before updating this one. # ###################################################################### PORTNAME= dovecot PORTVERSION= 2.2.21 +PORTREVISION= 1 CATEGORIES= mail ipv6 MASTER_SITES= http://www.dovecot.org/releases/${PORTVERSION:R}/ PKGNAMESUFFIX= 2 MAINTAINER= adamw@FreeBSD.org COMMENT= Secure, fast and powerful IMAP and POP3 server LICENSE= LGPL21 MIT LICENSE_COMB= dual CONFLICTS= dovecot-1.[0-9]* USES= cpe iconv libtool USE_RC_SUBR= dovecot USE_OPENSSL= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --localstatedir=/var \ --with-statedir=/var/db/dovecot \ --without-shadow \ --with-docs USE_LDCONFIG= ${PREFIX}/lib/dovecot INSTALL_TARGET= install-strip USERS= dovecot dovenull GROUPS= ${USERS} OPTIONS_DEFINE= KQUEUE LIBWRAP LZ4 SSL VPOPMAIL DOCS EXAMPLES OPTIONS_DEFAULT=KQUEUE SSL GSSAPI_NONE OPTIONS_SUB= yes OPTIONS_GROUP= DB FTS OPTIONS_GROUP_DB= CDB LDAP MYSQL PGSQL SQLITE OPTIONS_GROUP_FTS= ICU LUCENE SOLR TEXTCAT OPTIONS_SINGLE= GSSAPI OPTIONS_SINGLE_GSSAPI= GSSAPI_NONE GSSAPI_BASE GSSAPI_HEIMDAL GSSAPI_MIT KQUEUE_DESC= kqueue(2) support LZ4_DESC= LZ4 compression support VPOPMAIL_DESC= vpopmail support DB_DESC= Database support CDB_DESC= CDB database support FTS_DESC= Full text search plugins ICU_DESC= Use libicu for FTS unicode normalization LUCENE_DESC= CLucene FTS support SOLR_DESC= Solr FTS support TEXTCAT_DESC= Libtextcat FTS support GSSAPI_NONE_DESC= Build without GSSAPI support GSSAPI_BASE_DESC= Use GSSAPI from base GSSAPI_HEIMDAL_DESC= Use Heimdal GSSAPI from security/heimdal GSSAPI_MIT_DESC= Use MIT GSSAPI from security/krb5 CDB_CONFIGURE_WITH= cdb CDB_LIB_DEPENDS= libcdb.so:${PORTSDIR}/databases/tinycdb GSSAPI_NONE_CONFIGURE_ON= --without-gssapi GSSAPI_BASE_USES= gssapi GSSAPI_BASE_CONFIGURE_ON= --with-gssapi ${GSSAPI_CONFIGURE_ARGS} GSSAPI_HEIMDAL_USES= gssapi:heimdal GSSAPI_HEIMDAL_CONFIGURE_ON= --with-gssapi ${GSSAPI_CONFIGURE_ARGS} GSSAPI_MIT_USES= gssapi:mit GSSAPI_MIT_CONFIGURE_ON= --with-gssapi ${GSSAPI_CONFIGURE_ARGS} ICU_CONFIGURE_WITH= icu ICU_LIB_DEPENDS= libicui18n.so:${PORTSDIR}/devel/icu ICU_USES= pkgconfig KQUEUE_CONFIGURE_OFF= --with-ioloop=poll --with-notify=none KQUEUE_CONFIGURE_ON= --with-ioloop=kqueue --with-notify=kqueue LDAP_USE= OPENLDAP=yes LDAP_CONFIGURE_WITH= ldap LIBWRAP_CONFIGURE_WITH= libwrap LUCENE_CONFIGURE_WITH= lucene LUCENE_LIB_DEPENDS= libclucene-core.so:${PORTSDIR}/textproc/clucene LZ4_LIB_DEPENDS= liblz4.so:${PORTSDIR}/archivers/liblz4 MYSQL_USE= MYSQL=yes MYSQL_CONFIGURE_WITH= mysql PGSQL_USES= pgsql PGSQL_CONFIGURE_WITH= pgsql SOLR_CONFIGURE_WITH= solr SOLR_BUILD_DEPENDS= curl:${PORTSDIR}/ftp/curl SOLR_LIB_DEPENDS= libexpat.so:${PORTSDIR}/textproc/expat2 SQLITE_USE= SQLITE=3 SQLITE_CONFIGURE_WITH= sqlite SSL_CONFIGURE_WITH= ssl=openssl TEXTCAT_CONFIGURE_WITH= textcat TEXTCAT_LIB_DEPENDS= libtextcat.so:${PORTSDIR}/textproc/libtextcat VPOPMAIL_BUILD_DEPENDS= ${LOCALBASE}/vpopmail/bin/vchkpw:${PORTSDIR}/mail/vpopmail VPOPMAIL_CONFIGURE_WITH=vpopmail DOCS= AUTHORS COPYING COPYING.LGPL COPYING.MIT INSTALL NEWS TODO README PORTDOCS= * PORTEXAMPLES= * # Default requirement for dovecot rc script _REQUIRE= LOGIN LDAP_VARS= _REQUIRE+=slapd MYSQL_VARS= _REQUIRE+=mysql PGSQL_VARS= _REQUIRE+=postgresql .include SUB_LIST+= REQUIRE="${_REQUIRE}" SUB_FILES+= pkg-message CPPFLAGS+= -I${LOCALBASE}/include -I${OPENSSLINC} LDFLAGS+= -L${LOCALBASE}/lib -I${OPENSSLLIB} post-patch: @${REINPLACE_CMD} -e 's,/etc/dovecot,${PREFIX}/etc/dovecot,g; \ s,sysconfdir=/etc,sysconfdir=${PREFIX}/etc,g' \ ${WRKSRC}/doc/example-config/*.conf ${WRKSRC}/doc/example-config/conf.d/* @${REINPLACE_CMD} -e '/^LIBS =/s/$$/ @LTLIBICONV@/' \ ${WRKSRC}/src/lib-mail/Makefile.in # Install the sample config files into ETCDIR/example-config/ @${REINPLACE_CMD} -e '/^exampledir =/s|\$$(docdir)|${ETCDIR}|' \ ${WRKSRC}/doc/example-config/Makefile.in \ ${WRKSRC}/doc/example-config/conf.d/Makefile.in @${REINPLACE_CMD} -e '/^[^#]/s|/usr|${LOCALBASE}|' \ ${WRKSRC}/src/plugins/fts/decode2text.sh post-install: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${STAGEDIR}${DOCSDIR} ${MV} ${STAGEDIR}${DOCSDIR}/dovecot-openssl.cnf ${STAGEDIR}${EXAMPLESDIR} ${MV} ${STAGEDIR}${DOCSDIR}/mkcert.sh ${STAGEDIR}${EXAMPLESDIR} (cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${STAGEDIR}${DOCSDIR}) .include Index: head/mail/dovecot2/files/dovecot.in =================================================================== --- head/mail/dovecot2/files/dovecot.in (revision 405315) +++ head/mail/dovecot2/files/dovecot.in (revision 405316) @@ -1,60 +1,65 @@ #!/bin/sh # # $FreeBSD$ # # PROVIDE: dovecot # REQUIRE: %%REQUIRE%% # KEYWORD: shutdown # Define dovecot_* variables in one of these files: # /etc/rc.conf # /etc/rc.conf.local # /etc/rc.conf.d/dovecot . /etc/rc.subr name=dovecot rcvar=dovecot_enable # read configuration and set defaults load_rc_config ${name} : ${dovecot_enable:="NO"} : ${dovecot_config:="%%ETCDIR%%/${name}.conf"} command="%%PREFIX%%/sbin/${name}" start_precmd="start_precmd" stop_postcmd="stop_postcmd" restart_cmd="restart_cmd" extra_commands="reload" start_precmd() { # Ensure runtime directories exist with correct permissions local login_user login_gid login_user=$(${command} ${command_args} -a | /usr/bin/awk -F '= ' '/^default_login_user =/ { print $2 }') login_gid=$(/usr/sbin/pw usershow -n "${login_user}" 2>/dev/null | /usr/bin/cut -d: -f4) /usr/bin/install -o root -g wheel -m 0755 -d ${base_dir} } stop_postcmd() { # Cleanup runtime directories rm -rf ${base_dir} 2>/dev/null } restart_cmd() { # Overriding makes rc.subr run this once for each instance run_rc_command stop run_rc_command start } # To start multiple instances of dovecot set dovecot_config to # a space seperated list of configuration files. for config in ${dovecot_config}; do required_files="${config}" command_args="-c ${config}" if [ -f ${config} ]; then base_dir=$(${command} ${command_args} -a | /usr/bin/awk -F '= ' '/^base_dir =/ { print $2 }') pidfile="${base_dir}/master.pid" - run_rc_command "$1" + else + echo "==Error==" + echo "Config file ${config} does not exist. If this is" + echo "a new installation, please create the config files as outlined in" + echo " # pkg info -D dovecot2" fi + run_rc_command "$1" done