Created attachment 38457 [details] apr.patch See also bug 66396. When compiling with a strict C99 compiler (Clang 16 from git) (-Werror=implicit-int -Werror=implicit-function-declaration, etc), I got: ``` /bin/sh /var/tmp/portage/dev-libs/apr-1.7.0-r5/work/apr-1.7.0/libtool --silent --mode=compile clang -O2 -pipe -fdiagnostics-color=always -frecord-gcc-switches -DHAVE_CONFIG_H -DLINUX -D_REENTRANT -D_GNU_SOURCE -I./include -I/var/tmp/portage/dev-libs/apr-1.7.0-r5/work/apr-1.7.0/include/arch/unix -I./include/arch/unix -I/var/tmp/portage/dev-libs/apr-1.7.0-r5/work/apr-1.7.0/include/arch/unix -I/var/tmp/portage/dev-libs/apr-1.7.0-r5/work/apr-1.7.0/include -I/var/tmp/portage/dev-libs/apr-1.7.0-r5/work/apr-1.7.0/include/private -I/var/tmp/portage/dev-libs/apr-1.7.0-r5/work/apr-1.7.0/include/private -o poll/unix/pollcb.lo -c poll/unix/pollcb.c && touch poll/unix/pollcb.lo misc/unix/errorcodes.c:385:9: error: incompatible integer to pointer conversion assigning to 'const char *' from 'int' [-Wint-conversion] msg = strerror_r(statcode, buf, bufsize); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 error generated. ``` This turned out to be because various configure checks deduced the wrong result with these settings. I've attached a patch.
(The change in macro order is because some of the checks in the apr_network.m4 file require things which used to be checked _after_).
Thanks, Sam. Are the new #ifdefs for <stdio.h> and <stdlib.h> necessary or you added them out of caution?
Just out of caution - totally fine to skip those, I was just going through and adding them for my own changes, and accidentally-but-then-kept it for existing lines :)
OK, thanks - did skip those bits. Merged to trunk/1.7 - r1906594 / r1906595.
Sorry, I ran into one more issue while finally building 1.7 for Fedora, filed as bug 66426.