pkgsrc/mail/postfix/Makefile.common
taca 652c5e8d1c mail/postfix: update to 3.5.4
Update postfix to 3.5.4.


Fixed in Postfix 3.5.4, 3.4.14:

  * The connection_reuse attribute in smtp_tls_policy_maps always
    resulted in an "invalid attribute name" error. Fix by Thorsten
    Habich.

  * SMTP over TLS connection reuse always failed for Postfix SMTP
    client configurations that specify explicit trust anchors (remote
    SMTP server certificates or public keys). Reported by Thorsten
    Habich.

Fixed in Postfix versions 3.5.4, 3.4.14, 3.3.12, 3.2.17:

  * The Postfix SMTP client's DANE implementation would always send
    an SNI option with the name in a destination's MX record, even
    if the MX record pointed to a CNAME record. MX records that
    point to CNAME records are not conformant with RFC5321, and so
    are rare.

    Based on the DANE survey of ~2 million hosts it was found that
    with the corrected SMTP client behavior, sending SNI with the
    CNAME-expanded name, the SMTP server would not send a different
    certificate. This fix should therefore be safe.
2020-06-30 15:00:45 +00:00

134 lines
4.6 KiB
Text

# $NetBSD: Makefile.common,v 1.28 2020/06/30 15:00:45 taca Exp $
# used by mail/postfix/Makefile
# used by mail/postfix/Makefile.module
DISTNAME= postfix-3.5.4
CATEGORIES= mail
MASTER_SITES= ftp://ftp.porcupine.org/mirrors/postfix-release/official/
MASTER_SITES+= http://mirrors.isc.org/pub/postfix/official/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.postfix.org/
# The postfix license has only very minor diffs from cpl-1.0.
LICENSE= cpl-1.0
#LICENSE= postfix-license
DISTINFO_FILE= ${PKGDIR}/../../mail/postfix/distinfo
PATCHDIR= ${PKGDIR}/../../mail/postfix/patches
CHECK_HEADERS_SKIP+= src/global/mail_params.h
.include "../../mk/bsd.prefs.mk"
POSTFIX_USER?= postfix
POSTFIX_GROUP?= postfix
MAILDROP_GROUP?= maildrop
# POSTFIX_QUEUE_DIR is the default queue directory for Postfix. This is
# merely a default, and may be changed by setting "queue_directory" in
# ${PKG_SYSCONFDIR}/main.cf.
#
POSTFIX_DATA_DIR?= ${VARBASE}/db/postfix
POSTFIX_QUEUE_DIR?= ${VARBASE}/spool/postfix
POSTFIX_QUEUE_SUBDIR= active bounce corrupt defer deferred flush hold \
incoming maildrop pid private public saved trace
BUILD_DEFS+= VARBASE POSTFIX_DATA_DIR POSTFIX_QUEUE_DIR
# CCARGS is a list of options to pass to the preprocessor/compiler.
# AUXLIBS is a list of options to pass to the linker.
CCARGS= #defined
AUXLIBS= ${LDFLAGS}
# Enable Dovecot SASL
CCARGS+= -DUSE_SASL_AUTH
# Enable Berkeley DB map type. BDB_LIBS is defined in mk/bdb.buildlink3.mk.
CCARGS+= -DHAS_DB
AUXLIBS+= ${BDB_LIBS}
# Disable modules by default
.for module in cdb ldap lmdb mysql pcre pgsql sqlite
CCARGS+= -DNO_${module:tu}
.endfor
# Set some default paths to override ${WRKSRC}/src/global/mail_params.h.
CCARGS+= -DDEF_COMMAND_DIR=\"${PREFIX}/sbin\"
CCARGS+= -DDEF_CONFIG_DIR=\"${PKG_SYSCONFDIR}\"
CCARGS+= -DDEF_DAEMON_DIR=\"${LIBEXECDIR}\"
CCARGS+= -DDEF_DATA_DIR=\"${POSTFIX_DATA_DIR}\"
CCARGS+= -DDEF_MAILQ_PATH=\"${PREFIX}/bin/mailq\"
CCARGS+= -DDEF_MANPAGE_DIR=\"${PREFIX}/${PKGMANDIR}\"
CCARGS+= -DDEF_META_DIR=\"${PREFIX}/${METADIR}\"
CCARGS+= -DDEF_NEWALIAS_PATH=\"${PREFIX}/bin/newaliases\"
CCARGS+= -DDEF_QUEUE_DIR=\"${POSTFIX_QUEUE_DIR}\"
CCARGS+= -DDEF_README_DIR=\"${DOCDIR}\"
CCARGS+= -DDEF_SAMPLE_DIR=\"${EXAMPLEDIR}\"
CCARGS+= -DDEF_SENDMAIL_PATH=\"${PREFIX}/sbin/sendmail\"
CCARGS+= -DDEF_SHLIB_DIR=\"${PREFIX}/${SHLIBDIR}\"
# Override those same default paths in the installed example main.cf.
SUBST_CLASSES+= postfix
SUBST_STAGE.postfix= post-configure
SUBST_FILES.postfix= conf/main.cf src/global/mail_params.h
SUBST_SED.postfix= \
-e 's|^\(data_directory\) =.*|\1 = ${POSTFIX_DATA_DIR}|'
SUBST_SED.postfix+= \
-e 's|^\(queue_directory\) =.*|\1 = ${POSTFIX_QUEUE_DIR}|'
SUBST_SED.postfix+= \
-e 's|^\(command_directory\) =.*|\1 = ${PREFIX}/sbin|'
SUBST_SED.postfix+= \
-e 's|^\(daemon_directory\) =.*|\1 = ${LIBEXECDIR}|'
SUBST_SED.postfix+= \
-e 's|^\(meta_directory\) =.*|\1 = ${PREFIX}/${METADIR}|'
SUBST_SED.postfix+= \
-e 's|^\(shlib_directory\) =.*|\1 = ${PREFIX}/${SHLIBDIR}|'
SUBST_SED.postfix+= \
-e 's|^\(sendmail_path\) =.*|\1 = ${PREFIX}/sbin/sendmail|'
SUBST_SED.postfix+= \
-e 's|^\(newaliases_path\) =.*|\1 = ${PREFIX}/bin/newaliases|'
SUBST_SED.postfix+= \
-e 's|^\(mailq_path\) =.*|\1 = ${PREFIX}/bin/mailq|'
SUBST_SED.postfix+= \
-e 's|^\(mail_owner\) =.*|\1 = ${POSTFIX_USER}|'
SUBST_SED.postfix+= \
-e 's|^\(setgid_group\) =.*|\1 = ${MAILDROP_GROUP}|'
SUBST_SED.postfix+= \
-e 's|^\(manpage_directory\) =.*|\1 = ${PREFIX}/${PKGMANDIR}|'
SUBST_SED.postfix+= \
-e 's|^\(sample_directory\) =.*|\1 = ${EXAMPLEDIR}|'
SUBST_SED.postfix+= \
-e 's|^\(readme_directory\) =.*|\1 = ${DOCDIR}|'
SUBST_SED.postfix+= \
-e '/^\#define DEF_MAIL_OWNER[ ]/s,postfix,${POSTFIX_USER},g'
SUBST_SED.postfix+= \
-e '/^\#define DEF_SGID_GROUP[ ]/s,postdrop,${MAILDROP_GROUP},g'
PKG_SYSCONFSUBDIR= postfix
LIBEXECDIR= ${PREFIX}/libexec/postfix
DOCDIR= ${PREFIX}/share/doc/postfix
EXAMPLEDIR= ${PREFIX}/share/examples/postfix
# Not prefixed so that we can use where relative path needed
# METADIR set for postfix-2.6.x compatibility
METADIR= libexec/postfix
SHLIBDIR= lib/postfix
BUILD_TARGET= # empty
MAKE_ENV+= CC=${CC:Q} OPT=${CFLAGS:Q}
MAKE_ENV+= AUXLIBS=${AUXLIBS:Q} CCARGS=${CCARGS:Q}
MAKE_ENV+= DEBUG= # empty
.if ${OPSYS} == "SunOS" && !exists(/usr/include/rpcsvc/nis_cache.h)
CCARGS+= -DNO_NISPLUS
.endif
CFLAGS.SunOS+= -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
DESTDIR_INSTALLOPTIONS= -package install_root="${DESTDIR}"
do-configure:
cd ${WRKSRC} && \
env ${MAKE_ENV} ${MAKE} -f Makefile.init makefiles \
'CCARGS=${CCARGS}' 'AUXLIBS=${AUXLIBS}' \
shared=yes dynamicmaps=yes
.include "../../mk/bdb.buildlink3.mk"