Browse Source

select needs sys/select.h, str[n]casecmp/ffs needs strings.h, if BSD is not defined, gettimeofday has other prototype and tm_gmtoff/tm_zone do not exist

Peter S. Mazinger 18 years ago
parent
commit
d5f635529a

+ 1 - 0
libc/inet/resolv.c

@@ -136,6 +136,7 @@
 #define __FORCE_GLIBC
 #include <features.h>
 #include <string.h>
+#include <strings.h>
 #include <stdio.h>
 #include <signal.h>
 #include <errno.h>

+ 1 - 0
libc/inet/rpc/ruserpass.c

@@ -40,6 +40,7 @@
 #include <stdio_ext.h>
 #include <stdlib.h>
 #include <string.h>
+#include <strings.h>
 #include <unistd.h>
 
 libc_hidden_proto(strcat)

+ 1 - 0
libc/misc/regex/regex.c

@@ -36,6 +36,7 @@
 #include <stdbool.h>
 #include <stdint.h>
 #include <string.h>
+#include <strings.h>
 #include <stdlib.h>
 #ifdef __UCLIBC_HAS_WCHAR__
 #define RE_ENABLE_I18N

+ 18 - 2
libc/misc/time/time.c

@@ -133,6 +133,7 @@
 #include <stdlib.h>
 #include <stddef.h>
 #include <string.h>
+#include <strings.h>
 #include <time.h>
 #include <sys/time.h>
 #include <limits.h>
@@ -748,8 +749,13 @@ struct tm attribute_hidden *__time_localtime_tzi(register const time_t *__restri
 		_time_t2tm(x, days, result);
 		result->tm_isdst = dst;
 #ifdef __UCLIBC_HAS_TM_EXTENSIONS__
+# ifdef __USE_BSD
 		result->tm_gmtoff = - tzi[dst].gmt_offset;
 		result->tm_zone = lookup_tzname(tzi[dst].tzname);
+# else
+		result->__tm_gmtoff = - tzi[dst].gmt_offset;
+		result->__tm_zone = lookup_tzname(tzi[dst].tzname);
+# endif
 #endif /* __UCLIBC_HAS_TM_EXTENSIONS__ */
 	} while ((++dst < 2)
 			 && ((result->tm_isdst = tm_isdst(result, tzi)) != 0));
@@ -1128,8 +1134,13 @@ size_t __XL_NPP(strftime)(char *__restrict s, size_t maxsize,
 #ifdef __UCLIBC_HAS_TM_EXTENSIONS__
 
 #define RSP_TZUNLOCK	((void) 0)
-#define RSP_TZNAME		timeptr->tm_zone
-#define RSP_GMT_OFFSET	(-timeptr->tm_gmtoff)
+# ifdef __USE_BSD
+#  define RSP_TZNAME		timeptr->tm_zone
+#  define RSP_GMT_OFFSET	(-timeptr->tm_gmtoff)
+# else
+#  define RSP_TZNAME		timeptr->__tm_zone
+#  define RSP_GMT_OFFSET	(-timeptr->__tm_gmtoff)
+# endif
 
 #else
 
@@ -2206,8 +2217,13 @@ struct tm attribute_hidden *_time_t2tm(const time_t *__restrict timer,
 	/* TODO -- should this be 0? */
 	p[4] = 0;					/* result[8] .. tm_isdst */
 #ifdef __UCLIBC_HAS_TM_EXTENSIONS__
+# ifdef __USE_BSD
 	result->tm_gmtoff = 0;
 	result->tm_zone = utc_string;
+# else
+	result->__tm_gmtoff = 0;
+	result->__tm_zone = utc_string;
+# endif
 #endif /* __UCLIBC_HAS_TM_EXTENSIONS__ */
 
 	return result;

+ 1 - 0
libc/misc/wchar/wchar.c

@@ -1191,6 +1191,7 @@ typedef struct {
 
 #include <iconv.h>
 #include <string.h>
+#include <strings.h>
 #include <endian.h>
 #include <byteswap.h>
 

+ 1 - 0
libc/string/ffs.c

@@ -8,6 +8,7 @@
 /* ffsl,ffsll */
 
 #include "_string.h"
+#include <strings.h>
 
 libc_hidden_proto(ffs)
 

+ 1 - 0
libc/string/strcasecmp.c

@@ -6,6 +6,7 @@
  */
 
 #include "_string.h"
+#include <strings.h>
 #include <ctype.h>
 #include <locale.h>
 

+ 1 - 0
libc/string/strncasecmp.c

@@ -6,6 +6,7 @@
  */
 
 #include "_string.h"
+#include <strings.h>
 #include <ctype.h>
 #include <locale.h>
 

+ 4 - 1
libc/sysdeps/linux/common/gettimeofday.c

@@ -11,6 +11,9 @@
 #include <sys/time.h>
 
 libc_hidden_proto(gettimeofday)
-
+#ifdef __USE_BSD
 _syscall2(int, gettimeofday, struct timeval *, tv, struct timezone *, tz);
+#else
+_syscall2(int, gettimeofday, struct timeval *, tv, void *, tz);
+#endif
 libc_hidden_def(gettimeofday)

+ 1 - 1
libc/sysdeps/linux/common/select.c

@@ -8,7 +8,7 @@
  */
 
 #include "syscalls.h"
-#include <unistd.h>
+#include <sys/select.h>
 
 libc_hidden_proto(select)