about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-01-27 19:28:32 +0000
committerUlrich Drepper <drepper@redhat.com>2001-01-27 19:28:32 +0000
commit2ff458ebe647b5aba45d3b8f49ea76d2d993d5db (patch)
tree384a317dd5538204979905ed9e8856513a946556 /sysdeps
parenteec409170bdfca76393e39502c0435e25c62153a (diff)
downloadglibc-2ff458ebe647b5aba45d3b8f49ea76d2d993d5db.tar.gz
glibc-2ff458ebe647b5aba45d3b8f49ea76d2d993d5db.tar.xz
glibc-2ff458ebe647b5aba45d3b8f49ea76d2d993d5db.zip
Update.
2001-01-27  Ulrich Drepper  <drepper@redhat.com>

	* signal/signal.h: Fix handling of __need_* symbols.
	* misc/sys/select.c: Define fd_set here.  Remove __fd_set.  Define
	fd_mask only if __USE_MISC.  Declare pselect for __USE_XOPEN2K.
	* include/sys/select.h: Use fd_set not __fd_set.
	* sysdeps/generic/bits/select.h: Likewise.
	* sysdeps/i386/bits/select.h: Likewise.
	* sysdeps/generic/bits/types.h: Don't define __fd_mask, __NFDBITS,
	__FDELT, __FDMASK, and __fd_set here.
	* sysdeps/unix/sysv/aix/bits/types.h: Likewise.
	* sysdeps/unix/sysv/hpux/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/types.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/bits/types.h: Likewise.
	* time/sys/time.h: Define struct timeval before including <time.h>
	and <sys/select.h>.

	* conform/data/sys/time.h-data: fd_set is a typedef.
	* conform/data/sys/select.h-data: New file.
	* conform/data/sys/mman.h-data: Make typed mem stuff optional.
	* conform/conformtest.pl (@headers): Add sys/select.h.
	(type, optional-type): Unless testing a typedef instantiate object.
	Implement optional-function.

	* math/test-misc.c: Include <float.h>.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/bits/select.h6
-rw-r--r--sysdeps/generic/bits/types.h23
-rw-r--r--sysdeps/i386/bits/select.h8
-rw-r--r--sysdeps/unix/sysv/aix/bits/types.h24
-rw-r--r--sysdeps/unix/sysv/hpux/bits/types.h24
-rw-r--r--sysdeps/unix/sysv/linux/alpha/bits/types.h28
-rw-r--r--sysdeps/unix/sysv/linux/bits/types.h24
-rw-r--r--sysdeps/unix/sysv/linux/ia64/bits/types.h28
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/types.h24
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/types.h29
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/bits/types.h22
11 files changed, 16 insertions, 224 deletions
diff --git a/sysdeps/generic/bits/select.h b/sysdeps/generic/bits/select.h
index 4513135af9..dfe623eca7 100644
--- a/sysdeps/generic/bits/select.h
+++ b/sysdeps/generic/bits/select.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -26,8 +26,8 @@
 #define __FD_ZERO(s) \
   do {									      \
     unsigned int __i;							      \
-    __fd_set *__arr = (s);						      \
-    for (__i = 0; __i < sizeof (__fd_set) / sizeof (__fd_mask); ++__i)	      \
+    fd_set *__arr = (s);						      \
+    for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i)	      \
       __FDS_BITS (__arr)[__i] = 0;					      \
   } while (0)
 #define __FD_SET(d, s)     (__FDS_BITS (s)[__FDELT(d)] |= __FDMASK(d))
diff --git a/sysdeps/generic/bits/types.h b/sysdeps/generic/bits/types.h
index fd2ec223ea..13d7120f2f 100644
--- a/sysdeps/generic/bits/types.h
+++ b/sysdeps/generic/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,94,95,96,97,98,99,2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1992,94-1999,2000,2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -93,30 +93,9 @@ typedef int __clockid_t;
 typedef int __timer_t;
 
 
-/* One element in the file descriptor mask array.  */
-typedef unsigned long int __fd_mask;
-
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define	__FD_SETSIZE	256
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define	__NFDBITS	(sizeof (unsigned long int) * 8)
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((__fd_mask) 1 << ((d) % __NFDBITS))
-
-/* fd_set for select and pselect.  */
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the user namespace.  */
-#ifdef __USE_XOPEN
-    __fd_mask fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    __fd_mask __fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
 
 /* XXX Used in `struct shmid_ds'.  */
 typedef unsigned short int __ipc_pid_t;
