From: Johannes Thyssen Tishman Subject: Re: [update] mail/mlmmj 1.4.5 -> 2.1.0 To: Stefan Sperling Cc: ports@openbsd.org Date: Thu, 27 Aug 2026 11:16:33 +0000 2026-08-27T12:37:12+0200 Stefan Sperling : > On Thu, Aug 27, 2026 at 09:36:14AM +0000, Johannes Thyssen Tishman wrote: > > Please find below an update for mail/mlmmj to version 2.1.0. > > > > Changelog: https://codeberg.org/mlmmj/mlmmj/src/branch/master/ChangeLog > > > > Notes about this update: > > 1. Enabled tests: 208/261 passed (53 failed) > > The tests that fail are due to a system call used by kyua that's not > > implemented on OpenBSD. > > See https://codeberg.org/mlmmj/mlmmj/issues/113 > > The lchmod call mentioned by bapt in this issue discussion was never present > in kyua in our ports tree. lchmod was patched out during the initial import > of devel/kyua-testers. So this syscall cannot be the reason for the test > failures shown in your test log. Maybe bapt saw lchmod failures after > building kyua on OpenBSD without our ports tree patches? Thanks for pointing this out. Without the fs_test.c patch, kyua-testers doesn't build on OpenBSD: ld: error: undefined symbol: lchmod >>> referenced by fs_test.c >>> fs_test-fs_test.o:(lchmod_fails) So my guess is that fs_test.c was patched such that the port would compile, but lchmod wasn't patched out completely. The error bapt mentions in the issue comes from fs.c:261 (try_unprotect_symlink()), which is thrown because HAVE_WORKING_LCHMOD isn't defined. This can be seen in the configure logs: checking for a working lchmod... no I suppose we could use a stub with fchmodat()? > Since the tests seem to be reporting a successful result before exiting > with exit code 127, it may well be that C++ destructors used by test > suite code are running into issues, such as use-after-frees or wrong > locking of pthread mutexes, preventing clean program exit. > > In any case, we can assume these problems are specific to kyua, not mlmmj. > So this isn't a blocking issue for updating mlmmj. > > ok stsp@ > > > Index: Makefile > > =================================================================== > > RCS file: /cvs/ports/mail/mlmmj/Makefile,v > > diff -u -p -r1.28 Makefile > > --- Makefile 22 May 2024 22:29:29 -0000 1.28 > > +++ Makefile 27 Aug 2026 09:29:30 -0000 > > @@ -1,6 +1,6 @@ > > COMMENT= mailing list manager > > > > -V= 1.4.5 > > +V= 2.1.0 > > > > DISTNAME= mlmmj-${V} > > > > @@ -18,24 +18,35 @@ WANTLIB += c iconv > > > > SITES= https://codeberg.org/mlmmj/mlmmj/releases/download/RELEASE_${V:S/./_/g}/ > > > > -BUILD_DEPENDS= devel/kyua-cli > > +BUILD_DEPENDS= devel/kyua-cli \ > > + devel/atf > > > > LIB_DEPENDS= converters/libiconv > > > > +# Some tests fail due to a system call used by kyua that's not implemented on > > +# OpenBSD. See https://codeberg.org/mlmmj/mlmmj/issues/113 > > +TEST_DEPENDS= ${BUILD_DEPENDS} > > + > > CONFIGURE_STYLE=gnu > > -CONFIGURE_ARGS+=--enable-receive-strip=yes > > +CONFIGURE_ARGS+=--enable-receive-strip=yes \ > > + --enable-tests > > + > > +CONFIGURE_ENV= TMPDIR="${WRKBUILD}" > > + > > +# make sure ${WRKSRC}/include/unistr.h is included before > > +# ${LOCALBASE}include/unistr.h from libunistring > > +CFLAGS+= -I${WRKSRC}/include -I${LOCALBASE}/include > > +LDFLAGS+= -L${LOCALBASE}/lib -liconv > > +MAKE_ENV+= LDFLAGS="${LDFLAGS}" > > > > -# make sure ${WRKSRC}/include/unistr.h is included instead of > > -# /usr/local/include/unistr.h from libunistring > > -CONFIGURE_ENV= CPPFLAGS="-I${WRKSRC}/include -I${LOCALBASE}/include" \ > > - LDFLAGS="-L${LOCALBASE}/lib -liconv" > > +PORTHOME= ${WRKBUILD} > > > > -DOCS= README* TUNABLES > > +DOCS= README* TUNABLES.md FAQ > > > > post-install: > > ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/mlmmj > > cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${PREFIX}/share/doc/mlmmj > > cd ${WRKSRC} && ${INSTALL_DATA} contrib/receivestrip/README \ > > - ${PREFIX}/share/doc/mlmmj/README.receive-strip > > + ${PREFIX}/share/doc/mlmmj/README.receive-strip.md > > > > .include > > Index: distinfo > > =================================================================== > > RCS file: /cvs/ports/mail/mlmmj/distinfo,v > > diff -u -p -r1.13 distinfo > > --- distinfo 3 May 2024 13:57:20 -0000 1.13 > > +++ distinfo 27 Aug 2026 09:29:30 -0000 > > @@ -1,2 +1,2 @@ > > -SHA256 (mlmmj-1.4.5.tar.gz) = UluUL2mGZmdubon/3KbdvDBlSsNp3ux/z27RBVyH6Aw= > > -SIZE (mlmmj-1.4.5.tar.gz) = 465064 > > +SHA256 (mlmmj-2.1.0.tar.gz) = LQRHeLT4MSCgf0bcscSZPEPoBtMT9d6N8+7niogrCSU= > > +SIZE (mlmmj-2.1.0.tar.gz) = 274780 > > Index: patches/patch-Makefile_in > > =================================================================== > > RCS file: patches/patch-Makefile_in > > diff -N patches/patch-Makefile_in > > --- patches/patch-Makefile_in 3 May 2024 14:01:02 -0000 1.1 > > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > > @@ -1,12 +0,0 @@ > > -Index: Makefile.in > > ---- Makefile.in.orig > > -+++ Makefile.in > > -@@ -420,7 +420,7 @@ SUBDIRS = src listtexts contrib > > - > > - @WANT_TESTS_TRUE@tests_mlmmj_LDADD = \ > > - @WANT_TESTS_TRUE@ $(top_builddir)/src/libmlmmj.a \ > > --@WANT_TESTS_TRUE@ @ATF_LIBS@ -lrt > > -+@WANT_TESTS_TRUE@ @ATF_LIBS@ > > - > > - @WANT_TESTS_TRUE@tests_fakesmtpd_SOURCES = \ > > - @WANT_TESTS_TRUE@ tests/fakesmtpd.c > > Index: patches/patch-mk_common_mk > > =================================================================== > > RCS file: patches/patch-mk_common_mk > > diff -N patches/patch-mk_common_mk > > --- /dev/null 1 Jan 1970 00:00:00 -0000 > > +++ patches/patch-mk_common_mk 27 Aug 2026 09:29:30 -0000 > > @@ -0,0 +1,13 @@ > > +Index: mk/common.mk > > +--- mk/common.mk.orig > > ++++ mk/common.mk > > +@@ -13,7 +13,8 @@ CFLAGS+= -Werror=return-type > > + # Work around this quirky behaviour by adding an extra entry that should never > > + # exist and then normalize its whitespace during substitution with :=. > > + DEPFILES_NONEMPTY= $(DEPFILES) /nonexistent > > +--include $(DEPFILES_NONEMPTY:=) > > ++DEPFILES_NONEMPTY_NORM= $(DEPFILES_NONEMPTY:=) > > ++-include $(DEPFILES_NONEMPTY_NORM) > > + > > + .SUFFIXES: .pico > > + > > Index: pkg/PLIST > > =================================================================== > > RCS file: /cvs/ports/mail/mlmmj/pkg/PLIST,v > > diff -u -p -r1.12 PLIST > > --- pkg/PLIST 3 May 2024 13:57:20 -0000 1.12 > > +++ pkg/PLIST 27 Aug 2026 09:29:30 -0000 > > @@ -20,18 +20,18 @@ bin/mlmmj-recieve > > @man man/man1/mlmmj-sub.1 > > @man man/man1/mlmmj-unsub.1 > > share/doc/mlmmj/ > > -share/doc/mlmmj/README > > -share/doc/mlmmj/README.access > > -share/doc/mlmmj/README.archives > > -share/doc/mlmmj/README.exim4 > > -share/doc/mlmmj/README.footers > > -share/doc/mlmmj/README.listtexts > > -share/doc/mlmmj/README.postfix > > -share/doc/mlmmj/README.qmail > > -share/doc/mlmmj/README.receive-strip > > -share/doc/mlmmj/README.security > > -share/doc/mlmmj/README.sendmail > > -share/doc/mlmmj/TUNABLES > > +share/doc/mlmmj/FAQ > > +share/doc/mlmmj/README.access.md > > +share/doc/mlmmj/README.archives.md > > +share/doc/mlmmj/README.exim4.md > > +share/doc/mlmmj/README.footers.md > > +share/doc/mlmmj/README.listtexts.md > > +share/doc/mlmmj/README.md > > +share/doc/mlmmj/README.postfix.md > > +share/doc/mlmmj/README.qmail.md > > +share/doc/mlmmj/README.receive-strip.md > > +share/doc/mlmmj/README.sendmail.md > > +share/doc/mlmmj/TUNABLES.md > > share/mlmmj/ > > share/mlmmj/text.skel/ > > share/mlmmj/text.skel/ast/ > >