# New ports collection makefile for: courierimap # Date created: 19 Feb 2000 # Whom: Neil Blakey-Milner # # $FreeBSD$ # PORTNAME= courier-imap PORTVERSION= 2.1.2 PORTREVISION= 0 PORTEPOCH= 1 CATEGORIES= mail ipv6 MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= courier MAINTAINER= oliver@FreeBSD.org COMMENT= IMAP (and POP3) server that provides access to Maildir mailboxes USE_BZIP2= yes USE_REINPLACE= yes USE_PERL5= yes GNU_CONFIGURE= yes USE_GMAKE= yes # # options available: # # WITHOUT_OPENSSL: Don't build in TLS support # WITHOUT_PAM: Don't build in PAM support # WITHOUT_AUTHDAEMON Don't build the authdaemon # WITH_CRAM: Build in CRAM-MD5 authentication support # WITH_VPOPMAIL: Build in vpopmail support # WITH_MYSQL: Build in mysql support # WITH_POSTGRESQL: Build in postgresql support # WITH_LDAP: Build in ldap support with openldap 2.1 # WITH_LDAP21: Build in ldap support with openldap 2.1 # WITH_LDAP20: Build in ldap support with openldap 2.0 # WITH_LDAP1: Build in ldap support with openldap 1.x # WITH_FAM: Build in fam support for IDLE command # CONFDIR?= ${PREFIX}/etc/${PORTNAME} RCDIR?= ${PREFIX}/etc/rc.d USERDB?= ${PREFIX}/etc/userdb LIBEXECDIR?= ${PREFIX}/libexec/${PORTNAME} VPOPMAILDIR?= ${LOCALBASE}/vpopmail PLIST_SUB= CONFDIR=${CONFDIR:S,^${PREFIX}/,,} \ RCDIR=${RCDIR:S,^${PREFIX}/,,} \ USERDB=${USERDB:S,^${PREFIX}/,,} \ LIBEXECDIR=${LIBEXECDIR:S,^${PREFIX}/,,} .if !defined(WITHOUT_OPENSSL) USE_OPENSSL= YES PLIST_SUB+= OPENSSLFLAG= .else PLIST_SUB+= OPENSSLFLAG="@comment " .endif CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL} CONFIGURE_ARGS= --without-authshadow \ --sysconfdir=${CONFDIR} \ --with-userdb=${USERDB} \ --datadir=${DATADIR} \ --libexecdir=${LIBEXECDIR} \ --enable-workarounds-for-imap-client-bugs \ --enable-unicode \ --disable-root-check \ --with-locking-method=fcntl .if !defined(WITH_VPOPMAIL) CONFIGURE_ARGS+=--without-authvchkpw PLIST_SUB+= VPOPMAILFLAG="@comment " .else CONFIGURE_ARGS+=--with-authvchkpw BUILD_DEPENDS+= ${VPOPMAILDIR}/lib/libvpopmail.a:${PORTSDIR}/mail/vpopmail PLIST_SUB+= VPOPMAILFLAG="" .endif .if defined(WITH_LDAP) WITH_LDAP21= yes .endif .if !defined(WITH_LDAP1) && !defined(WITH_LDAP20) && !defined(WITH_LDAP21) CONFIGURE_ARGS+=--without-authldap PLIST_SUB+= LDAPFLAG="@comment " .else CONFIGURE_ARGS+=--with-authldap PLIST_SUB+= LDAPFLAG="" .if defined(WITH_LDAP21) LIB_DEPENDS= ldap.2:${PORTSDIR}/net/openldap21-client \ lber.2:${PORTSDIR}/net/openldap21-client .elseif defined(WITH_LDAP20) LIB_DEPENDS= ldap.2:${PORTSDIR}/net/openldap20-client \ lber.2:${PORTSDIR}/net/openldap20-client .else LIB_DEPENDS= ldap.1:${PORTSDIR}/net/openldap12 \ lber.1:${PORTSDIR}/net/openldap12 .endif .endif .if !defined(WITH_MYSQL) CONFIGURE_ARGS+=--without-authmysql PLIST_SUB+= MYSQLFLAG="@comment " .else USE_MYSQL= YES PLIST_SUB+= MYSQLFLAG="" CONFIGURE_ARGS+=--with-authmysql \ --with-mysql-libs=${LOCALBASE}/lib/mysql \ --with-mysql-includes=${LOCALBASE}/include/mysql .endif .if !defined(WITH_POSTGRESQL) CONFIGURE_ARGS+=--without-authpgsql PLIST_SUB+= PGSQLFLAG="@comment " .else POSTGRESQL_PORT?= databases/postgresql7 LIB_DEPENDS+= pq.3:${PORTSDIR}/${POSTGRESQL_PORT} PLIST_SUB+= PGSQLFLAG="" .endif .if !defined(WITHOUT_AUTHDAEMON) CONFIGURE_ARGS+=--with-authdaemon PLIST_SUB+= AUTHDFLAG="" .else CONFIGURE_ARGS+=--without-authdaemon PLIST_SUB+= AUTHDFLAG="@comment " .endif .if !defined(WITHOUT_PAM) CONFIGURE_ARGS+=--with-authpam .else CONFIGURE_ARGS+=--without-authpam .endif .if !defined(WITH_CRAM) CONFIGURE_ARGS+=--without-authcram .else CONFIGURE_ARGS+=--with-authcram .endif .if defined(WITH_FAM) CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \ LDFLAGS="${LDFLAGS}" LDFLAGS+= -L${LOCALBASE}/lib LIB_DEPENDS+= fam.0:${PORTSDIR}/devel/fam .endif MAN1= couriertcpd.1 maildirkw.1 maildirmake.1 MAN7= authlib.7 MAN8= makeuserdb.8 userdb.8 userdbpw.8 \ deliverquota.8 imapd.8 mkimapdcert.8 mkpop3dcert.8 MLINKS= authlib.7 authpwd.7 \ authlib.7 authuserdb.7 \ authlib.7 authshadow.7 \ authlib.7 authpam.7 \ authlib.7 authvchkpw.7 \ authlib.7 authcram.7 \ authlib.7 authldap.7 \ authlib.7 authmysql.7 \ authlib.7 authdaemon.7 \ authlib.7 authdaemond.7 \ makeuserdb.8 pw2userdb.8 \ makeuserdb.8 vchkpw2userdb.8 EXTRA_DOCS= README INSTALL AUTHORS imap/ChangeLog .include post-patch: @${REINPLACE_CMD} -e 's|^case x$$lockmethod in|${TEST} \&\& &|g' \ ${WRKSRC}/liblock/configure @${REINPLACE_CMD} -e 's|$$VPOPMAILLIBS|& -lcrypt|g' \ ${WRKSRC}/authlib/configure @${REINPLACE_CMD} -e 's|^@INSTALLAUTHMODULES@$$|& @AUTHMODULES@|' \ ${WRKSRC}/authlib/installlist.in @${REINPLACE_CMD} -e 's|%%INSTALL_MAN%%|${INSTALL_MAN}|' \ ${WRKSRC}/Makefile.in ${WRKSRC}/authlib/Makefile.in post-install: ${INSTALL_PROGRAM} ${WRKSRC}/authlib/authtest ${PREFIX}/bin/ .for i in imapd pop3d ${INSTALL_DATA} ${WRKSRC}/imap/${i}.cnf ${CONFDIR}/${i}.cnf.dist ${LN} -s ${LIBEXECDIR}/${i}.rc ${RCDIR}/${PORTNAME}-${i}.sh.sample ${LN} -s ${LIBEXECDIR}/${i}-ssl.rc ${RCDIR}/${PORTNAME}-${i}-ssl.sh.sample .endfor .if !defined(NOPORTDOCS) @${MKDIR} ${DOCSDIR} .for a in ${EXTRA_DOCS} ${INSTALL_DATA} ${WRKSRC}/${a} ${DOCSDIR} .endfor .endif @${ECHO_MSG} "" @${ECHO_MSG} "You will have to run ${DATADIR}/mkimapdcert to create" @${ECHO_MSG} "a self-signed certificate if you want to use imapd-ssl." @${ECHO_MSG} "And you will have to copy and edit the *.dist files to *" @${ECHO_MSG} "in ${CONFDIR}." @${ECHO_MSG} "" .include