diff options
| -rw-r--r-- | mail-filter/maildrop/Manifest | 1 | ||||
| -rw-r--r-- | mail-filter/maildrop/files/maildrop-3.2.1-testsuite.patch | 97 | ||||
| -rw-r--r-- | mail-filter/maildrop/files/maildrop-3.2.1-valgrind.patch | 20 | ||||
| -rw-r--r-- | mail-filter/maildrop/maildrop-3.1.6-r3.ebuild (renamed from mail-filter/maildrop/maildrop-3.1.6-r2.ebuild) | 2 | ||||
| -rw-r--r-- | mail-filter/maildrop/maildrop-3.1.8-r1.ebuild (renamed from mail-filter/maildrop/maildrop-3.1.8.ebuild) | 2 | ||||
| -rw-r--r-- | mail-filter/maildrop/maildrop-3.2.1.ebuild | 151 |
6 files changed, 271 insertions, 2 deletions
diff --git a/mail-filter/maildrop/Manifest b/mail-filter/maildrop/Manifest index 5edf893fd101..a92ff88266e1 100644 --- a/mail-filter/maildrop/Manifest +++ b/mail-filter/maildrop/Manifest @@ -1,2 +1,3 @@ DIST maildrop-3.1.6.tar.bz2 2156136 BLAKE2B fddb718e81d66a393f3bce720edb73c3638c255504d90f7613c05910a3a96ca2ad9ab350167096a2677d51770d26799f8bd89f287dda464163f82c5da8d8b28a SHA512 93364747c603d1d566f756e7ba8b10fd38d10749b269f1bf64596a56fe2b06f529f4b59b6256a5be0c44169f2c8cc9dcd7de91b3cc03288719ffee5db330b1d5 DIST maildrop-3.1.8.tar.bz2 2156016 BLAKE2B 640a5dc17f0cc238f8260acf8188bd625501bccda7a23e9c154fedece8ee42087106e27cafee5fbbaa7c09560d796e68548c6d2826e6fe4c9e1b330f2b971511 SHA512 0ee8e36cc5464cbbbef60721da19de7a12b9aa4737e40039c421ee14494c53f87146d50d1b8ae64186d8330121d54a62092435cadb51c3dede31658ff5104eb8 +DIST maildrop-3.2.1.tar.bz2 2392200 BLAKE2B 5f61a7ba2e2abc0b059770a9ae2111b070978a3b70301c4a6a5ca8382b664aa28e88bce03abd054542c90592a449b3dea88f8c60bef4b0a6f445039ff57d713e SHA512 3a7bdeaf1feb0b8d5c70a08ab6de4634ab4b819659c28e7c782ef00d5e61d43ce6b42176065a09e0da2ebbc68e084dd46bfa48fe1c0ac0cada3ff3adc5fd2d37 diff --git a/mail-filter/maildrop/files/maildrop-3.2.1-testsuite.patch b/mail-filter/maildrop/files/maildrop-3.2.1-testsuite.patch new file mode 100644 index 000000000000..14720e44b78e --- /dev/null +++ b/mail-filter/maildrop/files/maildrop-3.2.1-testsuite.patch @@ -0,0 +1,97 @@ +Force en_US locale for certain tests. + +--- a/libs/maildrop/Makefile.am ++++ b/libs/maildrop/Makefile.am +@@ -82,17 +82,22 @@ + $(MAKE) run-testsuite-mailbot-old + + run-testsuite: testsuite ++if HAS_EN_US + VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; \ + @SHELL@ ./testsuite >testsuite.diff || exit 1; \ + sed '/^Message envelope sender/d' <testsuite.diff | \ + diff -U 3 $(srcdir)/testsuite.txt.idn - || exit 1; \ + rm -f testsuite.diff ++endif + + run-testsuite2: ++if HAS_EN_US +- VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; \ ++ VALGRIND=""; export VALGRIND; \ + @SHELL@ $(srcdir)/testsuite2 ++endif + + run-testsuite-mailbot: testsuite.mailbot ++if HAS_EN_US + VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; \ + VALGRIND_EXTRA_OPTS="--leak-check=full"; \ + export VALGRIND_EXTRA_OPTS; \ +@@ -101,14 +106,17 @@ + @SHELL@ $(srcdir)/testsuite.mailbot >testsuite.diff + diff -U 3 $(srcdir)/testsuite.mailbot.txt testsuite.diff + rm -f mailbot.tst testsuite.diff ++endif + + run-testsuite-mailbot-old: testsuite.mailbot ++if HAS_EN_US + VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; \ + rm -f ./mailbot.tst; \ + ln -s mailbot-old mailbot.tst; \ + @SHELL@ $(srcdir)/testsuite.mailbot >testsuite.diff + diff -U 3 $(srcdir)/testsuite.mailbot.txt testsuite.diff + rm -f mailbot.tst testsuite.diff ++endif + + noinst_DATA=maildrop.html maildrop.1 maildropfilter.html maildropfilter.7 \ + maildropgdbm.html maildropgdbm.7 +--- maildrop-3.0.0/libs/maildrop/configure.ac ++++ maildrop-3.0.0/libs/maildrop/configure.ac +@@ -202,6 +202,15 @@ + AC_DEFINE_UNQUOTED(MAXLONGSIZE, $MAXLONGSIZE, + [ Maximum character size of a long ]) + ++dnl check for en_US locale ++check_en_US() { ++ locale -a | grep en_US.utf8 > /dev/null ++ return $? ++} ++AC_MSG_CHECKING([for en_US.utf8]) ++AM_CONDITIONAL([HAS_EN_US], [check_en_US]) ++AM_COND_IF([HAS_EN_US],[AC_MSG_RESULT([yes])],[AC_MSG_RESULT([not found])]) ++ + dnl Checks for library functions. + + AC_FUNC_CLOSEDIR_VOID +--- a/libs/rfc2045/Makefile.am ++++ b/libs/rfc2045/Makefile.am +@@ -97,6 +97,7 @@ + endif + + check-am: ++if HAS_EN_US + @SHELL@ $(srcdir)/testsuite | diff -U 3 $(srcdir)/testsuite.txt.idn - + @SHELL@ $(srcdir)/testsuitemm | diff -U 3 $(srcdir)/testsuitemm.txt - + @SHELL@ $(srcdir)/testrfc3676parsersuite | diff -U 3 $(srcdir)/testrfc3676parsersuite.txt - +@@ -107,3 +108,4 @@ + valgrind --tool=memcheck --leak-check=yes --error-exitcode=1 ./testrfc6533parser ; \ + valgrind --tool=memcheck --leak-check=yes --error-exitcode=1 ./testsuitecpp ; \ + valgrind --tool=memcheck --leak-check=yes --error-exitcode=1 ./testsuitecpp2 ++endif +--- maildrop-3.0.0/libs/rfc2045/configure.ac ++++ maildrop-3.0.0/libs/rfc2045/configure.ac +@@ -60,6 +60,15 @@ + dnl Checks for library functions. + AC_CHECK_FUNCS(setlocale) + ++dnl check for en_US locale ++check_en_US() { ++ locale -a | grep en_US.utf8 > /dev/null ++ return $? ++} ++AC_MSG_CHECKING([for en_US.utf8]) ++AM_CONDITIONAL([HAS_EN_US], [check_en_US]) ++AM_COND_IF([HAS_EN_US],[AC_MSG_RESULT([yes])],[AC_MSG_RESULT([not found])]) ++ + AC_ARG_WITH(package, [], package="$withval", + [ + package="$PACKAGE" diff --git a/mail-filter/maildrop/files/maildrop-3.2.1-valgrind.patch b/mail-filter/maildrop/files/maildrop-3.2.1-valgrind.patch new file mode 100644 index 000000000000..dece426901bc --- /dev/null +++ b/mail-filter/maildrop/files/maildrop-3.2.1-valgrind.patch @@ -0,0 +1,20 @@ +--- a/libs/maildir/Makefile.am 2024-02-18 06:48:31.305134721 +0100 ++++ b/libs/maildir/Makefile.am 2024-02-18 06:49:56.223057434 +0100 +@@ -152,17 +152,11 @@ + test "@PCRE_LDFLAGS@" != "" || exit 0 ; @SHELL@ $(srcdir)/testsuite2 2>&1 | cmp - $(srcdir)/testsuite2.txt + LC_ALL=C; export LC_ALL; ./maildirkwtest | cmp -s - $(srcdir)/maildirkwtest.txt + LC_ALL=C; export LC_ALL; ./maildiraclttest +- VALGRIND="`which valgrind 2>/dev/null`"; test "$$VALGRIND" != "" || exit 0; \ +- LC_ALL=C; export LC_ALL; valgrind --tool=memcheck --leak-check=yes --error-exitcode=1 ./maildiraclttest +- VALGRIND="`which valgrind 2>/dev/null`"; test "$$VALGRIND" != "" || exit 0; \ +- LC_ALL=C; export LC_ALL; valgrind --tool=memcheck --leak-check=yes --error-exitcode=1 ./maildirkwtest + ./testmaildirsearch iso-8859-1 needle haystack; test $$? = 2 && exit 0; exit 1 + ./testmaildirsearch iso-8859-1 nEEdle needlE + ./testmaildirsearch iso-8859-1 "abra cadAbra" "abra cadabra" + ./testmaildirsearch iso-8859-1 " abra cadAbra " " abra cadabra" + ./testmaildirsearch iso-8859-1 " abra cadAbra " " abra cadabra " +- VALGRIND="`which valgrind 2>/dev/null`"; test "$$VALGRIND" != "" || exit 0; \ +- LC_ALL=C; export LC_ALL; export VALGRIND="@SHELL@ $(srcdir)/testsuitevalgrind"; rm -f confmdtesterror; @SHELL@ $(srcdir)/testsuite 2>&1 | tee testsuite.out; test ! -f confmdtesterror + rm -rf testsuite.out + + if HAVE_SGML diff --git a/mail-filter/maildrop/maildrop-3.1.6-r2.ebuild b/mail-filter/maildrop/maildrop-3.1.6-r3.ebuild index c1a3f725a7e5..5893ce6f0eb8 100644 --- a/mail-filter/maildrop/maildrop-3.1.6-r2.ebuild +++ b/mail-filter/maildrop/maildrop-3.1.6-r3.ebuild @@ -21,7 +21,7 @@ CDEPEND="!mail-mta/courier net-mail/mailbase dev-libs/libpcre2 net-dns/libidn2:= - net-libs/courier-unicode:= + <net-libs/courier-unicode-2.4:= gdbm? ( sys-libs/gdbm:= ) mysql? ( net-libs/courier-authlib ) postgres? ( net-libs/courier-authlib ) diff --git a/mail-filter/maildrop/maildrop-3.1.8.ebuild b/mail-filter/maildrop/maildrop-3.1.8-r1.ebuild index 3b245ae088cc..3a75ede4b526 100644 --- a/mail-filter/maildrop/maildrop-3.1.8.ebuild +++ b/mail-filter/maildrop/maildrop-3.1.8-r1.ebuild @@ -23,7 +23,7 @@ CDEPEND="!mail-mta/courier net-mail/mailbase dev-libs/libpcre2 net-dns/libidn2:= - net-libs/courier-unicode:= + <net-libs/courier-unicode-2.4:= gdbm? ( sys-libs/gdbm:= ) mysql? ( net-libs/courier-authlib ) postgres? ( net-libs/courier-authlib ) diff --git a/mail-filter/maildrop/maildrop-3.2.1.ebuild b/mail-filter/maildrop/maildrop-3.2.1.ebuild new file mode 100644 index 000000000000..9c57adcd9700 --- /dev/null +++ b/mail-filter/maildrop/maildrop-3.2.1.ebuild @@ -0,0 +1,151 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit flag-o-matic autotools + +DESCRIPTION="Mail delivery agent/filter" +[[ -z ${PV/?.?/} ]] && SRC_URI="https://downloads.sourceforge.net/courier/${P}.tar.bz2" +[[ -z ${PV/?.?.?/} ]] && SRC_URI="https://downloads.sourceforge.net/courier/${P}.tar.bz2" +[[ -z ${SRC_URI} ]] && SRC_URI="https://www.courier-mta.org/beta/${PN}/${P%%_pre}.tar.bz2" +HOMEPAGE="https://www.courier-mta.org/maildrop/" + +S=${WORKDIR}/${P%%_pre} + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="berkdb debug dovecot gdbm ldap mysql postgres static-libs authlib +tools trashquota" + +RESTRICT="test" # No more working + +CDEPEND="!mail-mta/courier + net-mail/mailbase + dev-libs/libpcre2 + net-dns/libidn2:= + >=net-libs/courier-unicode-2.4.0:= + gdbm? ( sys-libs/gdbm:= ) + mysql? ( net-libs/courier-authlib ) + postgres? ( net-libs/courier-authlib ) + ldap? ( net-libs/courier-authlib ) + authlib? ( net-libs/courier-authlib ) + !gdbm? ( + berkdb? ( sys-libs/db:= ) + ) + tools? ( + !mail-mta/netqmail + !<net-mail/courier-imap-5.2.6 + net-mail/courier-common[gdbm?,berkdb?] + )" +DEPEND="${CDEPEND}" +RDEPEND="${CDEPEND} + dev-lang/perl + dovecot? ( net-mail/dovecot )" +BDEPEND="virtual/pkgconfig" + +REQUIRED_USE=" + mysql? ( authlib ) + postgres? ( authlib ) + ldap? ( authlib )" + +PATCHES=( + "${FILESDIR}"/${P}-testsuite.patch + "${FILESDIR}"/${P}-valgrind.patch + "${FILESDIR}"/${PN}-3.1.6-test.patch +) + +src_prepare() { + # Prefer gdbm over berkdb + if use gdbm ; then + use berkdb && elog "Both gdbm and berkdb selected. Using gdbm." + fi + + # no need to error out if no default - it will be given to econf anyway + sed -i -e \ + 's~AC_MSG_ERROR(Cannot determine default mailbox)~SPOOLDIR="./.maildir"~' \ + "${S}"/libs/maildrop/configure.ac || die "sed failed" + + default + eautoreconf +} + +src_configure() { + local myeconfargs=( + --with-devel + --disable-tempdir + --enable-syslog=1 + --enable-use-flock=1 + --enable-use-dotlock=1 + --enable-restrict-trusted=1 + --enable-maildrop-uid=root + --enable-maildrop-gid=mail + --enable-sendmail=/usr/sbin/sendmail + --cache-file="${S}"/configuring.cache + $(use_enable static-libs static) + $(use_enable dovecot dovecotauth) + $(use_with trashquota) + ) + + local mytrustedusers="apache dspam root mail fetchmail" + mytrustedusers+=" daemon postmaster qmaild mmdf vmail alias" + myeconfargs+=( --enable-trusted-users="${mytrustedusers}" ) + + # These flags make maildrop cry + replace-flags -Os -O2 + filter-flags -fomit-frame-pointer + + if use gdbm ; then + myeconfargs+=( --with-db=gdbm ) + elif use berkdb ; then + myeconfargs+=( --with-db=db ) + else + myeconfargs+=( --without-db ) + fi + + if ! use mysql && ! use postgres && ! use ldap && ! use authlib ; then + myeconfargs+=( --disable-authlib ) + fi + + # default mailbox is $HOME/.maildir for Gentoo + maildrop_cv_SYS_INSTALL_MBOXDIR="./.maildir" econf "${myeconfargs[@]}" +} + +src_install() { + default + + if use authlib ; then + fperms 4755 /usr/bin/maildrop + fi + + # Moved to courier-common + rm "${D}"/usr/bin/deliverquota || die + rm "${D}"/usr/bin/maildirkw || die + if use gdbm; then + rm "${D}"/usr/bin/makedat || die + rm "${D}"/usr/bin/makedatprog || die + fi + rm "${D}"/usr/share/man/man1/maildirkw.1 || die + rm "${D}"/usr/share/man/man1/makedat.1 || die + rm "${D}"/usr/share/man/man8/deliverquota.8 || die + + dodoc AUTHORS ChangeLog INSTALL NEWS README \ + README.postfix README.dovecotauth UPGRADE \ + maildroptips.txt + docinto maildir + dodoc libs/maildir/AUTHORS libs/maildir/INSTALL \ + libs/maildir/README*.txt libs/maildir/*.html + + # bugs 61116, 639124 + if ! use tools ; then + for tool in "maildirmake" "maildirwatch"; do + rm "${D}/usr/bin/${tool}" || die + rm "${D}/usr/share/man/man"[0-9]"/${tool}."[0-9] || die + done + rm "${D}/usr/share/man/man5/maildir.5" || die + fi + + insinto /etc + doins "${FILESDIR}"/maildroprc + + use static-libs || find "${D}"/usr/lib* -name '*.la' -delete +} |
