diff options
Diffstat (limited to 'mail-filter')
-rw-r--r-- | mail-filter/Manifest.gz | bin | 8538 -> 8540 bytes | |||
-rw-r--r-- | mail-filter/libmilter/Manifest | 2 | ||||
-rw-r--r-- | mail-filter/libmilter/libmilter-1.0.2_p2-r1.ebuild | 94 | ||||
-rw-r--r-- | mail-filter/libmilter/libmilter-1.0.2_p3-r2.ebuild | 136 |
4 files changed, 232 insertions, 0 deletions
diff --git a/mail-filter/Manifest.gz b/mail-filter/Manifest.gz Binary files differindex 4e1a4c7cd10d..c2100666f514 100644 --- a/mail-filter/Manifest.gz +++ b/mail-filter/Manifest.gz diff --git a/mail-filter/libmilter/Manifest b/mail-filter/libmilter/Manifest index a20e43b8d088..a9c6eef05e95 100644 --- a/mail-filter/libmilter/Manifest +++ b/mail-filter/libmilter/Manifest @@ -7,6 +7,8 @@ DIST sendmail.8.16.1.tar.gz 2236402 BLAKE2B 80a9c2f1d04719099703e55f0a0c54fd638c DIST sendmail.8.17.1.9.tar.gz 2345302 BLAKE2B 378f2f98ffff6457c49f934228964e792acec6f33fbabd89a8712f09f1dc7afc951b7c984a397aa7dd3773d86bdf57a946ea9ac54ae426bc0b8ea4c040e2ad4a SHA512 ad8198b12bdc0037de5b64b2504bd5e0a42bf054274a4834163a7c46953b9aec23d52d58063cc6b925d90199973608f35edeb40128671ae32889f4558e5c0d4b DIST sendmail.8.17.1.tar.gz 2284027 BLAKE2B 4cbbc2bb536a48ea27994721e9dfefff7739ef1c825bbc0397202e600d8dad8f9a2572a777204693cf9630f767865d50566f0827be6b52be41c1e25532cb394c SHA512 ae42343fb06c09f2db5d919d602afc4241914387dfdae0f15e0967dda3be25bf1d3a4637b57266763679646a3cea6aa07e6453266fd9b7358c1a09ec2b627a15 EBUILD libmilter-1.0.2_p1-r2.ebuild 2214 BLAKE2B 1d8fe51cf3c6b88889cbf9d9597bf78406794f18c79392a1fb2cb2f4af7ed662d68c35d11fce142b677c272a8234f9c30adda2aea94f31ed9850763ebbf94f89 SHA512 b4ad6934eb6d717c70eb0491508b6e482710e64801e6b1aeff1f0a305f919777d6c100d68fef2093aba09cfbaff7461377f4ee6890cb24db02a74f2ed21d82c0 +EBUILD libmilter-1.0.2_p2-r1.ebuild 2865 BLAKE2B 00a1067309c833e28b429e0d6dfc1a899ac929c108b0d8575f8776b0e3ddd666de7e44c132091bcb38640ae0c2bea004ed62747c2ffc3bf2f8f8afbf94e40d2f SHA512 aed1234bed50faa63f8c54c166d63d7a7604fa7e1f5d480383c422edf3cae06a712f83516aaa05512a571a301a2d8e9acf2daa5f3e7051e0ce360db4a157dadf EBUILD libmilter-1.0.2_p2.ebuild 2587 BLAKE2B 1e19da23071db4316f4ea71b037e9c0f5105ef35ae41309a1472bfbd31944de6d4638d371b52001c282e412a865770594c00027878fcc3d1cc55a85e2e9daa6c SHA512 72b9fdd42872f9fd258c24a2ca039ea6b7468eec1009a35a7910f62c354c32a4ae36011f6ffbdddc7f9658ab2ce218e06f8e7bc61a34fe97a09d1e86e2259c86 EBUILD libmilter-1.0.2_p3-r1.ebuild 4638 BLAKE2B 1af07ac7ba930249d37e7f1d89a58d050716bfa789f2bc5e9cd87ee14b2ae229355880691c4873ea92eab9ecb8fc47cee6c433b96cdaecdfff27b2335df614be SHA512 ae1f1974b85c6e589d3f0042b4c40874dacafc9035656764bb85fe2f5f2d58b36c3f6b0729212c885d973e63936d25e51be8da05c7a1edf287d5410976e10c67 +EBUILD libmilter-1.0.2_p3-r2.ebuild 4908 BLAKE2B c9cf47fef8b35876e1a71e6ffa773f1ed373626ac162da6ce3b9de44e47868540cceec02f67fc32331e8e3ef91ec5f186f0d71cb7985d4174afecc87c27ba331 SHA512 e67ed0652be8d285eb85c2bacfbaf526130729819f1147226618205f3c3cf3c6471a1baddc9a2eb7829ffdb37da7863ac64f6863ba43935d551da4131f386e91 MISC metadata.xml 242 BLAKE2B a1470d88ad351df055ea5db2b64a027099793950747d234bac52821b06e634b26f7ee7b8390ef036b8ed46d00e4b4e6e06879e190a94e7f5d83613075fbce3b2 SHA512 3973306ad870afaf30305f9f79177798bde6c1bd2f826bc57a9e772c57ec83762c460c25357d4aa286a5d74469ad470c9acc171648bdd0cedd5df268a107c45f diff --git a/mail-filter/libmilter/libmilter-1.0.2_p2-r1.ebuild b/mail-filter/libmilter/libmilter-1.0.2_p2-r1.ebuild new file mode 100644 index 000000000000..2cfbdff9b282 --- /dev/null +++ b/mail-filter/libmilter/libmilter-1.0.2_p2-r1.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# Note: please bump this together with mail-mta/sendmail + +inherit toolchain-funcs + +# This library is part of sendmail, but it does not share the version number with it. +# In order to find the right libmilter version number, check SMFI_VERSION definition +# that can be found in ${S}/include/libmilter/mfapi.h (see also SM_LM_VRS_* defines). +# For example, version 1.0.1 has a SMFI_VERSION of 0x01000001. +SENDMAIL_VER=8.17.1 + +DESCRIPTION="The Sendmail Filter API (Milter)" +HOMEPAGE="http://www.sendmail.org/" +SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${SENDMAIL_VER}.tar.gz" +S="${WORKDIR}/sendmail-${SENDMAIL_VER}" + +LICENSE="Sendmail" +# We increment _pN when a new sendmail tarball comes out +# We change the actual "main version" (1.0.2 at time of writing) when the version +# of libmilter included in the tarball changes. +SLOT="0/$(ver_cut 1-3)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="ipv6 poll" + +RDEPEND="!<mail-mta/sendmail-8.16.1" + +# build system patch copied from sendmail ebuild +PATCHES=( + "${FILESDIR}"/sendmail-8.16.1-build-system.patch + "${FILESDIR}"/${PN}-sharedlib.patch +) + +src_prepare() { + default + + local ENVDEF="-DNETUNIX -DNETINET -DHAS_GETHOSTBYNAME2=1" + + use ipv6 && ENVDEF+=" -DNETINET6" + use poll && ENVDEF+=" -DSM_CONF_POLL=1" + + if use elibc_musl; then + use ipv6 && ENVDEF+=" -DNEEDSGETIPNODE" + + eapply "${FILESDIR}"/${PN}-musl-stack-size.patch + eapply "${FILESDIR}"/${PN}-musl-disable-cdefs.patch + fi + + sed -e "s|@@CC@@|$(tc-getCC)|" \ + -e "s|@@CFLAGS@@|${CFLAGS}|" \ + -e "s|@@ENVDEF@@|${ENVDEF}|" \ + -e "s|@@LDFLAGS@@|${LDFLAGS}|" \ + "${FILESDIR}"/gentoo.config.m4 > devtools/Site/site.config.m4 \ + || die "failed to generate site.config.m4" +} + +src_compile() { + emake -j1 -C libmilter AR="$(tc-getAR)" MILTER_SOVER=${PV} +} + +src_install() { + dodir /usr/$(get_libdir) + + local emakeargs=( + DESTDIR="${D}" LIBDIR="/usr/$(get_libdir)" + MANROOT=/usr/share/man/man + SBINOWN=root SBINGRP=0 UBINOWN=root UBINGRP=0 + LIBOWN=root LIBGRP=0 GBINOWN=root GBINGRP=0 + MANOWN=root MANGRP=0 INCOWN=root INCGRP=0 + MSPQOWN=root CFOWN=root CFGRP=0 + MILTER_SOVER="$(ver_cut 1-3)" + ) + emake -C obj.*/libmilter "${emakeargs[@]}" install + + dodoc libmilter/README + + docinto html + dodoc -r libmilter/docs/. + + if [[ ${PV} != $(ver_cut 1-3) ]] ; then + # Move the .so file to the more specific name so it becomes a chain like + # .so -> .so.1.0.2 -> .so.1.0.2_p2, otherwise ldconfig can get confused + # (bug #864563). + # + # See comment above ${SLOT} definition above. + mv "${ED}"/usr/$(get_libdir)/"${PN}.so.$(ver_cut 1-3)" "${ED}"/usr/$(get_libdir)/${PN}.so.${PV} + dosym ${PN}.so.${PV} /usr/$(get_libdir)/${PN}.so.$(ver_cut 1-3) + fi + + find "${ED}" -name '*.a' -delete || die +} diff --git a/mail-filter/libmilter/libmilter-1.0.2_p3-r2.ebuild b/mail-filter/libmilter/libmilter-1.0.2_p3-r2.ebuild new file mode 100644 index 000000000000..52860f138132 --- /dev/null +++ b/mail-filter/libmilter/libmilter-1.0.2_p3-r2.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: please bump this together with mail-mta/sendmail + +inherit toolchain-funcs + +# This library is part of sendmail, but it does not share the version number with it. +# In order to find the right libmilter version number, check SMFI_VERSION definition +# that can be found in ${S}/include/libmilter/mfapi.h (see also SM_LM_VRS_* defines). +# For example, version 1.0.1 has a SMFI_VERSION of 0x01000001. +# +# See check in src_prepare too. +SENDMAIL_VER=8.17.1.9 + +DESCRIPTION="The Sendmail Filter API (Milter)" +HOMEPAGE="https://www.sendmail.org/" +if [[ -n $(ver_cut 4 ${SENDMAIL_VER}) ]] ; then + # Snapshots have an extra version component (e.g. 8.17.1 vs 8.17.1.9) + SRC_URI+="https://ftp.sendmail.org/snapshots/sendmail.${SENDMAIL_VER}.tar.gz + ftp://ftp.sendmail.org/pub/sendmail/snapshots/sendmail.${SENDMAIL_VER}.tar.gz" +else + SRC_URI="https://ftp.sendmail.org/sendmail.${SENDMAIL_VER}.tar.gz + ftp://ftp.sendmail.org/pub/sendmail/sendmail.${SENDMAIL_VER}.tar.gz" +fi + +S="${WORKDIR}/sendmail-${SENDMAIL_VER}" + +LICENSE="Sendmail" +# We increment _pN when a new sendmail tarball comes out and change the actual +# "main version" (1.0.2 at time of writing) when the version +# of libmilter included in the tarball changes. +# We used to use $(ver_cut 1-3) here (assuming ABI stability between sendmail +# versions) but that doesn't seem to apply for sendmail snapshots. +SLOT="0/${PV}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="ipv6 poll" + +RDEPEND="!<mail-mta/sendmail-8.16.1" + +# build system patch copied from sendmail ebuild +PATCHES=( + "${FILESDIR}"/sendmail-8.16.1-build-system.patch + "${FILESDIR}"/${PN}-sharedlib.patch +) + +src_prepare() { + default + + extract_version_from_source() { + # Extract "# define SMFI_VERSION 0x01000002" from include/libmilter/mfapi.h + local actual_libmilter_ver=$(grep -o -E -m 1 "0[xX][0-9a-fA-F]+" include/libmilter/mfapi.h) + + # SM_LM_VRS_MAJOR(v) (((v) & 0x7f000000) >> 24) + local actual_libmilter_ver_major=$(((actual_libmilter_ver & 0x7f000000) >> 24)) + + # SM_LM_VRS_MINOR(v) (((v) & 0x007fff00) >> 8) + local actual_libmilter_ver_minor=$(((actual_libmilter_ver & 0x007fff00) >> 8)) + + # SM_LM_VRS_PLVL(v) ((v) & 0x0000007f) + local actual_libmilter_ver_plvl=$((actual_libmilter_ver & 0x0000007f)) + + einfo "Extracted version (hex): ${actual_libmilter_ver}" + einfo "Extracted version (major): ${actual_libmilter_ver_major}" + einfo "Extracted version (minor): ${actual_libmilter_ver_minor}" + einfo "Extracted version (plvl): ${actual_libmilter_ver_plvl}" + einfo "Extracted version (final): ${actual_libmilter_ver_major}.${actual_libmilter_ver_minor}.${actual_libmilter_ver_plvl}" + + echo ${actual_libmilter_ver_major}.${actual_libmilter_ver_minor}.${actual_libmilter_ver_plvl} + } + + local actual_libmilter_ver_final=$(extract_version_from_source) + if [[ $(ver_cut 1-3) != ${actual_libmilter_ver_final} ]] ; then + eerror "Ebuild version ${PV} does not match detected version ${actual_libmilter_ver_final}!" + eerror "Expected version: $(ver_cut 1-3)" + eerror "Detected version: ${actual_libmilter_ver_final}" + die "Package version ${PV} appears to be incorrect. Please check the source or rename the ebuild." + fi + + local ENVDEF="-DNETUNIX -DNETINET -DHAS_GETHOSTBYNAME2=1" + + use ipv6 && ENVDEF+=" -DNETINET6" + use poll && ENVDEF+=" -DSM_CONF_POLL=1" + + if use elibc_musl; then + use ipv6 && ENVDEF+=" -DNEEDSGETIPNODE" + + eapply "${FILESDIR}"/${PN}-musl-stack-size.patch + eapply "${FILESDIR}"/${PN}-musl-disable-cdefs.patch + fi + + sed -e "s|@@CC@@|$(tc-getCC)|" \ + -e "s|@@CFLAGS@@|${CFLAGS}|" \ + -e "s|@@ENVDEF@@|${ENVDEF}|" \ + -e "s|@@LDFLAGS@@|${LDFLAGS}|" \ + "${FILESDIR}"/gentoo.config.m4 > devtools/Site/site.config.m4 \ + || die "failed to generate site.config.m4" +} + +src_compile() { + emake -j1 -C libmilter AR="$(tc-getAR)" MILTER_SOVER=${PV} +} + +src_install() { + dodir /usr/$(get_libdir) + + local emakeargs=( + DESTDIR="${D}" LIBDIR="/usr/$(get_libdir)" + MANROOT=/usr/share/man/man + SBINOWN=root SBINGRP=0 UBINOWN=root UBINGRP=0 + LIBOWN=root LIBGRP=0 GBINOWN=root GBINGRP=0 + MANOWN=root MANGRP=0 INCOWN=root INCGRP=0 + MSPQOWN=root CFOWN=root CFGRP=0 + MILTER_SOVER="$(ver_cut 1-3)" + ) + emake -C obj.*/libmilter "${emakeargs[@]}" install + + dodoc libmilter/README + + docinto html + dodoc -r libmilter/docs/. + + if [[ ${PV} != $(ver_cut 1-3) ]] ; then + # Move the .so file to the more specific name so it becomes a chain like + # .so -> .so.1.0.2 -> .so.1.0.2_p2, otherwise ldconfig can get confused + # (bug #864563). + # + # See comment above ${SLOT} definition above. + mv "${ED}"/usr/$(get_libdir)/"${PN}.so.$(ver_cut 1-3)" "${ED}"/usr/$(get_libdir)/${PN}.so.${PV} + dosym ${PN}.so.${PV} /usr/$(get_libdir)/${PN}.so.$(ver_cut 1-3) + fi + + find "${ED}" -name '*.a' -delete || die +} |