[Midnightbsd-cvs] [MidnightBSD/mports] 07786d: mail/courier-imap: update to 6.0.4 (#728)
Lucas Holt
noreply at github.com
Sun Aug 9 09:47:07 EDT 2026
Branch: refs/heads/master
Home: https://github.com/MidnightBSD/mports
Commit: 07786ddcb69b1fd79b33456e0a7763b20e87b20a
https://github.com/MidnightBSD/mports/commit/07786ddcb69b1fd79b33456e0a7763b20e87b20a
Author: Lucas Holt <luke at foolishgames.com>
Date: 2026-08-09 (Sun, 09 Aug 2026)
Changed paths:
M mail/courier-imap/Makefile
M mail/courier-imap/distinfo
M mail/courier-imap/files/pkg-message.in
Log Message:
-----------
mail/courier-imap: update to 6.0.4 (#728)
Update `mail/courier-imap` from 5.3.2_2 to 6.0.4. `PORTEPOCH=2` kept.
## Ordering note
**No dependency on `mail/courier`** — the two `CONFLICTS` each other, so
there's no ordering constraint between that PR and this one. Shared deps
are `devel/courier-unicode` (2.6.0, already aligned with FreeBSD) and
`security/courier-authlib-base`. mports `security/courier-authlib` is
**0.72.1** vs FreeBSD's 0.73.1, but 6.0.4's `LIB_DEPENDS` on
`libcourierauth.so` is unversioned; 0.72.1 satisfies it and the port
compiles and links against it cleanly, so no authlib update was needed.
## Deliberate divergences from FreeBSD
- **INOTIFY stays unconditional.** FreeBSD gates `libinotify` behind
`${OSVERSION} < 1500500` — a FreeBSD-15 number that is meaningless on
MidnightBSD. Converted to a plain `INOTIFY_LIB_DEPENDS` plus an ungated
`post-patch-INOTIFY-on`.
- **Dynamic inotify linking.** mports linked
`${LOCALBASE}/lib/libinotify.a` and `/usr/lib/libpthread.a` statically;
switched to FreeBSD's `-L${LOCALBASE}/lib -linotify -lpthread`, since
`/usr/lib/libpthread.a` is not guaranteed present.
- **Dropped dead code:** `.if ${PORT_OPTIONS:MSYSLOG_FACILITY}` —
`SYSLOG_FACILITY` was never a defined option, so the block never fired.
Replaced with FreeBSD's correct `.ifdef WITH_SYSLOG_FACILITY`. Also
dropped a redundant `GNUTLS_USES=pkgconfig` (already in the global
`USES`).
## Patch set — no changes
All of `files/` (`patch-Makefile.in`, `patch-libs_maildir_configure`,
the four rc scripts) was already byte-identical to FreeBSD's and applies
cleanly to 6.0.4. `files/pkg-message.in` gains back the ULIMIT/SIGABRT
paragraph — a FreeBSD addition mports had simply not picked up, not a
MidnightBSD removal.
## MidnightBSD delta preserved
`MAINTAINER`, `LICENSE= gpl3`,
`CONFIGURE_TARGET=${ARCH}-portbld-freebsd12.4` (accepted by 6.0.4's
config.sub — verified in the configure log), `.include
<bsd.mport.options.mk>` replacing `bsd.port.pre.mk`/`post.mk`, and
`${STAGEDIR}` stripped from `post-install`.
**On that last point** — `Mk/components/fake/vars.mk` sets `FAKE_SETUP`
to both `PREFIX=${FAKE_DESTDIR}${TRUE_PREFIX}` and
`STAGEDIR=${FAKE_DESTDIR}`, so carrying FreeBSD's `${STAGEDIR}${PREFIX}`
double-prefixes and kills `fake`:
```
install: work/fake-inst-amd64/usr/mports/mail/courier-imap/work/fake-inst-amd64/usr/local/bin/...
*** Error code 71
```
`bmake -V STAGEDIR` at top level returns empty, which makes this look
safe. An explanatory comment now sits above `post-install`.
## Dependencies
`databases/gdbm` moved out of the unconditional `LIB_DEPENDS` into the
`AUTH_USERDB`+`GDBM` branch only. No new deps; all exist in mports.
## Verification
makesum/patch/build/fake/package all OK → `courier-imap-6.0.4,2.mport`.
distinfo matches FreeBSD exactly. portlint: 0 fatal, 5 warnings
(pre-existing `AUTH_*` options inherited from
`courier-authlib/Makefile.opt`). Staged tree and plist match with **zero
discrepancies in either direction**.
**No shared libraries** — `find` over the staged tree returns zero
`*.so*` files; this port installs only executables, rc scripts and
`libexec/` content. No dependent `PORTREVISION` bumps needed.
LICENSE unchanged — `COPYING` still GPL v3 with the OpenSSL linking
exception.
Default option set, amd64 only. No test target.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
## Summary by Sourcery
Update courier-imap port to 6.0.4 while aligning with FreeBSD packaging
and preserving MidnightBSD-specific behavior.
New Features:
- Install additional upstream documentation files with the port.
Bug Fixes:
- Ensure inotify support is always linked dynamically against
devel/libinotify and pthread to work on MidnightBSD.
- Fix syslog facility customization by wiring WITH_SYSLOG_FACILITY into
configure instead of a non-functional SYSLOG_FACILITY option.
- Restrict gdbm library dependency to AUTH_USERDB builds that actually
use GDBM, avoiding unnecessary linkage.
Enhancements:
- Adopt GNU_CONFIGURE_MANPREFIX and refined configure arguments to
standardize installation paths and options.
- Reorder dependency declarations and cleanup unused or redundant
Makefile logic for better maintainability.
- Document FAKE_DESTDIR/STAGEDIR interaction in post-install to prevent
double-prefix staging issues.
Build:
- Switch the port framework includes to bsd.mport.options.mk/bsd.port.mk
and adjust staging logic to match MidnightBSD fake install behavior.
Documentation:
- Adjust pkg-message and installed documentation set in line with
upstream and FreeBSD while keeping MidnightBSD differences.
---------
Signed-off-by: Lucas Holt <luke at foolishgames.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot at users.noreply.github.com>
To unsubscribe from these emails, change your notification settings at https://github.com/MidnightBSD/mports/settings/notifications
More information about the Midnightbsd-cvs
mailing list