commit 7e262563948fcaeea143e6c7c23b6a300010eec5 from: Omar Polo date: Fri Jan 22 17:00:56 2021 UTC fixing compat compilation include headers if needed and include config.h commit - 3527b7a58a5f228a73f73ba74bc4ff86f7305a60 commit + 7e262563948fcaeea143e6c7c23b6a300010eec5 blob - aab93b5c85a33ae0744219bb1d86e622f3cb86ca blob + dd07cf9294b912c3921cf5015d1743680f48bdeb --- compat/err.c +++ compat/err.c @@ -18,9 +18,7 @@ #include #include -/* cheat: if we don't have getprogname in libc, we will link against - * compat/getprogname.c anyway. */ -const char *getprogname(void); +#include "../config.h" static void vwarn_impl(const char*, va_list); static void vwarnx_impl(const char*, va_list); blob - 674b8e229e34a3c2dc2320b9faaccefebdf5c12b blob + f502b4bc4bc6697e20e25947377cdfb79565f549 --- compat/explicit_bzero.c +++ compat/explicit_bzero.c @@ -5,6 +5,8 @@ #include +#include "../config.h" + void explicit_bzero(void *buf, size_t len) { blob - f16226871ec9600344765767613eea8043231e3c blob + ee178b750ad97e0ed4ef9418d57e61f0004f5147 --- compat/getprogname.c +++ compat/getprogname.c @@ -14,6 +14,8 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ +#include "../config.h" + const char * getprogname(void) { blob - 1baffbbaa4387388b3f32b5f07513299d95046f7 blob + 70ad5822b55e7d2e24d2c9e4a26edf595c85172e --- compat/recallocarray.c +++ compat/recallocarray.c @@ -20,6 +20,8 @@ #include #include +#include "../config.h" + /* * This is sqrt(SIZE_MAX+1), as s1*s2 <= SIZE_MAX * if both s1 < MUL_NO_OVERFLOW and s2 < MUL_NO_OVERFLOW @@ -34,10 +36,6 @@ */ #define getpagesize() (1UL << 12) -/* cheat: provide a prototype for explicit_bzero: if libc doesn't - * provide it, we will link to compat/explicit_bzero.c anyway. */ -void explicit_bzero(void*, size_t); - void * recallocarray(void *ptr, size_t oldnmemb, size_t newnmemb, size_t size) { blob - 1c19062bf839da6e099ffca1dddcdb4070a44edf blob + b4e969e826539cfc4b3b6735233ec108702d0448 --- compat/strlcat.c +++ compat/strlcat.c @@ -17,6 +17,8 @@ #include #include +#include "../config.h" + /* * Appends src to string dst of size dsize (unlike strncat, dsize is the * full size of dst, not space left). At most dsize-1 characters blob - 177ff7269492ec85c2196e31edc425107a958e4b blob + 75636a0709bbd56677e394293267537de2b2ad4b --- compat/strlcpy.c +++ compat/strlcpy.c @@ -17,6 +17,8 @@ #include #include +#include "../config.h" + /* * Copy string src to buffer dst of size dsize. At most dsize-1 * chars will be copied. Always NUL terminates (unless dsize == 0). blob - 6e6cb76d5950925c04b80333361c04697644d7c4 blob + 09c4fbe23ef43c478fc75463fe60b2b23968ace1 --- compat/strtonum.c +++ compat/strtonum.c @@ -14,12 +14,13 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -#include "config.h" #include #include #include +#include "../config.h" + #define INVALID 1 #define TOOSMALL 2 #define TOOLARGE 3 blob - d76f3efb11248fbf53f5863121e132a4d9817f92 blob + 69586f03601ae01e8eca89204a45704964b26e7f --- compat/vasprintf.c +++ compat/vasprintf.c @@ -25,6 +25,8 @@ #include #include +#include "../config.h" + int vasprintf(char **ret, const char *format, va_list ap) { blob - 97c5dd8f1b7c41324e28fbeeffb4f07858431dd5 blob + 359143f73ec0e8d783e0617afef4a68e81f928da --- configure +++ configure @@ -271,6 +271,14 @@ cat <<__HEREDOC__ #define HAVE_VASPRINTF ${HAVE_VASPRINTF} __HEREDOC__ + +[ ${HAVE_VASPRINTF} -eq 0 ] && echo "#include " + +[ ${HAVE_EXPLICIT_BZERO} -eq 0 -o \ + ${HAVE_RECALLOCARRAY} -eq 0 -o \ + ${HAVE_STRLCAT} -eq 0 -o \ + ${HAVE_STRLCPY} -eq 0 -o \ + ${HAVE_STRTONUM} -eq 0 ] && echo "#include " if [ ${HAVE_ERR} -eq 0 ]; then echo "extern void err(int, const char*, ...);"