mutt-2.0.0 mutt_random fails to compile on Solaris (and possibly others)
x86_64-pc-solaris2.11-gcc -DPKGDATADIR=\"/gentoo/prefix64l/usr/share/mutt\" -DSY
SCONFDIR=\"/gentoo/prefix64l/etc/mutt\" -DBINDIR=\"/gentoo/prefix64l/usr/bin\" -
DMUTTLOCALEDIR=\"/gentoo/prefix64l/usr/share/locale\" -DHAVE_CONFIG_H=1 -DPREFIX
=\"/gentoo/prefix64l/usr/..\" -I. -I. -I. -I./imap -I./autocrypt -I/gentoo/pref
ix64l/usr/include -Iintl -I/gentoo/prefix64l/usr/include -I./intl -Wall -pedant
ic -Wno-long-long -O2 -pipe -c -o mutt_random.o mutt_random.c
mutt_random.c:32:8: error: unknown type name ‘u_int32_t’
32 | static u_int32_t z[4]; /* Keep state for LFRS113 PRNG */
| ^~~~~~~~~
mutt_random.c: In function ‘mutt_reseed’:
mutt_random.c:99:14: error: ‘u_int32_t’ undeclared (first use in this function); did you mean ‘uint32_t’?
99 | z[0] ^= (((u_int32_t) tv.tv_sec << 20) | tv.tv_usec);
| ^~~~~~~~~
| uint32_t
mutt_random.c:99:14: note: each undeclared identifier is reported only once for each function it appears in
mutt_random.c:99:24: error: expected ‘)’ before ‘tv’
99 | z[0] ^= (((u_int32_t) tv.tv_sec << 20) | tv.tv_usec);
| ~ ^~~
| )
make[2]: *** [Makefile:910: mutt_random.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/gentoo/prefix64l/var/tmp/portage/mail-client/mutt-2.0.0/work/mutt-2.0.0'
Edited by Fabian Groffen