pkgsrc/mail/postfix/Makefile
martti 49e5da662f Updated postfix to 2.0.12
- Stricter smtpd input checks rejected invalid addresses starting with @.

- Stricter postdrop input checks broke "sendmail -bs".

- New "postcat -q" (search the queue for the named file) support
  from snapshot release because I can no longer see people suffer.

- Allow <@site,@site:address> route addresses in SMTP commands.
  This address form was deprecated years ago.

- "sendmail -q<time>" without -bd option now exits immediately,
  instead of waiting for input and screwing up system boot sequences.

- The Postfix LMTP client used the wrong service name, causing
  trouble with SASL 2.1.13.

- Turned off non-blocking write to pipe because too many systems
  gave an unexpected write() result, causing partial delivery of
  messages to commands like procmail.
2003-06-16 08:29:22 +00:00

164 lines
5.1 KiB
Makefile

# $NetBSD: Makefile,v 1.99 2003/06/16 08:29:22 martti Exp $
DISTNAME= postfix-2.0.12
CATEGORIES= mail
MASTER_SITES= ftp://ftp.porcupine.org/mirrors/postfix-release/official/
MAINTAINER= tech-pkg@netbsd.org
HOMEPAGE= http://www.postfix.org/
COMMENT= Postfix SMTP server and tools
DIST_SUBDIR= postfix
POSTFIX_SPOOL= /var/spool/postfix
USE_BUILDLINK2= yes
USE_PKGINSTALL= yes
PKG_SYSCONFSUBDIR= postfix
OWN_DIRS= ${POSTFIX_SPOOL}
CCARGS+= -DDEF_CONFIG_DIR=\"${PKG_SYSCONFDIR}\"
CCARGS+= -DDEF_SENDMAIL_PATH=\"${PREFIX}/sbin/sendmail\"
CCARGS+= -DDEF_MAILQ_PATH=\"${PREFIX}/bin/mailq\"
CCARGS+= -DDEF_NEWALIAS_PATH=\"${PREFIX}/bin/newaliases\"
CCARGS+= -DDEF_COMMAND_DIR=\"${PREFIX}/sbin\"
CCARGS+= -DDEF_DAEMON_DIR=\"${LIBEXECDIR}\"
.include "../../mk/bsd.prefs.mk"
FIX_RPATH+= AUXLIBS
.if defined(POSTFIX_USE_INET6) && ${POSTFIX_USE_INET6} == "YES"
.include "../../security/openssl/buildlink2.mk"
PATCHFILES+= tls+ipv6-1.14-pf-2.0.12.patch.gz
PATCH_SITES+= ftp://ftp.stack.nl/pub/postfix/tls+ipv6/1.14/
PATCH_DIST_STRIP= -p1
BUILD_DEFS+= POSTFIX_USE_INET6
CCARGS+= -DHAS_SSL
AUXLIBS+= -L${BUILDLINK_PREFIX.openssl}/lib \
-Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.openssl}/lib \
-lssl -lcrypto
BUILD_DEFS+= POSTFIX_USE_TLS
PLIST_SRC+= ${PKGDIR}/PLIST.tls
MESSAGE_SRC+= ${PKGDIR}/MESSAGE.tls
.endif
.if defined(POSTFIX_USE_PCRE) && ${POSTFIX_USE_PCRE} == "YES"
.include "../../devel/pcre/buildlink2.mk"
CCARGS+= -DHAS_PCRE
AUXLIBS+= -L${BUILDLINK_PREFIX.pcre}/lib \
-Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.pcre}/lib \
-lpcre
BUILD_DEFS+= POSTFIX_USE_PCRE
.else
CCARGS+= -DNO_PCRE
.endif
.if defined(POSTFIX_USE_LDAP) && ${POSTFIX_USE_LDAP} == "YES"
.include "../../databases/openldap/buildlink2.mk"
CCARGS+= -DHAS_LDAP
AUXLIBS+= -L${BUILDLINK_PREFIX.openldap}/lib \
-Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.openldap}/lib \
-lldap -llber
BUILD_DEFS+= POSTFIX_USE_LDAP
.endif
.if defined(POSTFIX_USE_MYSQL) && ${POSTFIX_USE_MYSQL} == "YES"
.include "../../databases/mysql-client/buildlink2.mk"
CCARGS+= -DHAS_MYSQL -I${BUILDLINK_PREFIX.mysql-client}/include/mysql
AUXLIBS+= -L${BUILDLINK_PREFIX.mysql-client}/lib/mysql \
-Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.mysql-client}/lib/mysql \
-lmysqlclient -lz -lm
BUILD_DEFS+= POSTFIX_USE_MYSQL
.endif
.if defined(USE_SASL) && ${USE_SASL} == "YES"
.include "../../security/cyrus-sasl/buildlink2.mk"
CCARGS+= -DUSE_SASL_AUTH
AUXLIBS+= -L${BUILDLINK_PREFIX.cyrus-sasl}/lib \
-Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.cyrus-sasl}/lib \
-lsasl
BUILD_DEFS+= USE_SASL
PLIST_SRC+= ${WRKDIR}/PLIST.sasl
MESSAGE_SRC+= ${PKGDIR}/MESSAGE.sasl
MESSAGE_SUBST+= PKG_SYSCONFDIR=${PKG_SYSCONFDIR}
.endif
MESSAGE_SRC+= ${PKGDIR}/MESSAGE
PLIST_SRC+= ${PKGDIR}/PLIST
ALL_TARGET= #empty
MAKE_ENV= CC="${CC}" OPT="${CFLAGS}"
MAKE_ENV+= AUXLIBS="${AUXLIBS}" CCARGS="${CCARGS}"
POSTFIX_CONF_FILES= conf/main.cf src/util/sys_defs.h postfix-install
POSTFIX_CONF_FILES+= conf/sample-misc.cf src/global/mail_params.h
FILES_SUBST+= SHAREDIR=${SHAREDIR}
MESSAGE_SUBST+= SHAREDIR=${SHAREDIR}
PLIST_SUBST+= PKG_SYSCONFDIR=${PKG_SYSCONFDIR}
PLIST_SUBST+= POSTFIX_SPOOL=${POSTFIX_SPOOL}
PKG_GROUPS?= postfix maildrop
PKG_USERS?= postfix:postfix::Postfix\\ User:${POSTFIX_SPOOL}
LIBEXECDIR= ${PREFIX}/libexec/${PKGBASE}
SHAREDIR= ${PREFIX}/share/examples/${PKGBASE}
CONF_FILES= ${SHAREDIR}/main.cf ${PKG_SYSCONFDIR}/main.cf
CONF_FILES+= ${SHAREDIR}/master.cf ${PKG_SYSCONFDIR}/master.cf
CONF_FILES_PERMS=
.for confscr in post-install postfix-files postfix-script
CONF_FILES_PERMS+= ${SHAREDIR}/${confscr} ${PKG_SYSCONFDIR}/${confscr} \
${ROOT_USER} ${ROOT_GROUP} 755
.endfor
.undef confscr
INSTALL_EXTRA_TMPL+= ${.CURDIR}/INSTALL
pre-configure:
@for i in ${POSTFIX_CONF_FILES}; do \
${CP} ${WRKSRC}/$${i} ${WRKSRC}/$${i}.dist; \
${SED} -e 's|__PREFIX|'${PREFIX}'|g' \
-e 's|__PKG_SYSCONFDIR|'${PKG_SYSCONFDIR}'|g' \
< ${WRKSRC}/$${i}.dist \
> ${WRKSRC}/$${i}; \
done
do-configure:
(cd ${WRKSRC} && \
${SETENV} ${MAKE_ENV} ${MAKE} -f Makefile.init makefiles \
'CCARGS=${CCARGS}' 'AUXLIBS=${AUXLIBS}')
post-build:
${SED} -e 's#@@PREFIX@@#${PREFIX}#g' \
<${FILESDIR}/mailer.conf >${WRKDIR}/mailer.conf.postfix
pre-install:
${INSTALL_DATA_DIR} ${PKG_SYSCONFDIR}
${INSTALL_DATA_DIR} ${SHAREDIR}
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/postfix
${INSTALL_DATA_DIR} ${LIBEXECDIR}
${CHOWN} ${ROOT_USER}:${ROOT_GROUP} ${SHAREDIR} ${LIBEXECDIR}
${CHMOD} 755 ${SHAREDIR} ${LIBEXECDIR}
-${RM} -f ${WRKSRC}/conf/*.orig
.if defined(USE_SASL) && ${USE_SASL} == "YES"
${ECHO} "pwcheck_method: sasldb" > ${WRKDIR}/smtpd.conf
${INSTALL_DATA} ${WRKDIR}/smtpd.conf ${PREFIX}/lib/sasl
${ECHO} lib/sasl/smtpd.conf > ${WRKDIR}/PLIST.sasl
.endif
${INSTALL_SCRIPT} ${WRKSRC}/conf/post-install ${SHAREDIR}
${INSTALL_SCRIPT} ${WRKSRC}/conf/postfix-files ${SHAREDIR}
${INSTALL_SCRIPT} ${WRKSRC}/conf/postfix-script ${SHAREDIR}
${INSTALL_DATA} ${WRKSRC}/conf/main.cf ${SHAREDIR}
${INSTALL_DATA} ${WRKSRC}/conf/master.cf ${SHAREDIR}
${INSTALL_DATA} ${WRKDIR}/mailer.conf.postfix ${SHAREDIR}/mailer.conf
do-install:
(cd ${WRKSRC} && ${SETENV} config_directory="${SHAREDIR}" ${SH} postfix-install -non-interactive)
.include "../../mk/bsd.pkg.mk"