commit: 5c0f49b23382ef81e9ea64f0dfa9d2ef69eb9378 Author: Eray Aslan <eras <AT> gentoo <DOT> org> AuthorDate: Mon Aug 11 20:08:47 2025 +0000 Commit: Eray Aslan <eras <AT> gentoo <DOT> org> CommitDate: Mon Aug 11 20:24:33 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5c0f49b2
net-mail/mailutils: Build uidnew only when DBM is enabled The uidnew sieve extension was unconditionally built and linked against libmu_dbm, even when DBM support was explicitly disabled. Build the uidnew extension only when DBM support is enabled Closes: https://bugs.gentoo.org/960958 Signed-off-by: Eray Aslan <eras <AT> gentoo.org> .../files/mailutils-3.20-fix-dbm-dependency.patch | 30 ++++ net-mail/mailutils/mailutils-3.20-r1.ebuild | 163 +++++++++++++++++++++ 2 files changed, 193 insertions(+) diff --git a/net-mail/mailutils/files/mailutils-3.20-fix-dbm-dependency.patch b/net-mail/mailutils/files/mailutils-3.20-fix-dbm-dependency.patch new file mode 100644 index 000000000000..256193ebdf08 --- /dev/null +++ b/net-mail/mailutils/files/mailutils-3.20-fix-dbm-dependency.patch @@ -0,0 +1,30 @@ +--- a/libmu_sieve/extensions/Makefile.am 2025-08-11 16:25:13.850209754 +0200 ++++ b/libmu_sieve/extensions/Makefile.am 2025-08-11 16:35:28.312393817 +0200 +@@ -15,17 +15,23 @@ + ## along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>. + + moddir=$(MU_SIEVE_MODDIR) +-mod_LTLIBRARIES = \ ++ ++BASE_MODULES = \ + editheader.la\ + list.la\ + moderator.la\ + pipe.la\ + spamd.la\ + timestamp.la\ +- uidnew.la\ + vacation.la ++ ++if MU_COND_DBM ++DBM_MODULES = uidnew.la ++uidnew_la_LIBADD = ${top_builddir}/libmu_dbm/libmu_dbm.la ++endif ++ ++mod_LTLIBRARIES = $(BASE_MODULES) $(DBM_MODULES) ++ + AM_CPPFLAGS = $(MU_APP_COMMON_INCLUDES) + AM_LDFLAGS = -module -avoid-version -no-undefined -rpath '$(moddir)' + LIBS = ../libmu_sieve.la +- +-uidnew_la_LIBADD = ${top_builddir}/libmu_dbm/libmu_dbm.la diff --git a/net-mail/mailutils/mailutils-3.20-r1.ebuild b/net-mail/mailutils/mailutils-3.20-r1.ebuild new file mode 100644 index 000000000000..8bb77a491129 --- /dev/null +++ b/net-mail/mailutils/mailutils-3.20-r1.ebuild @@ -0,0 +1,163 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) +PYTHON_COMPAT=( python3_{12..14} ) + +inherit autotools elisp-common flag-o-matic guile-single python-single-r1 toolchain-funcs + +DESCRIPTION="A useful collection of mail servers, clients, and filters" +HOMEPAGE="https://mailutils.org/" +SRC_URI="mirror://gnu/mailutils/${P}.tar.xz" + +LICENSE="GPL-3+ LGPL-3+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos" +IUSE="berkdb bidi +clients emacs gdbm sasl guile kerberos kyotocabinet \ + ldap mysql nls pam postgres python servers split-usr ssl static-libs test +threads tcpd \ + tokyocabinet" +RESTRICT="!test? ( test )" + +RDEPEND=" + !mail-filter/libsieve + !mail-client/mailx + sys-libs/ncurses:= + sys-libs/readline:= + dev-libs/libltdl:0 + virtual/libcrypt:= + virtual/mta + berkdb? ( sys-libs/db:= ) + bidi? ( dev-libs/fribidi ) + emacs? ( >=app-editors/emacs-23.1:* ) + gdbm? ( sys-libs/gdbm:= ) + guile? ( ${GUILE_DEPS} ) + kerberos? ( virtual/krb5 ) + kyotocabinet? ( dev-db/kyotocabinet ) + ldap? ( net-nds/openldap:= ) + mysql? ( dev-db/mysql-connector-c:= ) + nls? ( sys-devel/gettext ) + pam? ( sys-libs/pam:= ) + postgres? ( dev-db/postgresql:= ) + python? ( ${PYTHON_DEPS} ) + sasl? ( >=net-misc/gsasl-2.0.0 ) + servers? ( virtual/libiconv dev-libs/libunistring:= ) + ssl? ( net-libs/gnutls:= ) + tcpd? ( sys-apps/tcp-wrappers ) + tokyocabinet? ( dev-db/tokyocabinet ) + " + +DEPEND="${RDEPEND}" + +BDEPEND=" + virtual/pkgconfig + test? ( dev-util/dejagnu ) +" + +REQUIRED_USE=" + guile? ( ${GUILE_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) + servers? ( tcpd ldap )" + +DOCS=( ABOUT-NLS AUTHORS COPYING COPYING.LESSER ChangeLog INSTALL NEWS README THANKS TODO ) +PATCHES=( + "${FILESDIR}"/${PN}-3.5-add-include.patch + "${FILESDIR}"/${PN}-3.20-fix-dbm-dependency.patch +) + +pkg_setup() { + use guile && guile-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + if use guile; then + guile_bump_sources + sed -i -e "s|guile|${GUILE}|" libmu_scm/tests/testsuite || die + fi + if use mysql; then + sed -i -e /^INCLUDES/"s:$:$(mysql_config --include):" \ + sql/Makefile.am || die + fi + eautoreconf +} + +src_configure() { + # bug #943873 + append-cflags -std=gnu17 + + if use guile; then + export GUILE_SNARF="${GUILESNARF}" + export GUILE_TOOLS="${GUILE/guile/guile-tools}" + fi + + # maildir is the Gentoo default + econf \ + MU_DEFAULT_SCHEME=maildir \ + CURSES_LIBS="$($(tc-getPKG_CONFIG) --libs ncurses)" \ + $(use_with berkdb berkeley-db) \ + $(use_with bidi fribidi) \ + $(use_with gdbm) \ + $(use_with sasl gsasl) \ + $(use_with guile) \ + $(use_with kerberos gssapi) \ + $(use_with ldap) \ + $(use_with mysql) \ + $(use_enable nls) \ + $(use_enable pam) \ + $(use_with postgres) \ + $(use_enable python) \ + $(use_with ssl gnutls) \ + $(use_enable static-libs static) \ + $(use_enable threads pthread) \ + $(use_with tokyocabinet) \ + $(use_with kyotocabinet) \ + $(use_with tcpd tcp-wrappers) \ + $(use_enable servers build-servers) \ + $(use_with servers unistring ) \ + $(use_enable clients build-clients) \ + EMACS=$(usex emacs emacs no) \ + --with-lispdir="${EPREFIX}${SITELISP}/${PN}" \ + --with-mail-spool=/var/spool/mail \ + --with-readline \ + --enable-ipv6 \ + --enable-sendmail \ + --disable-debug +} + +src_install() { + default + + insinto /etc + # bug 613112 + newins "${FILESDIR}/mailutils.rc" mailutils.conf + keepdir /etc/mailutils.d/ + insinto /etc/mailutils.d + doins "${FILESDIR}/mail" + + use guile && guile_unstrip_ccache + + if use python; then + python_optimize + if use static-libs; then + rm -r "${D}$(python_get_sitedir)/mailutils"/*.{a,la} || die + fi + fi + + if use servers; then + newinitd "${FILESDIR}"/imap4d.initd imap4d + newinitd "${FILESDIR}"/pop3d.initd pop3d + newinitd "${FILESDIR}"/comsatd.initd comsatd + fi + + # compatibility link + if use clients && use split-usr; then + dosym ../usr/bin/mail /bin/mail + fi + + if ! use static-libs; then + find "${D}" -name "*.la" -delete || die + fi +}
