aboutsummaryrefslogtreecommitdiff
path: root/mail/qmail
diff options
context:
space:
mode:
authorBryan Drewery <bdrewery@FreeBSD.org>2014-07-03 16:14:17 +0000
committerBryan Drewery <bdrewery@FreeBSD.org>2014-07-03 16:14:17 +0000
commit96c157db261e444be9f1e05d89ab3791ea65167e (patch)
tree012b2e43ad44a69bd757045fd4a30b1aca69f1d2 /mail/qmail
parent4c444f4cda51265d383c04e41dc299355ed6d861 (diff)
downloadports-96c157db261e444be9f1e05d89ab3791ea65167e.tar.gz
ports-96c157db261e444be9f1e05d89ab3791ea65167e.zip
MFH: r360338
Fix patch application in mail/qmail-spamcontrol: The spamcontrol patch is applied through a script, install_spamcontrol.sh. This script does not return a non-zero status when patch failures are encountered. So I missed many failures when updating this port. To fix this, move the spamcontrol patch application to pre-patch so that the PATCHFILES->DISTFILES (and manual patch application with PATCH) is not needed for most patches. This ensures that the spamcontrol patch is always applied before PATCHFILES. Some PATCHFILES were applying before the spamcontrol patch causing it to fail to patch properly. Bump revision as the build had been fine but some files were not being generated in the package. Also add my mirror as distcache does not have the updated patches yet. Reported by: Oleg Strizhak
Notes
Notes: svn path=/branches/2014Q3/; revision=360398
Diffstat (limited to 'mail/qmail')
-rw-r--r--mail/qmail/Makefile83
-rw-r--r--mail/qmail/distinfo6
2 files changed, 49 insertions, 40 deletions
diff --git a/mail/qmail/Makefile b/mail/qmail/Makefile
index 916130a8ff3d..74f9a54c7b4c 100644
--- a/mail/qmail/Makefile
+++ b/mail/qmail/Makefile
@@ -176,8 +176,8 @@ PATCHFILES+= ${TLS_PATCH_NAME}:tls
.endif
PATCH_SITES+= ${MASTER_SITE_LOCAL:S/$/:dns,sendmail_flagf,rfc2821,ldap,mysql,tls,quota,blockexec,doublebounce,spf,spf_tls,localtime,qmtpc_outgoingip/}
-PATCH_SITE_SUBDIR+= bdrewery/qmail/:dns,sendmail_flagf,rfc2821,ldap,mysql,quota,blockexec,doublebounce,spf,spf_tls,localtime,qmtpc_outgoingip
-PATCH_SITE_SUBDIR+= bdrewery/qmail/:tls
+PATCH_SITE_SUBDIR+= bdrewery/qmail/:dns,sendmail_flagf,rfc2821,ldap,mysql,tls,quota,blockexec,doublebounce,spf,spf_tls,localtime,qmtpc_outgoingip
+PATCH_SITES+= http://mirror.shatow.net/freebsd/qmail/:DEFAULT,dns,sendmail_flagf,rfc2821,ldap,mysql,tls,quota,blockexec,doublebounce,spf,spf_tls,localtime,qmtpc_outgoingip
.if !defined(BARRIER_SMTP_AUTH_PATCH)
SMTP_AUTH_VERSION= 0.31
@@ -472,10 +472,10 @@ PATCHFILES+= qmail-discard-double-bounces.patch:doublebounce
.if ${PORT_OPTIONS:MSPF_PATCH}
. if defined(SLAVE_TLS) || defined(SLAVE_SPAMCONTROL)
. if defined(SLAVE_SPAMCONTROL)
-SPF_SPAMCONTROL_PATCH= qmail-spf-rc5.patch-spamcontrol-27
-MASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:spf_spamcontrol/}
-MASTER_SITE_SUBDIR+= garga/qmail/:spf_spamcontrol
-DISTFILES+= ${SPF_SPAMCONTROL_PATCH}:spf_spamcontrol
+SPF_SPAMCONTROL_PATCH= qmail-spf-rc5.patch-spamcontrol-27_2
+PATCH_SITES+= ${MASTER_SITE_LOCAL:S/$/:spf_spamcontrol/}
+PATCH_SITE_SUBDIR+= garga/qmail/:spf_spamcontrol
+PATCHFILES+= ${SPF_SPAMCONTROL_PATCH}:spf_spamcontrol
. else
# XXX - Move change out of conflicting Makefile hunk
. if ${PORT_OPTIONS:MSMTP_AUTH_PATCH}
@@ -506,13 +506,9 @@ DISTFILES+= ${EXT_BIG_TODO_PATCH}:ext_big_todo
. endif
. if ${PORT_OPTIONS:MSPF_PATCH}
-. if defined(SLAVE_TLS) || defined(SLAVE_SPAMCONTROL)
-. if defined(SLAVE_SPAMCONTROL)
-EXTTODO_PATCH= ext_todo-20030105_spf.patch
-. else
+. if defined(SLAVE_TLS)
# XXX - Move qmail-todo out of conflicting Makefile hunk
EXTTODO_PATCH= ext_todo-20030105_spf_tls.patch
-. endif
MASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:exttodo/}
MASTER_SITE_SUBDIR+= garga/qmail/:exttodo
DISTFILES+= ${EXTTODO_PATCH}:exttodo
@@ -557,7 +553,11 @@ PATCHFILES+= qmailqueue-patch
PATCHFILES+= big-todo.103.patch
.endif
.if ${PORT_OPTIONS:MBIG_CONCURRENCY_PATCH}
+. if defined(SLAVE_SPAMCONTROL)
+PATCHFILES+= big-concurrency-spamcontrol-2731.patch
+. else
PATCHFILES+= big-concurrency.patch
+. endif
.endif
.if !empty(PORT_OPTIONS:MOUTGOINGIP_PATCH) && !empty(PORT_OPTIONS:MQMTPC_PATCH)
PATCHFILES+= qmail-1.03-qmtpc_outgoingip_20090630.patch:qmtpc_outgoingip
@@ -684,6 +684,40 @@ post-extract:
.endif
# XXX - Move all the major patch applications to post-extract
+#
+# Apply main distro patch (which requires building a dependency and
+# running a script) before PATCHFILES get applied.
+.if defined(SLAVE_SPAMCONTROL)
+pre-patch:
+. if ${OSVERSION} < 900007
+# Prevent applying utmpx patch
+ @${ECHO_CMD} > ${WRKSRC}/qbiff.c.patch
+. endif
+ @${ECHO_CMD} ${WRKDIR} > ${WRKSRC}/conf-qmail
+ @${ECHO_CMD} "# Generated by qmail-spamcontrol FreeBSD port" \
+ > ${WRKSRC}/conf-spamcontrol
+. for option in ${SELECTED_OPTIONS}
+ @${ECHO_CMD} ${option} >> ${WRKSRC}/conf-spamcontrol
+. endfor
+ @${ECHO_CMD} "${UCSPISRC}/compile" > ${WRKSRC}/conf-ucspissl
+ ${ECHO_CMD} "${CC} ${CFLAGS}" > ${UCSPISRC}/src/conf-cc
+ ${ECHO_CMD} "${CC} ${STRIP} ${LDFLAGS}" > ${UCSPISRC}/src/conf-ld
+ ${ECHO_CMD} "${PREFIX}" > ${UCSPISRC}/src/conf-home
+ ${ECHO_CMD} "${PREFIX}/bin" > ${UCSPISRC}/src/conf-tcpbin
+ ${ECHO_CMD} "/etc/ssl" > ${UCSPISRC}/src/conf-cadir
+ ${ECHO_CMD} "/etc/ssl/cert.pem" > ${UCSPISRC}/src/conf-cafile
+ ${ECHO_CMD} "/etc/ssl/dh1024.pem" > ${UCSPISRC}/src/conf-dhfile
+ @cd ${UCSPISRC} && ${SETENV} ${MAKE_ENV} package/compile
+ @cd ${WRKSRC} && ${SH} ./install_spamcontrol.sh
+# Any rejected patches are a failure
+ @if [ "`find ${WRKSRC} -name '*.rej' | wc -l`" -ne 0 ]; then \
+ ${ECHO_MSG} "===> Failed to apply spamcontrol patch"; \
+ ${FALSE}; \
+ fi
+# Fix trailing whitespace which breaks some patches
+ ${SED} -i '' -e 's,^\(binm3 binm3+df\) $$,\1,' ${WRKSRC}/Makefile
+.endif
+
post-patch:
.if ${PORT_OPTIONS:MSMTP_AUTH_PATCH}
@${CP} ${SMTP_AUTH_DIR}/base64.[ch] ${WRKSRC}
@@ -710,33 +744,6 @@ post-patch:
-e "s,MYSQL_LIBS=.*,MYSQL_LIBS=\`${LOCALBASE}/bin/mysql_config --libs\`," \
${WRKSRC}/Makefile
.elif defined(SLAVE_SPAMCONTROL)
-. if ${OSVERSION} < 900007
-# Prevent applying utmpx patch
- @${ECHO_CMD} > ${WRKSRC}/qbiff.c.patch
-. endif
- @${ECHO_CMD} ${WRKDIR} > ${WRKSRC}/conf-qmail
- @${ECHO_CMD} "# Generated by qmail-spamcontrol FreeBSD port" \
- > ${WRKSRC}/conf-spamcontrol
-. for option in ${SELECTED_OPTIONS}
- @${ECHO_CMD} ${option} >> ${WRKSRC}/conf-spamcontrol
-. endfor
- @${ECHO_CMD} "${UCSPISRC}/compile" > ${WRKSRC}/conf-ucspissl
- ${ECHO_CMD} "${CC} ${CFLAGS}" > ${UCSPISRC}/src/conf-cc
- ${ECHO_CMD} "${CC} ${STRIP} ${LDFLAGS}" > ${UCSPISRC}/src/conf-ld
- ${ECHO_CMD} "${PREFIX}" > ${UCSPISRC}/src/conf-home
- ${ECHO_CMD} "${PREFIX}/bin" > ${UCSPISRC}/src/conf-tcpbin
- ${ECHO_CMD} "/etc/ssl" > ${UCSPISRC}/src/conf-cadir
- ${ECHO_CMD} "/etc/ssl/cert.pem" > ${UCSPISRC}/src/conf-cafile
- ${ECHO_CMD} "/etc/ssl/dh1024.pem" > ${UCSPISRC}/src/conf-dhfile
- @cd ${UCSPISRC} && ${SETENV} ${MAKE_ENV} package/compile
- @cd ${WRKSRC} && ./install_spamcontrol.sh
- @${PATCH} -d ${WRKSRC} < ${FILESDIR}/extra-patch-spamcontrol-qmail-smtpd.c
-. if ${PORT_OPTIONS:MSPF_PATCH} && defined(SPF_SPAMCONTROL_PATCH)
- @${PATCH} -d ${WRKSRC} < ${DISTDIR}/${DIST_SUBDIR}/${SPF_SPAMCONTROL_PATCH}
-. if ${PORT_OPTIONS:MEXTTODO_PATCH} && defined(EXTTODO_PATCH)
- @${PATCH} -p1 -d ${WRKSRC} < ${DISTDIR}/${DIST_SUBDIR}/${EXTTODO_PATCH}
-. endif
-. endif
. if ${PORT_OPTIONS:MSMTPEXTFORK}
@${PATCH} -d ${WRKSRC} < ${DISTDIR}/${DIST_SUBDIR}/${SMTPEXTFORK_PATCH}
. if ${PORT_OPTIONS:MXF_QUITASAP}
diff --git a/mail/qmail/distinfo b/mail/qmail/distinfo
index 4a7abb98822d..07adf9ad3a1f 100644
--- a/mail/qmail/distinfo
+++ b/mail/qmail/distinfo
@@ -10,6 +10,8 @@ SHA256 (qmail/big-todo.103.patch) = afa0a249e3271badd442f0bdae39997d9fe536157d8a
SIZE (qmail/big-todo.103.patch) = 5546
SHA256 (qmail/big-concurrency.patch) = 0322991955878e86af495f7317c3a4bd2e60640f9a6dd70ad501fff27242ac2f
SIZE (qmail/big-concurrency.patch) = 9331
+SHA256 (qmail/big-concurrency-spamcontrol-2731.patch) = 0a9e11a784b1e9b47093aea2c67aef4f8b06d4da5624d5284c978fca0d2c5735
+SIZE (qmail/big-concurrency-spamcontrol-2731.patch) = 9632
SHA256 (qmail/sendmail-flagf.patch) = 9b3951c22b98c0e5a6ebfa793f052d91dfe01d68a0ad8dc83b8e0bd60c01802e
SIZE (qmail/sendmail-flagf.patch) = 863
SHA256 (qmail/patch-qmail-1.03-rfc2821.diff) = c34b331e27882f0596529df14f0e9f24c4dff9f941d04e5df17cc158dddac426
@@ -62,8 +64,8 @@ SHA256 (qmail/ext_todo-20030105_mysql.patch) = 3fc65b91faaaae147dbf6264f93816648
SIZE (qmail/ext_todo-20030105_mysql.patch) = 33797
SHA256 (qmail/ext_todo-20030105_tls.patch) = 0924d3d1287200cb4efc1c3ebfa139f715d3a9d75a6d8af17520c5262a192da2
SIZE (qmail/ext_todo-20030105_tls.patch) = 33795
-SHA256 (qmail/qmail-spf-rc5.patch-spamcontrol-27) = 71e1d204a2f388fa2d0d9902a4289a46988f45119f91eed2ba4733b9e81dd932
-SIZE (qmail/qmail-spf-rc5.patch-spamcontrol-27) = 64059
+SHA256 (qmail/qmail-spf-rc5.patch-spamcontrol-27_2) = bd53c0ce09ce68e9638abcab7f36a1e259ffb41737e27f6b8d9e0315f2d09524
+SIZE (qmail/qmail-spf-rc5.patch-spamcontrol-27_2) = 64058
SHA256 (qmail/auth.patch.diff) = 1d0f8e0ce139cd00b86f056bc31c1422d30b88cb8b125023d534cc3664f827b8
SIZE (qmail/auth.patch.diff) = 4412
SHA256 (qmail/auth.patch.diff-tls-20110119) = 838a35ea92990775fa96567366249f70e7edbfdf127bebbc23b3df58eb086921