Gentoo Archives: gentoo-commits

From: Aaron Bauman <bman@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: mail-filter/libmilter/, mail-filter/libmilter/files/
Date: Mon, 17 Aug 2020 03:07:02
Message-Id: 1597633601.6c80a732e905607c72d563ad84cf66762eb40e2f.bman@gentoo
1 commit: 6c80a732e905607c72d563ad84cf66762eb40e2f
2 Author: Aaron Bauman <bman <AT> gentoo <DOT> org>
3 AuthorDate: Mon Aug 17 02:59:26 2020 +0000
4 Commit: Aaron Bauman <bman <AT> gentoo <DOT> org>
5 CommitDate: Mon Aug 17 03:06:41 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c80a732
7
8 mail-filter/libmilter: bump to 1.2 with sendmail 8.16.1 source
9
10 * Add sub SLOT to setup proper rebuilds for revdeps
11 * Fix sed calls with : delimiter
12 * Drop multilib eclass
13 * drop glibc-2.30 patch as it was upstreamed
14 * Drop blocker for mail-mta/sendmail
15
16 Closes: https://bugs.gentoo.org/728106
17 Closes: https://bugs.gentoo.org/713002
18
19 Acked-by: Sam James <sam <AT> gentoo.org>
20 Signed-off-by: Aaron Bauman <bman <AT> gentoo.org>
21
22 mail-filter/libmilter/Manifest | 1 +
23 .../files/sendmail-8.14.6-build-system.patch | 73 +++-------------------
24 .../files/sendmail-8.15.2-glibc-2.30.patch | 52 +++++++++++++++
25 mail-filter/libmilter/libmilter-1.0.2_p1-r1.ebuild | 73 ++++++++++++++++++++++
26 4 files changed, 136 insertions(+), 63 deletions(-)
27
28 diff --git a/mail-filter/libmilter/Manifest b/mail-filter/libmilter/Manifest
29 index 02a7dd7b9e9..88526081354 100644
30 --- a/mail-filter/libmilter/Manifest
31 +++ b/mail-filter/libmilter/Manifest
32 @@ -1,2 +1,3 @@
33 DIST sendmail.8.14.5.tar.gz 2092508 BLAKE2B 3d90fa9778ebb42f2f334b35e46d0f24e8fcfd46fe69d6032f246c90fc998fbeb21e70c70bc454c688a76ea00c90ee9b5f0e5e0fc9b89b9f16fa9c814a825f9c SHA512 178addd247f1c7c8ca90d70b9240db4cad4e55f0710d5df0fe979e5473a182d2035150c352836576a28bb2b9660b0d5ebfcd95269a156ac0d2c3dba3edb60452
34 DIST sendmail.8.15.2.tar.gz 2207417 BLAKE2B 3d9dfb5bc2b535e30ef2fc61333e12a9b1fc45a5d730d2bed1ef956adb574721833f87aeba0475705b76e0c7d6cf00f9a10025bffb0de6c6b4dae606eb2ec399 SHA512 04feb37316c13b66b1518596507a7da7c16cb0bf1abf10367f7fd888a428fadb093a9efa55342fa55b936c3f0cbdc63b9e2505cd99201a69a0c05b8ad65f49f9
35 +DIST sendmail.8.16.1.tar.gz 2236402 BLAKE2B 80a9c2f1d04719099703e55f0a0c54fd638cf69b72839d358ae6863c95c9e0965d1b7fdd5b1807bec1ffdf87bca0c7c9ba91060962e6de5da5bf14422f6279ea SHA512 d7d4aac3c6d7505782abdb166204901b8b51cac000d610dfe40eda9eef7441a073af9e8e0b14c8719b07b445f55a1e2c28ac63d663d0daa7f1eafc5a101788b2
36
37 diff --git a/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch b/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch
38 index 3348e921926..c317a4e854f 100644
39 --- a/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch
40 +++ b/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch
41 @@ -126,37 +126,25 @@ diff -Nru sendmail-8.14.3.orig/rmail/Makefile.m4 sendmail-8.14.3/rmail/Makefile.
42 divert
43
44 bldFINISH
45 -diff -Nru sendmail-8.14.3.orig/sendmail/Makefile.m4 sendmail-8.14.3/sendmail/Makefile.m4
46 ---- sendmail-8.14.3.orig/sendmail/Makefile.m4.orig 2008-03-27 17:13:33.000000000 +0100
47 -+++ sendmail-8.14.3/sendmail/Makefile.m4 2009-09-20 11:07:24.000000000 +0200
48 -@@ -14,9 +14,9 @@
49 -
50 - dnl hack: /etc/mail is not defined as "location of .cf" in the build system
51 - define(`bldTARGET_INST_DEP', ifdef(`confINST_DEP', `confINST_DEP',
52 --`${DESTDIR}/etc/mail/submit.cf ${DESTDIR}${MSPQ}'))dnl
53 -+`"${DESTDIR}/etc/mail/submit.cf" "${DESTDIR}${MSPQ}"'))dnl
54 - define(`bldTARGET_LINKS', ifdef(`confLINKS', `confLINKS',
55 --`${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat')
56 -+`"${DESTDIR}${UBINDIR}/newaliases" "${DESTDIR}${UBINDIR}/mailq" "${DESTDIR}${UBINDIR}/hoststat" "${DESTDIR}${UBINDIR}/purgestat"')
57 - )dnl
58 -
59 - # location of sendmail statistics file (usually /etc/mail/ or /var/log)
60 +
61 +--- a/sendmail/Makefile.m4 2020-08-10 23:14:23.209900406 -0400
62 ++++ b/sendmail/Makefile.m4 2020-08-10 23:23:51.272863753 -0400
63 @@ -43,21 +43,21 @@
64 statistics:
65 ${CP} /dev/null statistics
66 -
67 +
68 -${DESTDIR}/etc/mail/submit.cf:
69 -+"${DESTDIR}/etc/mail/submit.cf":
70 ++${DESTDIR}/etc/mail/submit.cf:
71 @echo "Please read INSTALL if anything fails while installing the binary."
72 @echo "${DESTDIR}/etc/mail/submit.cf will be installed now."
73 cd ${SRCDIR}/cf/cf && make install-submit-cf
74 -
75 +
76 MSPQ=ifdef(`confMSP_QUEUE_DIR', `confMSP_QUEUE_DIR', `/var/spool/clientmqueue')
77 -
78 +
79 -${DESTDIR}${MSPQ}:
80 -+"${DESTDIR}${MSPQ}":
81 ++${DESTDIR}${MSPQ}:
82 @echo "Please read INSTALL if anything fails while installing the binary."
83 - @echo "You must have setup a new user ${MSPQOWN} and a new group ${GBINGRP}"
84 + @echo "You must have set up a new user ${MSPQOWN} and a new group ${GBINGRP}"
85 @echo "as explained in sendmail/SECURITY."
86 - mkdir -p ${DESTDIR}${MSPQ}
87 - chown ${MSPQOWN} ${DESTDIR}${MSPQ}
88 @@ -166,46 +154,5 @@ diff -Nru sendmail-8.14.3.orig/sendmail/Makefile.m4 sendmail-8.14.3/sendmail/Mak
89 + chown ${MSPQOWN} "${DESTDIR}${MSPQ}"
90 + chgrp ${GBINGRP} "${DESTDIR}${MSPQ}"
91 + chmod 0770 "${DESTDIR}${MSPQ}"
92 -
93 - divert(0)
94 -
95 -@@ -68,30 +68,30 @@
96 - divert(bldTARGETS_SECTION)
97 -
98 - install-set-user-id: bldCURRENT_PRODUCT ifdef(`confNO_HELPFILE_INSTALL',, `install-hf') ifdef(`confNO_STATISTICS_INSTALL',, `install-st') ifdef(`confNO_MAN_BUILD',, `install-docs')
99 -- ${INSTALL} -c -o ${S`'BINOWN} -g ${S`'BINGRP} -m ${S`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR}
100 -+ ${INSTALL} -c -o ${S`'BINOWN} -g ${S`'BINGRP} -m ${S`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${M`'BINDIR}"
101 - for i in ${sendmailTARGET_LINKS}; do \
102 - rm -f $$i; \
103 - ${LN} ${LNOPTS} ${M`'BINDIR}/sendmail $$i; \
104 - done
105 -
106 --define(`confMTA_LINKS', `${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat')
107 -+define(`confMTA_LINKS', `"${DESTDIR}${UBINDIR}/newaliases" "${DESTDIR}${UBINDIR}/mailq" "${DESTDIR}${UBINDIR}/hoststat" "${DESTDIR}${UBINDIR}/purgestat"')
108 - install-sm-mta: bldCURRENT_PRODUCT
109 -- ${INSTALL} -c -o ${M`'BINOWN} -g ${M`'BINGRP} -m ${M`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR}/sm-mta
110 -+ ${INSTALL} -c -o ${M`'BINOWN} -g ${M`'BINGRP} -m ${M`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${M`'BINDIR}/sm-mta"
111 - for i in confMTA_LINKS; do \
112 - rm -f $$i; \
113 - ${LN} ${LNOPTS} ${M`'BINDIR}/sm-mta $$i; \
114 - done
115 -
116 - install-hf:
117 -- if [ ! -d ${DESTDIR}${HFDIR} ]; then mkdir -p ${DESTDIR}${HFDIR}; else :; fi
118 -- ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m 444 helpfile ${DESTDIR}${HFFILE}
119 -+ if [ ! -d "${DESTDIR}${HFDIR}" ]; then mkdir -p "${DESTDIR}${HFDIR}"; else :; fi
120 -+ ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m 444 helpfile "${DESTDIR}${HFFILE}"
121 -
122 - install-st: statistics
123 -- if [ ! -d ${DESTDIR}${STDIR} ]; then mkdir -p ${DESTDIR}${STDIR}; else :; fi
124 -- ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}${STPATH}
125 -+ if [ ! -d "${DESTDIR}${STDIR}" ]; then mkdir -p "${DESTDIR}${STDIR}"; else :; fi
126 -+ ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics "${DESTDIR}${STPATH}"
127 -
128 --install-submit-st: statistics ${DESTDIR}${MSPQ}
129 -- ${INSTALL} -c -o ${MSPQOWN} -g ${GBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}${MSPQ}/${MSPSTFILE}
130 -+install-submit-st: statistics "${DESTDIR}${MSPQ}"
131 -+ ${INSTALL} -c -o ${MSPQOWN} -g ${GBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics "${DESTDIR}${MSPQ}/${MSPSTFILE}"
132 -
133 +
134 divert(0)
135 - bldPRODUCT_END
136
137 diff --git a/mail-filter/libmilter/files/sendmail-8.15.2-glibc-2.30.patch b/mail-filter/libmilter/files/sendmail-8.15.2-glibc-2.30.patch
138 new file mode 100644
139 index 00000000000..03281d1990f
140 --- /dev/null
141 +++ b/mail-filter/libmilter/files/sendmail-8.15.2-glibc-2.30.patch
142 @@ -0,0 +1,52 @@
143 +https://bugs.gentoo.org/700108
144 +
145 +--- sendmail-8.15.2-r1/libmilter/sm_gethost.c.orig 2014-03-04 19:59:45.000000000 -0500
146 ++++ sendmail-8.15.2-r1/libmilter/sm_gethost.c 2019-11-15 09:32:25.812406080 -0500
147 +@@ -51,18 +51,21 @@
148 + {
149 + bool resv6 = true;
150 + struct hostent *h;
151 +-
152 ++#ifdef RES_USE_INET6
153 + if (family == AF_INET6)
154 + {
155 + /* From RFC2133, section 6.1 */
156 + resv6 = bitset(RES_USE_INET6, _res.options);
157 + _res.options |= RES_USE_INET6;
158 + }
159 ++#endif
160 + SM_SET_H_ERRNO(0);
161 + h = gethostbyname(name);
162 ++#ifdef RES_USE_INET6
163 + if (family == AF_INET6 && !resv6)
164 + _res.options &= ~RES_USE_INET6;
165 +
166 ++#endif
167 + /* the function is supposed to return only the requested family */
168 + if (h != NULL && h->h_addrtype != family)
169 + {
170 +--- sendmail-8.15.2-r2/sendmail/conf.c.orig 2019-11-14 17:36:41.262218822 -0500
171 ++++ sendmail-8.15.2-r2/sendmail/conf.c 2019-11-15 09:57:43.550284580 -0500
172 +@@ -4243,18 +4243,21 @@
173 +
174 + # else /* HAS_GETHOSTBYNAME2 */
175 + bool resv6 = true;
176 +-
177 ++#ifdef RES_USE_INET6
178 + if (family == AF_INET6)
179 + {
180 + /* From RFC2133, section 6.1 */
181 + resv6 = bitset(RES_USE_INET6, _res.options);
182 + _res.options |= RES_USE_INET6;
183 + }
184 ++#endif
185 + SM_SET_H_ERRNO(0);
186 + h = gethostbyname(name);
187 ++#ifdef RES_USE_INET6
188 + if (!resv6)
189 + _res.options &= ~RES_USE_INET6;
190 +
191 ++#endif
192 + /* the function is supposed to return only the requested family */
193 + if (h != NULL && h->h_addrtype != family)
194 + {
195
196 diff --git a/mail-filter/libmilter/libmilter-1.0.2_p1-r1.ebuild b/mail-filter/libmilter/libmilter-1.0.2_p1-r1.ebuild
197 new file mode 100644
198 index 00000000000..cddfb9391b9
199 --- /dev/null
200 +++ b/mail-filter/libmilter/libmilter-1.0.2_p1-r1.ebuild
201 @@ -0,0 +1,73 @@
202 +# Copyright 1999-2020 Gentoo Authors
203 +# Distributed under the terms of the GNU General Public License v2
204 +
205 +EAPI=7
206 +
207 +inherit toolchain-funcs
208 +
209 +# This library is part of sendmail, but it does not share the version number with it.
210 +# In order to find the right libmilter version number, check SMFI_VERSION definition
211 +# that can be found in ${S}/include/libmilter/mfapi.h (see also SM_LM_VRS_* defines).
212 +# For example, version 1.0.1 has a SMFI_VERSION of 0x01000001.
213 +SENDMAIL_VER=8.16.1
214 +
215 +DESCRIPTION="The Sendmail Filter API (Milter)"
216 +HOMEPAGE="http://www.sendmail.org/"
217 +SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${SENDMAIL_VER}.tar.gz"
218 +
219 +LICENSE="Sendmail"
220 +SLOT="0/${PV}"
221 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
222 +IUSE="ipv6 poll"
223 +
224 +S="${WORKDIR}/sendmail-${SENDMAIL_VER}"
225 +
226 +# build system patch copied from sendmail ebuild
227 +PATCHES=(
228 + "${FILESDIR}/sendmail-8.14.6-build-system.patch"
229 + "${FILESDIR}/${PN}-sharedlib.patch"
230 +)
231 +
232 +src_prepare() {
233 + default
234 +
235 + local CC="$(tc-getCC)"
236 + local ENVDEF="-DNETUNIX -DNETINET"
237 + use ipv6 && ENVDEF="${ENVDEF} -DNETINET6"
238 + use poll && ENVDEF="${ENVDEF} -DSM_CONF_POLL=1"
239 +
240 + if use elibc_musl; then
241 + use ipv6 && ENVDEF="${ENVDEF} -DNEEDSGETIPNODE"
242 +
243 + eapply "${FILESDIR}/${PN}-musl-stack-size.patch"
244 + eapply "${FILESDIR}/${PN}-musl-disable-cdefs.patch"
245 + fi
246 +
247 + sed -e "s|@@CFLAGS@@|${CFLAGS}|" \
248 + -e "s|@@LDFLAGS@@|${LDFLAGS}|" \
249 + -e "s|@@CC@@|${CC}|" \
250 + -e "s|@@ENVDEF@@|${ENVDEF}|" \
251 + "${FILESDIR}/gentoo.config.m4" > "${S}/devtools/Site/site.config.m4" \
252 + || die "failed to generate site.config.m4"
253 +}
254 +
255 +src_compile() {
256 + pushd libmilter
257 + emake -j1 MILTER_SOVER=${PV}
258 + popd
259 +}
260 +
261 +src_install() {
262 + local MY_LIBDIR=/usr/$(get_libdir)
263 + dodir "${MY_LIBDIR}"
264 + emake DESTDIR="${D}" LIBDIR="${MY_LIBDIR}" MANROOT=/usr/share/man/man \
265 + SBINOWN=root SBINGRP=0 UBINOWN=root UBINGRP=0 \
266 + LIBOWN=root LIBGRP=0 GBINOWN=root GBINGRP=0 \
267 + MANOWN=root MANGRP=0 INCOWN=root INCGRP=0 \
268 + MSPQOWN=root CFOWN=root CFGRP=0 \
269 + MILTER_SOVER=${PV} \
270 + install -C obj.*/libmilter
271 +
272 + dodoc libmilter/README
273 + dodoc libmilter/docs/*
274 +}