diff --git a/sysdeps/i386/bits/select.h b/sysdeps/i386/bits/select.h
index 6acfc5b9ae..e1687684ce 100644
--- a/sysdeps/i386/bits/select.h
+++ b/sysdeps/i386/bits/select.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 1999, 2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -28,7 +28,7 @@
     int __d0, __d1;							      \
     __asm__ __volatile__ ("cld; rep; stosl"				      \
 			  : "=c" (__d0), "=D" (__d1)			      \
-			  : "a" (0), "0" (sizeof (__fd_set)		      \
+			  : "a" (0), "0" (sizeof (fd_set)		      \
 					  / sizeof (__fd_mask)),	      \
 			    "1" (&__FDS_BITS (fdsp)[0])			      \
 			  : "memory");					      \
@@ -61,8 +61,8 @@
 # define __FD_ZERO(set)  \
   do {									      \
     unsigned int __i;							      \
-    __fd_set *__arr = (set);						      \
-    for (__i = 0; __i < sizeof (__fd_set) / sizeof (__fd_mask); ++__i)	      \
+    fd_set *__arr = (set);						      \
+    for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i)	      \
       __FDS_BITS (__arr)[__i] = 0;					      \
   } while (0)
 # define __FD_SET(d, set)    (__FDS_BITS (set)[__FDELT (d)] |= __FDMASK (d))
diff --git a/sysdeps/unix/sysv/aix/bits/types.h b/sysdeps/unix/sysv/aix/bits/types.h
index a89393d704..cd57291051 100644
--- a/sysdeps/unix/sysv/aix/bits/types.h
+++ b/sysdeps/unix/sysv/aix/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,94,95,96,97,98,99, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -93,31 +93,9 @@ typedef int __clockid_t;
 /* Timer ID returned by `timer_create'.  */
 typedef int __timer_t;
 
-/* One element in the file descriptor mask array.  */
-typedef unsigned long int __fd_mask;
-
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define __FD_SETSIZE	1024
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define __NFDBITS	(8 * sizeof (__fd_mask))
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((__fd_mask) 1 << ((d) % __NFDBITS))
-
-/* fd_set for select and pselect.  */
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the global namespace.  */
-#ifdef __USE_XOPEN
-    __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
-
 
 typedef long int __key_t;
 
diff --git a/sysdeps/unix/sysv/hpux/bits/types.h b/sysdeps/unix/sysv/hpux/bits/types.h
index e95892eda3..88ae1a9e9a 100644
--- a/sysdeps/unix/sysv/hpux/bits/types.h
+++ b/sysdeps/unix/sysv/hpux/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1992, 1994-1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1992,1994-1998,2000,2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -85,31 +85,9 @@ typedef long int __swblk_t;		/* Type of a swap block maybe?  */
 
 typedef __u_long __clock_t;
 
-/* One element in the file descriptor mask array.  */
-typedef long int __fd_mask;
-
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define __FD_SETSIZE	2048
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define __NFDBITS	(8 * sizeof (__fd_mask))
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((__fd_mask) 1 << ((d) % __NFDBITS))
-
-/* fd_set for select and pselect.  */
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the global namespace.  */
-#ifdef __USE_XOPEN
-    __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
-
 
 typedef long int __key_t;
 
diff --git a/sysdeps/unix/sysv/linux/alpha/bits/types.h b/sysdeps/unix/sysv/linux/alpha/bits/types.h
index 13c389846f..b357994090 100644
--- a/sysdeps/unix/sysv/linux/alpha/bits/types.h
+++ b/sysdeps/unix/sysv/linux/alpha/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,94,95,96,97,98,99, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -92,35 +92,9 @@ typedef int __timer_t;
 /* Used in `struct shmid_ds'.  */
 typedef int __ipc_pid_t;
 
-/* One element in the file descriptor mask array.  */
-typedef unsigned long int __fd_mask;
-
-/* Due to incaution, we may have gotten these from a kernel header file.  */
-#undef __FD_SETSIZE
-#undef __NFDBITS
-#undef __FDMASK
-
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define __FD_SETSIZE	1024
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define __NFDBITS	(8 * sizeof (__fd_mask))
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((__fd_mask) 1 << ((d) % __NFDBITS))
-
-/* fd_set for select and pselect.  */
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the user namespace.  */
-#ifdef __USE_XOPEN
-    __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
 
 /* Used in XTI.  */
 typedef long int __t_scalar_t;
diff --git a/sysdeps/unix/sysv/linux/bits/types.h b/sysdeps/unix/sysv/linux/bits/types.h
index d96ee32cf0..497c055492 100644
--- a/sysdeps/unix/sysv/linux/bits/types.h
+++ b/sysdeps/unix/sysv/linux/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,94,95,96,97,98,99, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -94,31 +94,9 @@ typedef int __clockid_t;
 typedef int __timer_t;
 
 
