9c724bfe99
This ports will creates a new user and group named smmsp. Setting up the serer and client queues. You need to create an "sumbit.cf" for local submission.
181 lines
5.7 KiB
Makefile
181 lines
5.7 KiB
Makefile
# New ports collection makefile for: sendmail
|
|
# Date created: 20 Apr 2000
|
|
# Whom: dirk.meyer@dinoex.sub.org
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
PORTNAME= sendmail
|
|
PORTVERSION= 8.12.1
|
|
CATEGORIES= mail ipv6
|
|
MASTER_SITES= ftp://ftp.sendmail.org/pub/sendmail/ \
|
|
${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/mail/sendmail/&,}
|
|
DISTNAME= ${PORTNAME}.${PORTVERSION}
|
|
|
|
MAINTAINER= dinoex@FreeBSD.org
|
|
|
|
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
|
|
WCONF= ${WRKSRC}/devtools/Site
|
|
SITE= ${FILESDIR}/site.config.m4.pre4
|
|
PLIST= ${WRKDIR}/.PLIST.more
|
|
DOCS= KNOWNBUGS LICENSE PGPKEYS README RELEASE_NOTES \
|
|
sendmail/TRACEFLAGS sendmail/SECURITY sendmail/TUNING
|
|
MAN1= mailq.1 newaliases.1 vacation.1
|
|
MAN5= aliases.5
|
|
MAN8= sendmail.8 mailstats.8 makemap.8 praliases.8 smrsh.8 \
|
|
mail.local.8 rmail.8 editmap.8
|
|
|
|
# Options to define Features:
|
|
# SENDMAIL_WITHOUT_IPV6=yes
|
|
# SENDMAIL_WITH_MILTER=yes
|
|
# SENDMAIL_WITH_TLS=yes
|
|
# SENDMAIL_WITH_SASL=yes
|
|
# SENDMAIL_WITH_LDAP=yes
|
|
.if defined(BATCH)
|
|
# all on for package build
|
|
SENDMAIL_WITH_MILTER=yes
|
|
.endif
|
|
|
|
.if defined(SENDMAIL_WITH_LDAP)
|
|
PKGNAMESUFFIX?= -ldap
|
|
LIB_DEPENDS+= ldap.2:${PORTSDIR}/net/openldap2
|
|
LIB_DEPENDS+= lber.2:${PORTSDIR}/net/openldap2
|
|
.endif
|
|
.if defined(SENDMAIL_WITH_SASL)
|
|
LIB_DEPENDS+= sasl.8:${PORTSDIR}/security/cyrus-sasl
|
|
PKGNAMESUFFIX?= -sasl
|
|
.endif
|
|
.if defined(SENDMAIL_WITH_TLS) || defined(WITH_TLS)
|
|
PKGNAMESUFFIX?= -tls
|
|
USE_OPENSSL= yes
|
|
.endif
|
|
|
|
# Build site.config.m4
|
|
.if exists(${DESTDIR}/etc/mail/mailer.conf)
|
|
SITE+= ${FILESDIR}/site.config.m4
|
|
.if ! defined(SENDMAIL_WITHOUT_IPV6)
|
|
SITE+= ${FILESDIR}/site.config.m4.ipv6
|
|
.endif
|
|
.endif
|
|
.if defined(SENDMAIL_WITH_TLS) || defined(WITH_TLS)
|
|
.if ! exists(${DESTDIR}/etc/mail/mailer.conf)
|
|
SITE+= ${FILESDIR}/site.config.m4.ssl
|
|
.endif
|
|
SITE+= ${FILESDIR}/site.config.m4.tls
|
|
.endif
|
|
.if defined(SENDMAIL_WITH_SASL)
|
|
SITE+= ${FILESDIR}/site.config.m4.sasl
|
|
.endif
|
|
.if defined(SENDMAIL_WITH_LDAP)
|
|
SITE+= ${FILESDIR}/site.config.m4.ldap
|
|
.endif
|
|
.if exists(${FILESDIR}/site.config.m4.local)
|
|
SITE+= ${FILESDIR}/site.config.m4.local
|
|
.endif
|
|
|
|
# install directly if no mailwrapper support
|
|
.if ! exists(${DESTDIR}/etc/mail/mailer.conf)
|
|
PREFIX?= ${DESTDIR}/usr
|
|
MANPREFIX?= ${DESTDIR}/usr/share
|
|
.endif
|
|
PLIST_SUB+= PREFIX=${PREFIX:S=${PREFIX}/==}
|
|
SENDMAIL= ${PREFIX}/sbin/sendmail
|
|
|
|
post-extract:
|
|
@${SED} -e "s=%%PREFIX%%=${PREFIX}=" ${FILESDIR}/sm-client.sh \
|
|
> ${WRKSRC}/sm-client.sh
|
|
|
|
do-configure:
|
|
${SED} -e "s=%%PREFIX%%=${PREFIX}=" -e "s=%%LOCALBASE%%=${LOCALBASE}=" \
|
|
${SITE} > ${WCONF}/site.config.m4
|
|
|
|
post-build:
|
|
( cd ${WRKSRC}/libmilter && ${MAKE} )
|
|
|
|
pre-install:
|
|
@${CAT} ${PKGDIR}/pkg-plist >${PLIST}
|
|
@${CAT} ${FILESDIR}/pkg-milter >>${PLIST}
|
|
if ! pw groupshow smmsp; then pw groupadd smmsp -g 501; fi
|
|
if ! pw usershow smmsp; then pw useradd smmsp -g smmsp -u 501 \
|
|
-h - -d /nonexistent -s /nonexistent -c "Sendmail Queue"; fi
|
|
.if !defined(NOPORTDOCS)
|
|
@cd ${WRKSRC} && find cf -type f | \
|
|
${AWK} '{print "share/sendmail/" $$1}' >>${PLIST}
|
|
@cd ${WRKSRC} && find -d cf -type d | \
|
|
${AWK} '{print "@dirrm share/sendmail/" $$1}' >>${PLIST}
|
|
@${ECHO} "@dirrm share/sendmail" >>${PLIST}
|
|
.for i in ${DOCS}
|
|
@${ECHO} `${BASENAME} ${i}` | \
|
|
${AWK} '{print "share/doc/sendmail/" $$1}' >>${PLIST}
|
|
.endfor
|
|
@${ECHO} "@dirrm share/doc/sendmail" >>${PLIST}
|
|
.endif
|
|
|
|
# We want mail.local and rmail for our system.
|
|
# the build install catmans only, we have to fix this.
|
|
post-install:
|
|
( cd ${WRKSRC}/mail.local && ${MAKE} force-install )
|
|
( cd ${WRKSRC}/rmail && ${MAKE} force-install )
|
|
${MKDIR} ${PREFIX}/include/libmilter
|
|
${INSTALL_DATA} ${WRKSRC}/include/libmilter/mfapi.h \
|
|
${PREFIX}/include/libmilter/
|
|
${INSTALL_DATA} \
|
|
${WRKSRC}/obj.`${WRKSRC}/devtools/bin/Build -A`/libmilter/libmilter.a \
|
|
${PREFIX}/lib/
|
|
${INSTALL_DATA} \
|
|
${WRKSRC}/obj.`${WRKSRC}/devtools/bin/Build -A`/libsmutil/libsmutil.a \
|
|
${PREFIX}/lib/
|
|
${INSTALL_DATA} ${WRKSRC}/sm-client.sh \
|
|
${PREFIX}/etc/rc.d/sm-client.sh.sample
|
|
${CHOWN} smmsp:smmsp /var/spool/clientmqueue
|
|
${CHMOD} 770 /var/spool/clientmqueue
|
|
.for i in ${MAN8}
|
|
@${RM} -f ${MANPREFIX}/man/cat8/${i} ${MANPREFIX}/man/cat8/${i}.gz
|
|
${INSTALL_MAN} ${WRKSRC}/*/${i} ${MANPREFIX}/man/man8
|
|
.endfor
|
|
.for i in ${MAN5}
|
|
@${RM} -f ${MANPREFIX}/man/cat5/${i} ${MANPREFIX}/man/cat5/${i}.gz
|
|
${INSTALL_MAN} ${WRKSRC}/*/${i} ${MANPREFIX}/man/man5
|
|
.endfor
|
|
.for i in ${MAN1}
|
|
@${RM} -f ${MANPREFIX}/man/cat1/${i} ${MANPREFIX}/man/cat1/${i}.gz
|
|
${INSTALL_MAN} ${WRKSRC}/*/${i} ${MANPREFIX}/man/man1
|
|
.endfor
|
|
.if !defined(NOPORTDOCS)
|
|
${MKDIR} ${PREFIX}/share/sendmail ${PREFIX}/share/doc/sendmail
|
|
@cd ${WRKSRC}; ${TAR} cf - cf |\
|
|
(cd ${PREFIX}/share/sendmail; ${TAR} xf -)
|
|
@cd ${WRKSRC}; ${INSTALL_DATA} ${DOCS} ${PREFIX}/share/doc/sendmail/
|
|
${INSTALL_DATA} ${WRKSRC}/devtools/README \
|
|
${PREFIX}/share/doc/sendmail/DEVTOOLS
|
|
${INSTALL_DATA} ${WRKSRC}/sendmail/README \
|
|
${PREFIX}/share/doc/sendmail/SENDMAIL
|
|
${INSTALL_DATA} ${WRKSRC}/mail.local/README \
|
|
${PREFIX}/share/doc/sendmail/MAIL.LOCAL
|
|
${INSTALL_DATA} ${WRKSRC}/smrsh/README \
|
|
${PREFIX}/share/doc/sendmail/SMRSH
|
|
${INSTALL_DATA} ${WRKSRC}/libmilter/README \
|
|
${PREFIX}/share/doc/sendmail/MILTER
|
|
.endif
|
|
.if exists(${DESTDIR}/etc/mail/mailer.conf)
|
|
@${SED} s!%%PREFIX%%!${PREFIX}!g ${PKGMESSAGE}
|
|
|
|
mailer.conf:
|
|
@${SED} \
|
|
-e "s=^sendmail[ ]*/.*$$=sendmail ${SENDMAIL}=" \
|
|
-e "s=^send-mail[ ]*/.*$$=send-mail ${SENDMAIL}=" \
|
|
-e "s=^mailq[ ]*/.*$$=mailq ${SENDMAIL}=" \
|
|
-e "s=^newaliases[ ]*/.*$$=newaliases ${SENDMAIL}=" \
|
|
${DESTDIR}/etc/mail/mailer.conf > ${DESTDIR}/etc/mail/mailer.conf.new
|
|
${MV} ${DESTDIR}/etc/mail/mailer.conf.new \
|
|
${DESTDIR}/etc/mail/mailer.conf
|
|
.endif
|
|
|
|
submit.cf:
|
|
${INSTALL_DATA} ${PREFIX}/share/sendmail/cf/cf/submit.mc \
|
|
${DESTDIR}/etc/mail/submit.mc
|
|
@( cd ${DESTDIR}/etc/mail && ${MAKE} \
|
|
SENDMAIL_CF_DIR=${PREFIX}/share/sendmail/cf \
|
|
SENDMAIL_MC=submit )
|
|
|
|
.include <bsd.port.mk>
|