Add documented patch series and build instructions

This commit is contained in:
2025-12-14 13:20:03 +01:00
parent 8f89723b4f
commit 9a972c418a
5 changed files with 742 additions and 1 deletions

View File

@@ -1,4 +1,82 @@
# University of Washington IMAP toolkit
## UW-IMAP 2007f modernized build for current Linux systems
This repository contains a maintained, buildable version of **UW-IMAP 2007f**
adapted for modern Linux toolchains (glibc ≥ 2.36, GCC ≥ 11, OpenSSL ≥ 3).
The original UW-IMAP source no longer builds cleanly on current distributions.
This repository keeps the upstream code intact and applies a small, focused
patchset to restore buildability without functional changes.
---
## Scope
This repository provides:
- Upstream UW-IMAP 2007f source
- A minimal patchset for:
- `utime()` compatibility with modern glibc
- `scandir()` callback signature fixes
- Removal of deprecated `gets()`
- Missing standard header includes
- A reproducible build process
Not included:
- Distribution packaging
- PHP / PECL bindings
- Kerberos support (disabled by default)
---
## Build dependencies (Debian 12 / 13)
The following packages are required to build UW-IMAP 2007f:
apt install \
build-essential \
autoconf \
automake \
libtool \
pkg-config \
libssl-dev \
libpam0g-dev \
libc6-dev \
libcrypt-dev \
bison \
flex
## Notes
libc-client-dev is no longer available on modern Debian releases.
UW-IMAP must be built from source.
OpenSSL 3.x is supported via the included patchset.
Kerberos support is disabled (--without-kerberos).
Bundled tools (mtest, mlock, dmail, tmail) are built but optional.
## Patches
All local fixes are provided as a linear patch series:
patches/
0001-Fix-utime-usage-for-modern-glibc.patch
0002-Fix-scandir-callback-signatures.patch
0003-Replace-gets-with-fgets.patch
0004 -Add-missing-headers-for-modern-toolchains.patch
`
## Build
Example build without Kerberos:
make lnp SSLTYPE=unix.nopwd
# Original README: University of Washington IMAP toolkit
This repository is a copy of the University of Washington IMAP toolkit _(imap-2007f.tar.gz/MD5:2126fd125ea26b73b20f01fcd5940369)_ which has become unavailable from the documented FTP and mirror sites. Posted here for both posterity and because a number of packages require the library and source/headers which may not always be suitable from the OS package manager.
_In my case it was to compile PHP7 with IMAP support and utilizing an alternative (newer) OpenSSL version. It was very difficult to find trustworthy already-patched sources for this purpose._ This seems to be a common problem for many in the same situation.