-/* One element in the file descriptor mask array.  */
-typedef unsigned long int __fd_mask;
-
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define __FD_SETSIZE	1024
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define __NFDBITS	(8 * sizeof (__fd_mask))
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((__fd_mask) 1 << ((d) % __NFDBITS))
-
-/* fd_set for select and pselect.  */
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the global namespace.  */
-#ifdef __USE_XOPEN
-    __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
-
 
 typedef int __key_t;
 
diff --git a/sysdeps/unix/sysv/linux/ia64/bits/types.h b/sysdeps/unix/sysv/linux/ia64/bits/types.h
index 9492c2133c..5821d7a0e8 100644
--- a/sysdeps/unix/sysv/linux/ia64/bits/types.h
+++ b/sysdeps/unix/sysv/linux/ia64/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -94,35 +94,9 @@ typedef int __ipc_pid_t;
 /* type to represent block size. */
 typedef long int __blksize_t;
 
-/* One element in the file descriptor mask array.  */
-typedef unsigned long int __fd_mask;
-
-/* Due to incaution, we may have gotten these from a kernel header file.  */
-#undef __FD_SETSIZE
-#undef __NFDBITS
-#undef __FDMASK
-
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define __FD_SETSIZE	1024
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define __NFDBITS	(8 * sizeof (__fd_mask))
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((__fd_mask) 1 << ((d) % __NFDBITS))
-
-/* fd_set for select and pselect.  */
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the user namespace.  */
-#ifdef __USE_XOPEN
-    __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
 
 /* Used in XTI.  */
 typedef int __t_scalar_t;
diff --git a/sysdeps/unix/sysv/linux/mips/bits/types.h b/sysdeps/unix/sysv/linux/mips/bits/types.h
index 927d6098dc..c3b93e3ac7 100644
--- a/sysdeps/unix/sysv/linux/mips/bits/types.h
+++ b/sysdeps/unix/sysv/linux/mips/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,94,95,96,97,98,99, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -93,31 +93,9 @@ typedef int __clockid_t;
 /* Timer ID returned by `timer_create'.  */
 typedef int __timer_t;
 
-/* One element in the file descriptor mask array.  */
-typedef unsigned long int __fd_mask;
-
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define __FD_SETSIZE	1024
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define __NFDBITS	(8 * sizeof (__fd_mask))
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((__fd_mask) 1 << ((d) % __NFDBITS))
-
-/* fd_set for select and pselect.  */
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the user namespace.  */
-#ifdef __USE_XOPEN
-    __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
-
 
 typedef int __key_t;
 
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/types.h b/sysdeps/unix/sysv/linux/sparc/bits/types.h
index a7de62eb15..8f435ef506 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/types.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,94,95,96,97,98,99, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -110,36 +110,9 @@ typedef int __clockid_t;
 /* Timer ID returned by `timer_create'.  */
 typedef int __timer_t;
 
-/* One element in the file descriptor mask array.  */
-typedef unsigned long int __fd_mask;
-
-/* Due to incaution, we may have gotten these from a kernel header file.  */
-#undef __FD_SETSIZE
-#undef __NFDBITS
-#undef __FDMASK
-
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define __FD_SETSIZE	1024
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define __NFDBITS	(8 * sizeof (__fd_mask))
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((__fd_mask) 1 << ((d) % __NFDBITS))
-
-/* fd_set for select and pselect.  */
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the user namespace.  */
-#ifdef __USE_XOPEN
-    __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
-
 
 typedef int __key_t;
 
diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h
index 65ad002f79..7765fa45b2 100644
--- a/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h
+++ b/sysdeps/unix/sysv/sysv4/solaris2/bits/types.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,94,95,96,97,98,99, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,1994-1999,2000,2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -89,26 +89,6 @@ typedef int __key_t;		     /* Type of an IPC key */
 /* Number of descriptors that can fit in an `fd_set'.  */
 #define	__FD_SETSIZE	1024
 
-/* It's easier to assume 8-bit bytes than to get CHAR_BIT.  */
-#define	__NFDBITS	(sizeof (unsigned long int) * 8)
-#define	__FDELT(d)	((d) / __NFDBITS)
-#define	__FDMASK(d)	((unsigned long int) 1 << ((d) % __NFDBITS))
-
-typedef struct
-  {
-    /* XPG4.2 requires this member name.  Otherwise avoid the name
-       from the user namespace.  */
-#ifdef __USE_XOPEN
-    unsigned long int fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
-# define __FDS_BITS(set) ((set)->fds_bits)
-#else
-    unsigned long int __fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
-# define __FDS_BITS(set) ((set)->__fds_bits)
-#endif
-  } __fd_set;
-
-typedef unsigned long int __fd_mask;
-
 
 /* Type to represent block size.  */
 typedef long int __blksize_t;