freebsd-ports/mail/courier/Makefile
Oliver Lehmann 31eaf5e258 s/ECHO/ECHO_MSG/g, merge the pre-fetch target into the pre-everything target
use SITE_PERL instead of the whole path (in DEPENDS)

PR:		ports/56814
Submitted by:	KATO Tsuguru <tkato@prontomail.com>
2003-09-24 14:17:44 +00:00

212 lines
6.8 KiB
Makefile

# New ports collection makefile for: Courier MTA
# Date created: 17 Oct 2001
# Whom: Yarema <yds@CoolRat.org>
#
# $FreeBSD$
#
PORTNAME= courier
PORTVERSION= 0.42.2
CATEGORIES= mail ipv6
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= courier
MAINTAINER= ports@FreeBSD.org
COMMENT= Courier SMTP IMAP POP3 HTTP mail server suite
RUN_DEPENDS= ${LOCALBASE}/share/sysconftool/sysconftool:${PORTSDIR}/devel/sysconftool \
${SITE_PERL}/Net/CIDR.pm:${PORTSDIR}/net/p5-Net-CIDR
.if !defined(BATCH) && !defined(PACKAGE_BUILDING)
IS_INTERACTIVE= yes
.endif
#
# User-serviceable variables
#
# [ There's no need to add trailing ``/''s ]
#
# set IMAGEURL to where on the web server URL the images are found
# set CACHEOWN to who you'd like to own the cache files
# set MAILDROPDEFAULT to what you'd like the $DEFAULT in maildrop to be
# recomended values are: /var/mail, ./Mailbox or ./Maildir
#
IMAGEURL?= /webmail
CACHEOWN?= pop
MAILDROPDEFAULT?=./Maildir
# End of user-serviceable variables
MAILOWN= courier
MAILGRP= courier
MAILUID= 62
MAILGID= 62
ETCDIR= ${PREFIX}/etc
SYSCONFDIR= ${ETCDIR}/courier
USERDB= ${ETCDIR}/userdb
LIBEXECDIR= ${PREFIX}/libexec
LOCALSTATEDIR= /var/spool/courier
CACHEDIR= /var/spool/webmail
CALENDIR= /var/spool/calendar
MIMETYPES= ${LOCALBASE}/etc/apache/mime.types:${LOCALBASE}/etc/apache2/mime.types
USE_BZIP2= yes
USE_SUBMAKE= yes
USE_PERL5= yes
USE_GMAKE= yes
USE_AUTOMAKE= yes
USE_LIBTOOL= yes
USE_OPENSSL= yes
USE_AUTOMAKE_VER=15
CONFIGURE_ENV= REHASH=${SCRIPTDIR}/c_rehash
CONFIGURE_ARGS= --disable-root-check --with-db=db \
--enable-syslog=1 --enable-use-flock \
--with-mailuser=${MAILOWN} \
--with-mailgroup=${MAILGRP} \
--with-mailuid=${MAILUID} \
--with-mailgid=${MAILGID} \
--with-etcdir=${ETCDIR} \
--sysconfdir=${SYSCONFDIR} \
--with-userdb=${USERDB} \
--datadir=${DATADIR} \
--libexecdir=${LIBEXECDIR} \
--localstatedir=${LOCALSTATEDIR} \
--enable-mimetypes=${MIMETYPES} \
--enable-imageurl=${IMAGEURL} \
--with-cachedir=${CACHEDIR} \
--with-cacheowner=${CACHEOWN} \
--with-calendardir=${CALENDIR} \
--with-default-maildrop=${MAILDROPDEFAULT} \
--enable-workarounds-for-imap-client-bugs
# Respect the make.conf(5) NOUUCP setting
WITH_TRANSPORT= local esmtp dsn
.if defined(NOUUCP)
PLIST_SUB+= SUB_UUCP="@comment "
.else
WITH_TRANSPORT+=uucp
PLIST_SUB+= SUB_UUCP=""
.endif
PKGMESSAGE= ${WRKDIR}/.PKGMESSAGE
INSTALL_TARGET= install-strip install-perms
PLIST_SUB+= BINOWN="${BINOWN}" BINGRP="${BINGRP}" \
MAILOWN="${MAILOWN}" MAILGRP="${MAILGRP}" \
MAILUID="${MAILUID}" MAILGID="${MAILGID}" \
CACHEOWN="${CACHEOWN}"
SCRIPTS_ENV= WRKDIRPREFIX="${WRKDIRPREFIX}" \
WITH_EXPECT="${WITH_EXPECT:L}" \
WITH_GNUPG="${WITH_GNUPG:L}" \
WITH_ASPELL="${WITH_ASPELL:L}" \
WITH_ISPELL="${WITH_ISPELL:L}" \
WITH_LDAP1="${WITH_LDAP1:L}" \
WITH_LDAP2="${WITH_LDAP2:L}" \
WITH_MYSQL="${WITH_MYSQL:L}" \
WITH_PGSQL="${WITH_PGSQL:L}" \
WITH_VPOPMAIL="${WITH_VPOPMAIL:L}" \
WITH_PROCMAIL="${WITH_PROCMAIL:L}" \
WITH_SENDFAX="${WITH_SENDFAX:L}" \
WITH_IPV6="${WITH_IPV6:L}" \
WITH_TRANSPORT="${WITH_TRANSPORT}" \
WITH_GHOSTSCRIPT_AFPL="${WITH_GHOSTSCRIPT_AFPL:no}" \
TOUCH="${TOUCH}" \
MKDIR="${MKDIR}"
.if exists(${WRKDIRPREFIX}${.CURDIR}/Makefile.inc)
.include "${WRKDIRPREFIX}${.CURDIR}/Makefile.inc"
.endif
.include "${.CURDIR}/Makefile.man"
.include "${.CURDIR}/Makefile.doc"
.include "${.CURDIR}/Makefile.own"
pre-everything::
@${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure.${PORTNAME}
.if !defined(WITH_GHOSTSCRIPT_AFPL) || ${WITH_GHOSTSCRIPT_AFPL} != yes
@${ECHO_MSG} ""
@${ECHO_MSG} " Define WITH_GHOSTSCRIPT_AFPL=yes to use"
@${ECHO_MSG} " AFPL Postscript interpreter instead of GNU one"
@${ECHO_MSG} ""
.endif
post-patch:
@${PERL} -pi -e 's:\@datadir\@:\@sysconfdir\@:g;' \
${WRKSRC}/*/mk*cert.* \
${WRKSRC}/*/*/mk*cert.*
@${PERL} -pi -e 's:^(TLS_CERTFILE=)\@datadir\@:$$1\@sysconfdir\@:g;' \
${WRKSRC}/*/*.dist.in \
${WRKSRC}/*/*/*.dist.in
@${PERL} -pi -e 's:^(RANDFILE = )\@datadir\@\S+:$$1\@sysconfdir\@/random.tmp:g;' \
${WRKSRC}/*/*.cnf.in \
${WRKSRC}/*/*/*.cnf.in
pre-configure:
@${SED} s:%%PREFIX%%:${PREFIX}: \
${.CURDIR}/pkg-message \
> ${WRKDIR}/.PKGMESSAGE
@${SED} s:%%PREFIX%%:${PREFIX}: \
${FILESDIR}/crontab \
> ${WRKDIR}/crontab
# patch around a bug in autoconf where the INSTALL macro does
# not get set properly in directories more than one level deep
post-build:
@${PERL} -pi -e 's:^(auth)\s+(required).*:$$1\t\t$$2\tpam_unix.so\ttry_first_pass:g; \
s:^(account)\s+(required).*:$$1 \t$$2\tpam_unix.so:g; \
s:^(session)\s+(required).*:$$1 \t$$2\tpam_permit.so:g;' \
${WRKSRC}/*/*.authpam* \
${WRKSRC}/*/*/*.authpam*
@${PERL} -pi -e 's:^transform = .*freebsd.*:transform = s,x,x:;' ${WRKSRC}/Makefile ${WRKSRC}/*/Makefile ${WRKSRC}/*/*/Makefile
@${LN} ${WRKSRC}/gpglib/README.html ${WRKSRC}/gpglib/README.gpglib.html
@${LN} ${WRKSRC}/imap/FAQ ${WRKSRC}/imap/FAQ.imap
@${LN} ${WRKSRC}/imap/FAQ.html ${WRKSRC}/imap/FAQ.imap.html
@${LN} ${WRKSRC}/imap/README ${WRKSRC}/imap/README.imap
@${LN} ${WRKSRC}/imap/README.html ${WRKSRC}/imap/README.imap.html
@${LN} ${WRKSRC}/maildrop/README.html ${WRKSRC}/maildrop/README.maildrop.html
@${LN} ${WRKSRC}/pcp/README.html ${WRKSRC}/pcp/README.pcp.html
@${LN} ${WRKSRC}/webmail/BUGS ${WRKSRC}/webmail/BUGS.webmail
@${LN} ${WRKSRC}/webmail/BUGS.html ${WRKSRC}/webmail/BUGS.webmail.html
@${LN} ${WRKSRC}/webmail/SECURITY ${WRKSRC}/webmail/SECURITY.webmail
@${LN} ${WRKSRC}/webmail/SECURITY.html ${WRKSRC}/webmail/SECURITY.webmail.html
pre-install:
@PKG_PREFIX="${PREFIX}" ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
post-install:
@PKG_PREFIX="${PREFIX}" ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
@${STRIP_CMD} ${PREFIX}/libexec/courier/modules/*/*
@${LN} -f ${SYSCONFDIR}/maildrop ${SYSCONFDIR}/maildropfilter
@${INSTALL_DATA} /dev/null ${SYSCONFDIR}/locallowercase
@${INSTALL_SCRIPT} ${FILESDIR}/courier.sh ${PREFIX}/etc/rc.d
@${INSTALL_DATA} ${WRKDIR}/crontab ${PREFIX}/etc/courier/
.for file in ${OWNER0}
@${CHOWN} ${BINOWN}:${BINGRP} ${PREFIX}/${file}
.endfor
@${GREP} '^@exec ' ${TMPPLIST} \
| ${SED} -e 's:^@exec ::' -e 's:%D:${PREFIX}:g' \
> ${WRKDIR}/.PLIST.exec \
&& ${SH} ${WRKDIR}/.PLIST.exec
.if !defined(NOPORTDOCS)
@${INSTALL} -d -o ${DOCOWN} -g ${DOCGRP} ${DOCSDIR}/html
@${INSTALL_DATA} ${DATADIR}/htmldoc/* ${DOCSDIR}/html
.for file in ${DOCS}
@${INSTALL_DATA} ${WRKSRC}/${file} ${DOCSDIR}
.endfor
.endif
@${RM} -rf ${DATADIR}/htmldoc
@for F in ${MANPREFIX}/man/man[1-9ln]/*; \
do ${CHMOD} ${MANMODE} $$F; \
done
@${CHOWN} -Rh ${MANOWN}:${MANGRP} ${MANPREFIX}/man/man[1-9ln]
@${CHOWN} -Rh ${SHAREOWN}:${SHAREGRP} ${DATADIR}
@${CHMOD} -R a+r ${DATADIR}/courierwebadmin
@${CHMOD} -R a-w ${DATADIR}
@${ECHO_MSG} ""
@${CAT} ${PKGMESSAGE}
@${ECHO_MSG} ""
post-clean:
@${RM} -f ${WRKDIRPREFIX}${.CURDIR}/Makefile.inc
.include <bsd.port.mk>