commit:     b2458332b5628cff1a0a5eda3b9ee41b22bd2dec
Author:     Alfredo Tupone <tupone <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 26 19:18:09 2024 +0000
Commit:     Alfredo Tupone <tupone <AT> gentoo <DOT> org>
CommitDate: Fri Jul 26 19:18:51 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2458332

mail-filter/maildrop: add 3.1.7

Signed-off-by: Alfredo Tupone <tupone <AT> gentoo.org>

 mail-filter/maildrop/Manifest                      |   1 +
 .../maildrop/files/maildrop-3.1.7-testsuite.patch  |  68 ++++++++++
 .../maildrop/files/maildrop-3.1.7-valgrind.patch   |  31 +++++
 mail-filter/maildrop/maildrop-3.1.7.ebuild         | 151 +++++++++++++++++++++
 4 files changed, 251 insertions(+)

diff --git a/mail-filter/maildrop/Manifest b/mail-filter/maildrop/Manifest
index 5951b1492bb5..f956e56f745f 100644
--- a/mail-filter/maildrop/Manifest
+++ b/mail-filter/maildrop/Manifest
@@ -2,3 +2,4 @@ DIST maildrop-3.0.2.tar.bz2 2129406 BLAKE2B 
10572c9c0fcb7a31f10fdfb005562afd425d
 DIST maildrop-3.1.4.tar.bz2 2156148 BLAKE2B 
e7de4e30ee23d8d2f88de7b0398a41c84af6d34207e9f26fd7b22e7ac1b5171c309c6304b312a75e621bc860e5a2d3f59613e47ff5a73ae6412761179f787f53
 SHA512 
b8f373e142c61ba9cdf32fd939aa7fc5c24ec873f734be048e94561e35977b6fb663ff4a1c35fc22dc7dc2075e04e4c4a09e37c0e7c7c0dd96555fcda9c7fd26
 DIST maildrop-3.1.5.tar.bz2 2156334 BLAKE2B 
374c0436a0e5954171bf942d824123d610057269739f5f76f4353b75065a964fe92d95a80209a07187d3ebcfe59a6d92d54c71fa52325fc4968e10c1b8eeaada
 SHA512 
f722cbdf9aeb628ff68dcd280de5d7d37a3fae3692b7de5483cf0563631ff9b2eba9ef9baf3b3e3f6108d40e19b55dabddacaa3a064e6b71210b18f200bc67b7
 DIST maildrop-3.1.6.tar.bz2 2156136 BLAKE2B 
fddb718e81d66a393f3bce720edb73c3638c255504d90f7613c05910a3a96ca2ad9ab350167096a2677d51770d26799f8bd89f287dda464163f82c5da8d8b28a
 SHA512 
93364747c603d1d566f756e7ba8b10fd38d10749b269f1bf64596a56fe2b06f529f4b59b6256a5be0c44169f2c8cc9dcd7de91b3cc03288719ffee5db330b1d5
+DIST maildrop-3.1.7.tar.bz2 2156082 BLAKE2B 
734380f8b76882a7b9c04203e971c72544eba6fc0b0a74ed4f48f5c3c1b5c2f2817fa8eff7268c934b840471a554ffe9ce159fc9c232a3c9b717f956c8862474
 SHA512 
972f3891d6f1daca97971d6cc3e09e4f78ce7bf8bb4520ed2836b8d7d9394546d403a0dd709e6b2e34706f67aae2563523bbc0953a9971cc2107fc0838fa095e

diff --git a/mail-filter/maildrop/files/maildrop-3.1.7-testsuite.patch 
b/mail-filter/maildrop/files/maildrop-3.1.7-testsuite.patch
new file mode 100644
index 000000000000..5f6b6605ecd5
--- /dev/null
+++ b/mail-filter/maildrop/files/maildrop-3.1.7-testsuite.patch
@@ -0,0 +1,68 @@
+Force en_US locale for certain tests.
+
+--- maildrop-3.0.0/libs/maildrop/Makefile.am
++++ maildrop-3.0.0/libs/maildrop/Makefile.am
+@@ -71,12 +71,14 @@
+       maildrop.lsm testsuite.txt.idn testsuite2
+ 
+ check-am: 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
+       VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; @SHELL@ 
$(srcdir)/testsuite2
++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
+@@ -201,6 +201,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
+--- maildrop-3.0.0/libs/rfc2045/Makefile.am
++++ maildrop-3.0.0/libs/rfc2045/Makefile.am
+@@ -84,7 +84,10 @@
+ endif
+ 
+ check-am:
++if HAS_EN_US
+       @SHELL@ $(srcdir)/testsuite | cmp -s - $(srcdir)/$(TESTSUITE)
+       @SHELL@ $(srcdir)/testsuitemm | cmp -s - $(srcdir)/testsuitemm.txt
+       @SHELL@ $(srcdir)/testrfc3676parsersuite | diff -U 3 
$(srcdir)/testrfc3676parsersuite.txt -
+       ./testrfc6533parser
++endif
++
+--- maildrop-3.0.0/libs/rfc2045/configure.ac
++++ maildrop-3.0.0/libs/rfc2045/configure.ac
+@@ -62,6 +62,15 @@
+ AC_CHECK_FUNC(strncasecmp,,CFLAGS="$CFLAGS -Dstrncasecmp=strnicmp")
+ AC_CHECK_FUNC(strcasecmp,,CFLAGS="$CFLAGS -Dstrcasecmp=stricmp")
+ 
++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.1.7-valgrind.patch 
b/mail-filter/maildrop/files/maildrop-3.1.7-valgrind.patch
new file mode 100644
index 000000000000..d0056625576c
--- /dev/null
+++ b/mail-filter/maildrop/files/maildrop-3.1.7-valgrind.patch
@@ -0,0 +1,31 @@
+--- a/libs/maildrop/Makefile.am        2024-02-18 06:43:15.291095955 +0100
++++ b/libs/maildrop/Makefile.am        2024-02-18 06:43:37.317830695 +0100
+@@ -77,7 +77,7 @@
+               sed '/^Message envelope sender/d' <testsuite.diff | \
+               diff -U 3 - $(srcdir)/testsuite.txt.idn || exit 1; \
+               rm -f testsuite.diff
+-      VALGRIND="`which valgrind 2>/dev/null`"; export VALGRIND; @SHELL@ 
$(srcdir)/testsuite2
++      VALGRIND=""; export VALGRIND; @SHELL@ $(srcdir)/testsuite2
+ endif
+ 
+ noinst_DATA=maildrop.html maildrop.1 maildropfilter.html maildropfilter.7 \
+--- 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.7.ebuild 
b/mail-filter/maildrop/maildrop-3.1.7.ebuild
new file mode 100644
index 000000000000..644f2d25aaf5
--- /dev/null
+++ b/mail-filter/maildrop/maildrop-3.1.7.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2024 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 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="berkdb debug dovecot gdbm ldap mysql postgres static-libs authlib +tools 
trashquota"
+
+CDEPEND="!mail-mta/courier
+       net-mail/mailbase
+       dev-libs/libpcre2
+       net-dns/libidn2:=
+       net-libs/courier-unicode:=
+       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:= )
+       )
+       gdbm? ( net-mail/courier-imap[gdbm?,berkdb?] )
+       berkdb? ( net-mail/courier-imap[gdbm?,berkdb?] )
+       tools? (
+               !mail-mta/netqmail
+               !<net-mail/courier-imap-5.2.6
+               net-mail/courier-common
+       )"
+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
+}

Reply via email to