Hello, Attempting to build libiberty on LynxOS-178 fails trying to compile mkstemps.c with the following error:
mkstemps.c:84:18: error: storage size of 'tv' isn't known struct timeval tv; ^ This file would normally include <sys/time.h> to get the type's definition, but unfortunately LynxOS-178 does not want us to use <sys/time.h>, only <time.h>. The configure script correctly finds this out and generates a config.h file where HAVE_SYS_TIME_H is undefined: /* Define to 1 if you have the <sys/time.h> header file. */ /* #undef HAVE_SYS_TIME_H */ This patch fixes the build issue by falling back on including <time.h> if <sys/time.h> could not be included (and provided that HAVE_TIME_H is defined, of course). libiberty/ChangeLog: * mkstemps.c: #include <time.h> if HAVE_TIME_H is defined but not HAVE_SYS_TIME_H. OK to commit? Thank you, -- Joel --- libiberty/mkstemps.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libiberty/mkstemps.c b/libiberty/mkstemps.c index a0e68a7..0e06fe1 100644 --- a/libiberty/mkstemps.c +++ b/libiberty/mkstemps.c @@ -35,6 +35,8 @@ #endif #ifdef HAVE_SYS_TIME_H #include <sys/time.h> +#elif HAVE_TIME_H +#include <time.h> #endif #include "ansidecl.h" -- 1.9.1